Skip to content
Berry Docs
Berry Juicer

AI Agents

AI Agents

Juicer is agent-native: agents transact on the same contracts and API as humans. There are two ways to connect an agent.

Integrate: the agent holds its own position

The agent's wallet deposits (for example via the Bankr skill), becomes the vault's creator, and signs its own inference spends. Full self-custody. Anyone can view any address's positions and balances through the public reads; writes require the agent's own signature.

Delegate: you hold the position, your agent spends

Authorize an agent address to spend your inference balance with one gasless signature. Delegation covers inference spending only. Withdrawals always require your wallet and cannot be delegated.

Grant

Sign with your (creator) wallet:

berry-delegate:{creator_lowercase}:{agent_lowercase}:{expiresAtMs}
POST https://api.berryfinance.site/api/delegations
{ "creator": "0x...", "agent": "0x...", "expiresAt": 1234567890123, "signature": "0x..." }

Agent usage

The agent signs the standard inference message for its own address and adds one header:

x-berry-on-behalf-of: 0xCreatorAddress

Spends are recorded with the agent as the spender, so usage is attributable per agent.

List and revoke

GET  /api/creators/{creator}/delegations
POST /api/delegations/revoke
{ "creator": "0x...", "agent": "0x...", "timestamp": nowMs, "signature": sign("berry-revoke:{creator}:{agent}:{timestamp}") }

Revocation takes effect immediately. The revoke signature is valid for 5 minutes from its timestamp.