Open app

Bound agent spending on Robinhood Chain.

Create one USDG control, pair one agent workspace, and fund one self-custodial AllowanceVault. Your operator key stays in MetaMask or Rabby; the agent receives only its own bounded EVM authority.

Network
Robinhood Chain · 4663
Asset
Canonical USDG
CLI
stipend-cli@0.1.0
Updated
August 13, 2026

First bounded payment

  1. CreateSign in and define recipient, amount, frequency, budget, and expiry.
  2. PairRun the single-use command shown by the app in your agent workspace.
  3. FundCreate the vault and deposit canonical USDG from the operator wallet.
  4. VerifyRun a payment, then confirm its policy decision and settlement evidence in Activity.

Create and pair

A control is the operating boundary assigned to one agent connection. Set its total USDG budget, per-payment maximum, frequency, expiry, and up to eight complete 0x recipient addresses.

Budget

Maximum spend available to allowed payment attempts.

Per payment

Maximum amount accepted for one request.

Recipients

Exact 0x addresses enforced by the policy layer and vault.

Frequency and expiry

How often the agent may pay and when all new authority ends.

Install and pair the CLI

Install the versioned package directly from the Stipend domain. The npm command is only the installer; no Stipend npm registry account or package page is involved.

Install CLI 0.1.0
npm install --global https://stipend.cloud/downloads/stipend-cli-0.1.0.tgz
Connect workspace
stipend connect STP-XXXXX-XXXXX

The code expires in ten minutes and works once. Pairing creates .stipend/connection.json for the connection’s restricted API credential and .stipend/session-key.json for the local EVM key. Both files contain credentials and must stay out of Git.

The release has no author, repository-owner, or publisher-account metadata. Its SHA-256 checksum is published beside it at stipend-cli-0.1.0.tgz.sha256.

Create and fund the vault

After pairing, choose Create and fund vault. MetaMask or Rabby switches to Robinhood Chain and confirms the AllowanceVault deployment and USDG funding.

Network

Robinhood Chain · chain ID 4663

Asset

Canonical USDG · 0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168

Agent

The 0x public key generated inside the paired workspace.

Custody

The operator can pause, revoke, rotate, and withdraw remaining vault funds.

Authorize and pay

Use authorize to request a policy decision without moving funds. Use pay to evaluate the same rules, execute the bounded vault payment, and report the EVM transaction hash.

Check authority only
stipend authorize --amount "0.10" --recipient "0xYOUR_RECIPIENT" --description "Research API"
Pay and report evidence
stipend pay --amount "0.10" --recipient "0xYOUR_RECIPIENT" --description "Research API"

Replace 0xYOUR_RECIPIENT with the complete allowed address. Allowed requests exit with code 0; denied requests exit with code 2. Each attempt includes a unique retry key so repeating the same request cannot reserve its budget twice.

Observe decisions and settlements

The activity ledger distinguishes a payment attempt, its decision, and the onchain settlement. An allowed decision is not presented as confirmed until Stipend rereads the EVM transaction and verifies the vault, agent, token, amount, and recipient.

Operate or end authority

Pause

Stops the vault and pauses the policy layer.

Resume

Restores the current agent’s remaining authority.

Rotate

Replaces the old workspace key with the newly paired EVM key.

Revoke

Permanently removes agent authority; the operator can withdraw remaining USDG.

CLI reference

Commands available to a connected workspace
CommandPurpose
connect <code>Create and pair a local EVM session key.
authorize --amount --recipientRequest a policy decision without settlement.
pay --amount --recipientAuthorize, submit a Robinhood Chain payment, and report evidence.
statusRead the active control and remaining budget.
activityRead recent decisions.
doctorCheck workspace and server connectivity.
disconnectRemove local Stipend credentials.

HTTP API

Core operator and agent endpoints
RouteAuthenticationUse
POST /api/auth/wallet/challengeSame originCreate a five-minute EVM signing challenge.
POST /api/auth/wallet/verifySigned challengeIssue an HTTP-only operator session.
POST /api/controls/:id/attemptsConnection bearerEvaluate and reserve one attempt.
POST /api/controls/:id/settlementsConnection bearerRecord and reconcile an EVM transaction hash.

Operator mutations require a same-origin browser request. Agent routes accept only the scoped token issued during pairing.

Decision codes

Policy outcomes returned by authorization attempts
CodeMeaning
ALLOWEDEvery control rule passed.
INVALID_AMOUNTThe amount is missing, invalid, or non-positive.
CONTROL_PAUSEDThe operator paused the control.
CONTROL_EXPIREDThe control has passed its expiry.
RECIPIENT_NOT_ALLOWEDThe recipient is outside the exact allowlist.
PER_PAYMENT_LIMIT_EXCEEDEDThe request exceeds the single-payment maximum.
BUDGET_EXCEEDEDThe request exceeds remaining control budget.

Security model

  • Operator private keys remain in MetaMask or Rabby.
  • The control plane stores public 0x addresses, hashed sessions, scoped connection tokens, decisions, and public transaction evidence.
  • The workspace EVM key is stored locally with restrictive file permissions and is never returned by the server.
  • The funded ERC-20 vault enforces the token, budget, recipient, cap, interval, expiry, and owner-controlled lifecycle onchain.
  • Operators remain responsible for reviewing wallet requests and selecting trusted recipients.

Terms used here

EVM
The Ethereum-compatible execution environment used by Robinhood Chain.
Canonical USDG
The supported USDG token at the exact contract address listed above.
AllowanceVault
The operator-owned ERC-20 vault that enforces the agent’s onchain boundary.
Connection credential
A restricted API token issued to one paired workspace; it is not a wallet key.

Read the security policy before reporting a vulnerability.

Troubleshooting

Wallet is not detected

Unlock MetaMask or Rabby, allow the site, and reload. Disable conflicting injected-wallet extensions if necessary.

Signature was rejected

Request a new challenge and sign it with the same 0x address displayed in the app. Challenges expire after five minutes and work once.

Vault cannot be created

Confirm the operator wallet holds enough canonical USDG and Robinhood Chain ETH for fees.

Payment fails after an allowed decision

Check the local EVM key’s ETH balance, confirm the recipient is allowed by the vault, and review Activity for settlement evidence.

Check workspace health
stipend doctor

Completion check

You are ready when the evidence agrees.

  • The control is active and the vault is funded with canonical USDG.
  • The agent receives an ALLOWED decision for the intended amount and recipient.
  • Activity shows a confirmed settlement with its EVM transaction hash.
  • Pause, revoke, rotate, and withdrawal controls remain available to the operator.