From circle
Views and sets spending policies on Circle agent wallets via `circle` CLI — per-tx, daily, weekly, monthly USDC caps. Setting/resetting limits requires OTP handoff to user's terminal. Mainnet only.
How this skill is triggered — by the user, by Claude, or both
Slash command
/circle:agent-wallet-policyThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
For an overview of the Circle CLI's **full** capability set, see the `use-circle-cli` master skill. This skill is the narrower spending-policy flow.
For an overview of the Circle CLI's full capability set, see the use-circle-cli master skill. This skill is the narrower spending-policy flow.
Circle agent wallets support spending policies — per-wallet caps that the CLI enforces on every payment and transfer. There are three operations:
| Operation | Command | OTP required? |
|---|---|---|
| View current limits | circle wallet limit --address <addr> --chain BASE --output json | No |
| Set custom limits | circle wallet limit set ... | Yes — human OTP, run in user's own terminal |
| Reset to defaults | circle wallet limit reset ... | Yes — human OTP, run in user's own terminal |
Spending policies are mainnet-only (testnet chains are rejected; see Troubleshooting / Rules).
# Confirm session is good
circle wallet status
# Get the wallet address
circle wallet list --chain BASE --type agent --output json
If circle wallet status errors with "Not logged in" or "Terms acceptance is required", hand off to the use-agent-wallet skill — it covers install, terms, login, and wallet creation.
circle wallet limit --address <addr> --chain BASE --output json
Shows the current per-tx, daily, weekly, and monthly USDC caps (null for any unset tier). Safe to call freely — read-only, no money moves, no OTP.
circle wallet limit set and circle wallet limit reset are interactive. They send a 6-digit OTP to the user's email mid-execution and wait for the code at the CLI's stdin prompt.
OTPs are password-equivalent. The agent must NOT receive, store, or relay the OTP. The agent's job here is to hand the user a verbatim command to run in their own terminal, then wait for them to report back.
Limits must be monotonic: per-tx ≤ daily ≤ weekly ≤ monthly.
A typical conservative configuration:
| Tier | Suggested USDC value |
|---|---|
--per-tx | 1 |
--daily | 5 |
--weekly | 20 |
--monthly | 50 |
Adjust based on the user's stated tolerance. Get explicit yes before generating the command.
Tell the user:
Setting spending limits requires an OTP I shouldn't see. Please run this command in your own terminal — the CLI will email you a 6-digit code; enter it at the prompt. Let me know once it completes.
circle wallet limit set \ --address <addr> --chain BASE \ --policy-type stablecoin \ --per-tx 1 --daily 5 --weekly 20 --monthly 50
For reset, the verbatim command is:
circle wallet limit reset --address <addr> --chain BASE --yes
Omit --yes if you want the user to see a confirmation prompt before the OTP is sent.
circle wallet limit --address <addr> --chain BASE --output json
Confirms the new caps. Surface them to the user.
| Symptom | Cause | Fix |
|---|---|---|
| User received multiple OTP emails | Command was re-run while a previous invocation was still waiting | Tell the user to use the most recent OTP only. Earlier ones are invalidated. |
| OTP rejected with "prefix mismatch" | User entered an OTP from a previous request | Restart — each set / reset invocation has a fresh prefix. |
Spending policies are mainnet-only | Tried to set a policy on a testnet chain | Re-run with a mainnet --chain value (BASE, MATIC, etc.). |
Limits must be monotonic | per-tx > daily, daily > weekly, etc. | Re-check the values. per-tx ≤ daily ≤ weekly ≤ monthly. |
Only agent wallets support spending policies | Tried on a local (non-agent) wallet | Spending policies apply only to agent wallets created via circle wallet create. |
circle wallet limit set / reset command for them to run in their own terminal. Do NOT try to orchestrate the OTP from chat.circle wallet limit --address <addr> --chain BASE --output json so the user sees the new caps.Trigger the use-agent-wallet skill instead when:
circle wallet status errors with "Not logged in" or "Terms acceptance is required".Trigger the pay-via-agent-wallet skill instead when:
Trigger the fund-agent-wallet skill instead when:
DISCLAIMER: This skill is provided "as is" without warranties, is subject to the Circle Developer Terms, and output generated may contain errors and/or include fee configuration options (including fees directed to Circle); additional details are in the repository README.
npx claudepluginhub circlefin/skills --plugin circle-skillsBootstraps a Circle agent wallet via the `circle` CLI: install check, terms acceptance, email+OTP login, wallet creation, and session/balance inspection. Use before paying for x402 services or funding the wallet.
Guides Bankr API and CLI security: read-only keys, IP whitelisting, rate limits, dedicated agent wallets, key rotation, and transaction safety.
CLI for Polygon blockchain operations: wallet setup, token swaps, bridging, yield management (Aave, ERC-4626), on-chain identity, reputation, and x402 micropayments. Uses Sequence wallets and Trails DeFi.