This file is read automatically by Claude Code when working in this repository.
AgentDOM is a universal AI agent protocol (npm: agentdom, v3.2.0).
Core: dispatch_intent(intent, args, provider) — single function to interact with any software.
Website: https://getagentdom.com · npm: https://www.npmjs.com/package/agentdom
npm test # must show: # pass 33 # fail 0- Never add
"type": "module"to package.json — tests use CJS require() - Use
.mjsextension for any new ESM utilities - Never hardcode API keys — use
~/.agentdom/wallet.jsonor env vars AGENTDOM_<HOST>_KEYconvention for env-based credentials- All
dispatch_intentpaths must go throughlib/secrets.js(the 7-source resolver)
Human (once): agentdom setup <provider> → stores token
Agent (forever): dispatch_intent(...) → secrets.resolve() → token → HTTP
The secrets.resolve() waterfall in lib/secrets.js:
0. Agent Token Protocol (lib/agent-tokens.js)
AGENTDOM_<HOST>_KEYenv var~/.agentdom/wallet.json(orAGENTDOM_WALLET_B64/AGENTDOM_WALLET_PATH)- OS Keychain
- AWS SSM (
/agentdom/<host>/token) - HashiCorp Vault (
secret/agentdom/<host>) - 1Password (
op://AgentDOM/<host>/token)
| File | Role |
|---|---|
agentdom.js |
Main dispatch_intent runtime |
lib/secrets.js |
Headless credential resolver |
lib/agent-tokens.js |
Agent Token Protocol (M2M) |
commands/auth.js |
Wallet read/write, discover() |
desktop-mcp-server.js |
MCP server (50+ tools) |
manifests/*.json |
Provider polyfill manifests |
- Add intent to the provider manifest in
manifests/<host>.json - Add auth type if new (
lib/secrets.jshandles resolution) - Add test case in
test/core.test.js - Run
npm test— all 33 must pass
feat(scope): short description
Longer explanation if needed.
Scopes: auth, wallet, dispatch, protocol, mcp, cli, docs, manifest, test