brickken rams targets Ethereum Sepolia (11155111) at launch. Writes are prepare-only by default; add --execute for prepare → local transaction signing → send and x402 settlement. Reads and online typed-data fetches require BRICKKEN_API_KEY.
Shared write options
Only
grant, revoke, extend, and set-operator accept --signature, --deadline, and --execution-mode brickken-relayed. All other RAMS writes are client-signed only.
rams grant
Grant scoped authority from a compliant principal to an agent (ramsGrantMandate).
Direct mode is signed by the principal. Signature mode may use any sender/relayer.
rams revoke / extend / set-operator
Each accepts the signed-lifecycle options for relaying. The EIP-712 signature always belongs to the principal, including when an operator could call directly.
rams execute
The agent executes through AgentExecutor (ramsExecute). --signer-address must be the agent and the operation is never relayed.
--executor-address overrides the per-principal executor. Amounts are raw base units.
rams set-action
Register an executor selector (ramsSetExecutorAction). The signer is the AgentExecutor owner.
rams freeze / unfreeze
Both commands require--agent; the signer must hold ENFORCER_ROLE. They are never relayed. The registry admin cannot be its own enforcer.
rams grant-principal / revoke-principal
ComplianceProvider owner operations; both are client-signed only.
Run grant-principal before granting a mandate with the same provider/identity reference.
Authenticated reads
SetBRICKKEN_API_KEY or pass global --api-key. These commands never send a transaction:
rams sign
Fetch and locally sign EIP-712 data forgrant-mandate, revoke-mandate, extend-mandate, or set-operator:
--typed-data-file envelope.json skips the GET and signs offline without an API key. The CLI verifies that the configured private key matches the server’s expected signer.
Relayed grant walkthrough
Reuse exactly the fields and deadline from the signed envelope:--signer-address in Brickken-relayed mode: the backend supplies its operation signer. The configured private key is the x402 payer key and does not need to be the principal.