agent, and allow only the exact actions you intend.
Pattern
- Create an API-only user + tag
agent - Deny broad
signRawPayloadfor that tag - Allow a specific contract selector / recipient / chain
- Optional consensus for first-seen contracts
- Meter usage via billing / webhooks; revoke by deleting the API key
Controls
- Prefer contract allowlists over “sign anything”
- Keep agent keys out of root quorum
- Use short-lived keys and rotate on incident
Related
- Policy templates
- Delegated access — when the wallet is user-owned instead of company-owned