Agent Wallet Manifest

June 27, 2026 · View on GitHub

The open standard for autonomous agent wallet identity.

One file. Any chain. Any framework. Readable by any registry, tool, or product that consumes it.


What it is

Autonomous agents move real money — paying for inference, receiving API revenue, holding treasury funds — but there is no standard way to declare which wallets belong to which agent.

The Agent Wallet Manifest is a machine-readable declaration: a single .agent/wallets.json file in a public repo that states which wallets belong to an agent, what role each wallet plays, and how ownership is verified.

Anything can consume it. Any registry can index it. Any tool can read it. Any product can build on it.


How it fits in the ecosystem

Wallet Provider / Framework


  .agent/wallets.json


  Agent Wallet Manifest (Open Standard)


Registries · Explorers · Analytics · Security · Treasury Tools


     Applications

See docs/architecture.md for the full layer breakdown.


Quick start

Step 1. Add your manifest

Create .agent/wallets.json in your repo root:

{
  "$schema": "https://schema.zettaai.co/wallets.v1.json",
  "agent": "my-agent",
  "project": "My Project",
  "ecosystem": "base",
  "website": "https://myproject.xyz",
  "wallets": [
    {
      "address": "0xYourWalletAddress",
      "chain": "base",
      "role": "treasury",
      "verification_method": "repo_manifest",
      "label": "Main Treasury",
      "active": true
    }
  ]
}

Step 2. Add the GitHub Action

Create .github/workflows/verify-wallets.yml:

name: Verify Agent Wallets
on:
  push:
    paths: ['.agent/wallets.json']
  pull_request:
    paths: ['.agent/wallets.json']

jobs:
  verify:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: danbuildss/agent-wallet-manifest@v1

On every push the action validates your manifest and prints your badge markdown in the job summary — ready to copy.

Step 3. Optionally submit to a registry

To submit to the Zetta AI registry:

      - uses: danbuildss/agent-wallet-manifest@v1
        with:
          zetta-api-key: ${{ secrets.ZETTA_API_KEY }}
          registry-submit: 'true'

Other registry implementations can define their own submission steps.

That's it. Your agent has a declared, verifiable financial identity.


Legacy path support

Already using .x402books/wallets.json? No migration needed — both paths are supported:

PathStatus
.agent/wallets.jsonStandard (recommended)
.x402books/wallets.jsonLegacy (still works)

Wallet roles

RoleDescription
treasuryHolds protocol reserves and long-term funds
revenueReceives income from services or API usage
expenseSends payments to providers or services
payment_receiverReceives payments from users or integrations
fee_receiverReceives protocol or platform fees
operatorHot wallet for agent-initiated on-chain operations
deployerUsed to deploy contracts
token_contractAddress of an associated token contract
token_bound_accountERC-6551 token-bound account
unknownRole not yet classified

fee_recipient is a legacy alias for fee_receiver — both are valid.


Schema reference

Full schema at schema/wallets.schema.json.

Required fields: agent, project, ecosystem, wallets

Each wallet requires: address, chain, role, verification_method

Supported chains: base, ethereum, arbitrum, optimism, polygon, solana, avalanche, bnb, zora, blast, linea, scroll, mode, other

Verification methods: repo_manifest, on_chain_signature, dns_record, social_post, multisig_ownership


Validate

Online: zettaai.co/validate

Locally:

node dist/validate.js .agent/wallets.json

Ecosystem

The Manifest is designed to be implemented by anyone building in the agent economy.

WhoWhat they build
FrameworksScaffold .agent/wallets.json during project setup so every agent has financial identity from day one
Wallet ProvidersAuto-generate manifests at wallet creation so declared identity is never an afterthought
RegistriesIndex manifests, serve public agent profiles, provide verification tiers
Analytics PlatformsAttribute on-chain activity to declared agent wallets using role data
Security ProductsMonitor declared wallets with role-aware alerting
Financial IntelligenceClassify treasury vs. revenue vs. expense activity and generate financial reports

Why adopt? — practical reasons for each group
Build a registry — implementation spec
Wallet provider integration — integration patterns
Framework integration — scaffolding patterns
Current partners — who's already building on it


Examples

See /examples for real manifests:


Framework guides


Badge

See BADGE.md for badge variants and how the action prints your badge markdown automatically.


Contributing

See CONTRIBUTING.md. PRs welcome for framework docs, examples, and ecosystem additions.

For schema changes, open a GitHub Issue tagged proposal and follow the process in GOVERNANCE.md.


Maintained by Zetta AI. Open standard — anyone can adopt, implement, or build on it.