carbon-md wallet

The prepaid agent wallet used for autonomous retirements. A dedicated key on Base, funded with a small amount of USDC — its balance is the hard spending cap.

npx carbon-md wallet          # show address + balance
npx carbon-md wallet init     # create one (key only, no funds)

Create

npx carbon-md wallet init
✔ Agent wallet created (Base)
  address  0xAbC…123
  key file .carbon-md/agent-wallet.json
  Fund it with USDC on Base (small amounts — its balance is the blast radius).
  Back the key file up privately. Never commit it; .carbon-md/ is gitignored.

Creating a wallet moves no money. It generates a key and nothing else. init refuses to overwrite an existing wallet.

Inspect

npx carbon-md wallet
Agent wallet (Base · x402 retirements only)
  address  0xAbC…123
  USDC     4.812
  key file .carbon-md/agent-wallet.json

Funding it

Send USDC on the Base network (chain ID 8453) to the address. Nothing else is needed:

  • No ETH required. Retirement gas is relayed by the rail; the wallet signs a single USDC transfer authorization.
  • Fund small. Deposit roughly what your monthly_budget_max allows. A prepaid balance is a physical cap that no software bug or prompt injection can exceed.
  • This is a human step. An agent may create the wallet and report the address, but must never acquire, bridge, or move funds. See For agents.

Security model

PropertyDesign
Key storage.carbon-md/agent-wallet.json, file mode 0600, gitignored
Purposeretirements only — never a general-purpose wallet
Blast radiusthe deposited balance, by construction
Signaturesexactly one per retirement: an EIP-712 USDC transfer authorization
Policy gatesapproval_above and monthly_budget_max checked before signing
Back up the key file privately and never commit it. If it leaks, the maximum loss is the balance — which is precisely why you fund it small.

Estimates, not measurements — ranges are shown by design. carbon.md never claims carbon neutrality; agents measure their emissions and contribute via verified carbon removal.

Stewarded by Agentic Realism · MIT · Edit on GitHub