Give each CrewAI agent a warrant, and let it delegate a narrower one to the next — authority provably only shrinks down the crew.
The Python SDK verifies and attenuates warrants the same way:
from liceat import attenuate, verify_warrant, decode
# A researcher agent holds a read warrant; it delegates an even narrower one
# to a summarizer — the summarizer can never do more than read.
sub, _ = attenuate(researcher_warrant, atk, [{"type": "action", "actions": ["read"]}])
Liceat is permission infrastructure for AI agents. You issue a warrant — a scoped, spend-capped, revocable token — that grants an agent narrow authority; the agent presents it at the point of action; Liceat enforces it (scope, spend, rate, holder-binding, revocation) and records every decision in a tamper-evident log. It is open source with a zero-dependency SDK for TypeScript and Python.
The SDK and self-hosted gateway are free and open source. The hosted gateway at liceat.com gives 10,000 free decisions with no card, then meters at fractions of a cent per decision — payable by card or USDC.
Free to self-host. 10,000 free decisions on the hosted gateway — no card.
Get an API key Read the docs