io.github.dingdawg/agent-wallet
Governed USDC wallet for AI agents — policy gates, spending caps, and Ed25519-signed receipts.
Open source Open in the app JSON README (API)
About
Governed USDC wallet for AI agents — policy gates, spending caps, and Ed25519-signed receipts.
Details
- Kind
- MCP servers
- Topic
- Finance & crypto
- Publisher
- dingdawg
- Origin
- official
- Category
- ferramentas
- Transport
- local
- Version
- 1.0.6
- Open pull requests
- 1
- Last push
- 2026-08-06T18:42:32Z
- Repository state
- ativo
- Language
- JavaScript
- Added
- 2026-08-29 03:02:42
- Updated
- 2026-08-29 03:02:42
- Origin id
io.github.dingdawg/agent-wallet
README
# dingdawg-agent-wallet — live demo
Shows **governed agent wallet** enforcement in action: allow, deny, step-up, allowlist — all in 5 seconds. No API keys. No blockchain required.
---
## What it demonstrates
```
▶ provision_wallet
wallet_id: demo-wallet-abc123
daily_cap: $200 USDC
per_call_cap: $100 USDC
▶ governed_spend — $25 USDC (allowed)
✓ AUTHORIZED
receipt_id: 6aba84a6-...
daily_remaining: $175 USDC
next_step: wallet.sendToken({ assetId: "usdc", amount: "25", destination: "0xVendorABC123" })
▶ governed_spend — $150 USDC (exceeds per-call cap)
✗ DENIED
reason: Amount 150 USDC exceeds per-call cap 100 USDC
receipt_id: cd7a7aa8-... (denial is logged too)
▶ governed_spend — $75 USDC (step-up required)
⚠ STEP-UP REQUIRED
reason: Amount 75 USDC > step-up threshold 50 USDC — MFA required
fix: Pass approval_token from your authorization flow
▶ governed_spend — unknown recipient (not in allowlist)
✗ DENIED
reason: Recipient 0xUnknownAddress not in allowlist
▶ wallet_audit
chain_verified: true ✓
total_receipts: 5
[17:02:18] DENY $10 USDC governed_spend
[17:02:18] DENY $75 USDC governed_spend
[17:02:18] DENY $150 USDC governed_spend
[17:02:18] ALLOW $25 USDC governed_spend
[17:02:18] ALLOW provision_wallet
```
Every action — allow AND deny — produces an immutable receipt. `chain_verified: true` means the full chain is tamper-evident — any modification is detectable.
---
## Run it
```bash
git clone https://github.com/DingDawg/agent-wallet-demo
cd agent-wallet-demo
npm install
node demo.mjs
```
---
## The package
[dingdawg-agent-wallet](https://npmjs.com/package/dingdawg-agent-wallet) — 5 MCP tools that wrap any agent wallet with policy enforcement and an immutable audit trail.
```bash
npm install dingdawg-agent-wallet
```
| Tool | What it does |
|---|---|
| `provision_wallet` | Create wallet with spend policy (daily cap, per-call cap, allowlist) |
| `governed_spend` | Policy check → authorize → immutable receipt |
| `governed_receive` | Accept payment with tamper-evident receipt |
| `wallet_policy` | Update limits and allowlists at runtime |
| `wallet_audit` | Full receipt chain — `chain_verified: true` |
Coinbase AgentKit gives your agent a wallet. DingDawg gives it a conscience.
---
## Why this matters
AI agents can now hold USDC and spend autonomously. The infrastructure exists. What doesn't: **who enforces what the agent is allowed to spend, on what, for whom — and proves it happened correctly.**
- `governed_spend` authorizes then returns the exact `agentkit_call` SDK method to execute on-chain
- Every denial is logged — you can prove what your agent *didn't* do
- `chain_verified: true` means the audit trail is tamper-evident — any modification is detectable
---
[npm](https://npmjs.com/package/dingdawg-agent-wallet) · [DingDawg](https://dingdawg.com)