Approve with an agent's help
Let an AI agent prepare a signed request for a smart account, then review it yourself and broadcast it from the Platform.
Where: your agent's environment, then Approvals → Import signed file · You need: an account with a Signed approval or One signature path, a signer wallet for the agent, a wallet that may submit
The shape: authorize, then broadcast
The agent drafts and signs. A person reviews and broadcasts. Nothing the agent produces reaches the chain on its own.
The agent builds a request against a registered action and signs it as a meta-transaction, off-chain.
It writes the result to a
.bloxmeta.jsonfile.You import that file into the Platform, read the decoded preview, and execute it with a wallet that may submit.
Call it authorize, then broadcast. The agent authorizes one specific operation. A human broadcasts it, or does not.
Why it is safe
The signing key holds a narrow role. Give the agent a requester-only custom role, nothing more.
The contract rejects anything that role may not do. A signature from a role without the permission reverts at execution. An agent cannot widen its own access or sign its way past a gate or an allowlist.
A human sees the decoded request before it goes on-chain.
The file expires. A signature that is never broadcast stops being usable when its deadline passes.
Set up the agent's wallet
In On-chain access → Roles, create a custom role for the agent, for example
TREASURY_REQUESTER.In Policies → Manage permissions, give that role the Request step only, on the one action the agent needs. Leave Approval and Execute to people.
Grant the role's gate in Policies → Gates, and add the destinations the agent may use to the allowlists.
In Signers, add the agent's address to that role.
Never give an agent the Owner, Broadcaster or Recovery role. Owner controls the account, Broadcaster can submit signed work, and Recovery can take ownership. Keep the private key in a secret store the runtime reads at call time, never in the agent's prompt, transcripts or logs.
Steps
1. The agent builds, signs and exports
With the SDK, the agent reads the account's policy, builds the request payload for the action, and signs the digest the contract generates (see Meta-transactions). It saves the result as a .bloxmeta.json file and hands it to you over a channel you trust. This is the same file the Platform itself exports from Share signed request.

2. You import it
Open the account and go to Approvals.
Select Import signed file.
Drop the file, or select Paste JSON instead and paste its content.

3. You check the preview
Read every row against what you asked for:
Action
The agent may only use actions you registered, but confirm it used the one you meant
Destination
The recipient or contract target
Amount
Including decimals, not just the leading digits
Network
Sepolia today
Account
The smart account address this file belongs to
Signer
The agent's address, in the role you gave it
Expiry
Enough time left to execute
Any label the sender wrote around the file (a filename, a message, a description) is not evidence of anything. Only the decoded rows are.
4. You broadcast
Select Add to Approved. The item lands on the Approved tab. Open it and select Execute with a wallet that may submit, usually a Broadcaster. That wallet pays gas.

On a Signed approval path the agent signs an approval against a request that is already on-chain. The file and the review are the same; the dialog below is where a person would produce that signature by hand.

Safety rules
A signed file is a bearer instrument. See Safety rules.
Troubleshooting
The file cannot be added in this workspace
It was signed for a different account or network
Open the account and network the file names, then import again
Execution reverts on permission
The signer's role does not hold that step, or its gate is not granted
Fix it in Manage permissions and Gates, then have the agent sign again
Expired. Execution disabled. Delete this invalid entry.
The deadline passed
Delete the entry and ask the agent for a fresh signature
The request is already settled
It was executed or cancelled, and the signer's nonce moved on
Check History; no new signature is needed
What is available today
The documentation is agent-readable: see For AI agents. The import and broadcast flow described here works now. More AI tooling is in development.
Related
Last updated
Was this helpful?