{"_id":"@agenticfi/onchain-router-buyer-core","_rev":"5-8c75fce91f0de86a7386e1bcd4a9b955","name":"@agenticfi/onchain-router-buyer-core","dist-tags":{"alpha":"0.1.2","latest":"0.1.3"},"versions":{"0.1.0":{"name":"@agenticfi/onchain-router-buyer-core","version":"0.1.0","keywords":["x402","usdc","base","ai-agents","wallet","payments","budgets"],"author":{"name":"AgenticFI"},"license":"MIT","_id":"@agenticfi/onchain-router-buyer-core@0.1.0","maintainers":[{"name":"sarenabg","email":"saren.abgaryan@yahoo.com"}],"homepage":"https://llm.agenticfi.wtf/docs/buyer-runtime","bugs":{"url":"https://github.com/AgenticFI/onchain-router-clients/issues"},"dist":{"shasum":"27a2d260771292af2122760c73300b73f3f6e473","tarball":"https://registry.npmjs.org/@agenticfi/onchain-router-buyer-core/-/onchain-router-buyer-core-0.1.0.tgz","fileCount":10,"integrity":"sha512-gJoW2j9kAeVrL9rtVA11kCPMgAxQ8hs+ZfaDnf+Q14HE44KztueymDAAX9AY8do9Y4xs2f8gjz5Ow4+2j3cdhw==","signatures":[{"sig":"MEUCIQCXU3GobaLHtT2uxlOWrdpNU1b/6kxUgJiwgwzmM0VBygIgIYh+LVBBfQKSWOUrkphkv1/kkBYsMdlUV8pwQHGboL4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@agenticfi%2fonchain-router-buyer-core@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":138107},"type":"module","_from":"file:/home/runner/work/onchain-router-clients/onchain-router-clients/.artifacts/npm/agenticfi-onchain-router-buyer-core-0.1.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.18.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./admin":{"types":"./dist/admin.d.ts","import":"./dist/admin.js"}},"private":false,"scripts":{"lint":"eslint src tests","test":"vitest run","build":"tsup src/index.ts src/admin.ts --format esm --dts --clean","clean":"rm -rf dist coverage","test:unit":"vitest run","typecheck":"tsc --noEmit","test:integration":"vitest run --passWithNoTests"},"_npmUser":{"name":"sarenabg","email":"saren.abgaryan@yahoo.com"},"_resolved":"/home/runner/work/onchain-router-clients/onchain-router-clients/.artifacts/npm/agenticfi-onchain-router-buyer-core-0.1.0.tgz","_integrity":"sha512-gJoW2j9kAeVrL9rtVA11kCPMgAxQ8hs+ZfaDnf+Q14HE44KztueymDAAX9AY8do9Y4xs2f8gjz5Ow4+2j3cdhw==","repository":{"url":"git+https://github.com/AgenticFI/onchain-router-clients.git","type":"git","directory":"packages/buyer-core"},"_npmVersion":"11.5.1","description":"Secure local wallet, budget, x402 payment, recovery, and receipt runtime for Onchain Router","directories":{},"_nodeVersion":"22.14.0","dependencies":{"zod":"3.25.76","viem":"2.55.11","ethers":"6.17.0","@x402/evm":"2.21.0","@x402/core":"2.21.0","better-sqlite3":"12.11.1"},"publishConfig":{"tag":"alpha","access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","tsup":"8.5.1","vitest":"4.1.0","typescript":"5.9.3","@types/better-sqlite3":"9.6.0"},"_npmOperationalInternal":{"tmp":"tmp/onchain-router-buyer-core_0.1.0_1788263636863_0.4774911804553741","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @onchainrouter/buyer-core. Install @onchainrouter/buyer-core@0.2.0."},"0.1.1":{"name":"@agenticfi/onchain-router-buyer-core","version":"0.1.1","keywords":["x402","usdc","base","ai-agents","wallet","payments","budgets"],"author":{"name":"AgenticFI"},"license":"MIT","_id":"@agenticfi/onchain-router-buyer-core@0.1.1","maintainers":[{"name":"sarenabg","email":"saren.abgaryan@yahoo.com"}],"homepage":"https://llm.agenticfi.wtf/docs/buyer-runtime","bugs":{"url":"https://github.com/AgenticFI/onchain-router-clients/issues"},"dist":{"shasum":"a1bcfb0d2b2d6036e82a938a37e8c15ee7279eb2","tarball":"https://registry.npmjs.org/@agenticfi/onchain-router-buyer-core/-/onchain-router-buyer-core-0.1.1.tgz","fileCount":10,"integrity":"sha512-ls+F0n/t/WIl621s7lWMUCx593Jo46qvB0KLfy1dyS9ikzp3yChI+aHGeHIlkmRgFJNbqYgH8Cyx4wo7s9zF3w==","signatures":[{"sig":"MEUCIDbYc+6bjTYXv0cJ7TlKo10qMSywl2FHepg8HhqmJVl3AiEAsuHV7TgW2dZ5eIWQtlap6YXuIMEpS+AVEkvWMAxPMxg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@agenticfi%2fonchain-router-buyer-core@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":147795},"type":"module","_from":"file:/home/runner/work/onchain-router-clients/onchain-router-clients/.artifacts/npm/agenticfi-onchain-router-buyer-core-0.1.1.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.18.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./admin":{"types":"./dist/admin.d.ts","import":"./dist/admin.js"}},"private":false,"scripts":{"lint":"eslint src tests","test":"vitest run","build":"tsup src/index.ts src/admin.ts --format esm --dts --clean","clean":"rm -rf dist coverage","test:unit":"vitest run","typecheck":"tsc --noEmit","test:integration":"vitest run --passWithNoTests"},"_npmUser":{"name":"sarenabg","email":"saren.abgaryan@yahoo.com"},"_resolved":"/home/runner/work/onchain-router-clients/onchain-router-clients/.artifacts/npm/agenticfi-onchain-router-buyer-core-0.1.1.tgz","_integrity":"sha512-ls+F0n/t/WIl621s7lWMUCx593Jo46qvB0KLfy1dyS9ikzp3yChI+aHGeHIlkmRgFJNbqYgH8Cyx4wo7s9zF3w==","repository":{"url":"git+https://github.com/AgenticFI/onchain-router-clients.git","type":"git","directory":"packages/buyer-core"},"_npmVersion":"11.5.1","description":"Secure local wallet, budget, x402 payment, recovery, and receipt runtime for Onchain Router","directories":{},"_nodeVersion":"22.14.0","dependencies":{"zod":"3.25.76","viem":"2.55.11","ethers":"6.17.0","@x402/evm":"2.21.0","@x402/core":"2.21.0","better-sqlite3":"12.11.1"},"publishConfig":{"tag":"alpha","access":"public","provenance":true},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"4.21.0","tsup":"8.5.1","vitest":"4.1.0","typescript":"5.9.3","@types/better-sqlite3":"9.6.0"},"_npmOperationalInternal":{"tmp":"tmp/onchain-router-buyer-core_0.1.1_1788387680049_0.971683940109926","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @onchainrouter/buyer-core. Install @onchainrouter/buyer-core@0.2.0."},"0.1.2":{"name":"@agenticfi/onchain-router-buyer-core","version":"0.1.2","keywords":["x402","usdc","base","ai-agents","wallet","payments","budgets"],"author":{"name":"AgenticFI"},"license":"MIT","_id":"@agenticfi/onchain-router-buyer-core@0.1.2","maintainers":[{"name":"sarenabg","email":"saren.abgaryan@yahoo.com"}],"homepage":"https://llm.agenticfi.wtf/docs/buyer-runtime","bugs":{"url":"https://github.com/AgenticFI/onchain-router-clients/issues"},"dist":{"shasum":"0a070b2b8154d4000066ef827397560134d0ba4c","tarball":"https://registry.npmjs.org/@agenticfi/onchain-router-buyer-core/-/onchain-router-buyer-core-0.1.2.tgz","fileCount":10,"integrity":"sha512-6mHJLNzEnUQo8tMo2XMK+8HPwU/mI7kyBqSpUVszVO8nNr0vgCWeye8QpP3DZEV2vX06XYN9gUYsxsc3YJqbNA==","signatures":[{"sig":"MEUCIDJS5kIR6pJrBJnCZZ6K4MtxjUYuz89HeEf2VuokxxjqAiEAlDutoGpF6ZJvSny3CVYMMOJQDHbq9EBtV0PoP+bF+80=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@agenticfi%2fonchain-router-buyer-core@0.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":140758},"type":"module","_from":"file:/home/runner/work/onchain-router-clients/onchain-router-clients/.artifacts/npm/agenticfi-onchain-router-buyer-core-0.1.2.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.18.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./admin":{"types":"./dist/admin.d.ts","import":"./dist/admin.js"}},"private":false,"scripts":{"lint":"eslint src tests","test":"vitest run","build":"tsup src/index.ts src/admin.ts --format esm --dts --clean","clean":"rm -rf dist coverage","test:unit":"vitest run","typecheck":"tsc --noEmit","test:integration":"vitest run --passWithNoTests"},"_npmUser":{"name":"sarenabg","email":"saren.abgaryan@yahoo.com"},"_resolved":"/home/runner/work/onchain-router-clients/onchain-router-clients/.artifacts/npm/agenticfi-onchain-router-buyer-core-0.1.2.tgz","_integrity":"sha512-6mHJLNzEnUQo8tMo2XMK+8HPwU/mI7kyBqSpUVszVO8nNr0vgCWeye8QpP3DZEV2vX06XYN9gUYsxsc3YJqbNA==","repository":{"url":"git+https://github.com/AgenticFI/onchain-router-clients.git","type":"git","directory":"packages/buyer-core"},"_npmVersion":"11.5.1","description":"Secure local wallet, budget, x402 payment, recovery, and receipt runtime for Onchain Router","directories":{},"_nodeVersion":"22.14.0","dependencies":{"zod":"3.25.76","viem":"2.55.11","ethers":"6.17.0","@x402/evm":"2.21.0","@x402/core":"2.21.0","better-sqlite3":"12.11.1"},"publishConfig":{"tag":"alpha","access":"public","provenance":true},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"4.21.0","tsup":"8.5.1","vitest":"4.1.0","typescript":"5.9.3","@types/better-sqlite3":"9.6.0"},"_npmOperationalInternal":{"tmp":"tmp/onchain-router-buyer-core_0.1.2_1788443482477_0.350866681496778","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @onchainrouter/buyer-core. Install @onchainrouter/buyer-core@0.2.0."},"0.1.3":{"name":"@agenticfi/onchain-router-buyer-core","version":"0.1.3","keywords":["x402","usdc","base","ai-agents","wallet","payments","budgets"],"author":{"name":"AgenticFI"},"license":"MIT","_id":"@agenticfi/onchain-router-buyer-core@0.1.3","maintainers":[{"name":"sarenabg","email":"saren.abgaryan@yahoo.com"}],"homepage":"https://onchainrouter.dev/docs/buyer-runtime","bugs":{"url":"https://github.com/AgenticFI/onchain-router-clients/issues"},"dist":{"shasum":"dbceca67bb74ffdeba32fa1e40f89415be316785","tarball":"https://registry.npmjs.org/@agenticfi/onchain-router-buyer-core/-/onchain-router-buyer-core-0.1.3.tgz","fileCount":10,"integrity":"sha512-XApvxiN1BSpyk4eekFeRPiPnXzZULgHZvapgRL8fv1VTzTmlg9oGvrkP+vg38Ydlo6zoRQ5OaIcVzIb7hjXU3w==","signatures":[{"sig":"MEUCIQDi/0xFmb03tPwv5JINBOAQ8w3c5/YRAnBQn8XX9nQRQgIgLhgroZobBd5QK6rXJCqsid8rW3zDQfOrk3FMpF4R6Ko=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@agenticfi%2fonchain-router-buyer-core@0.1.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":140712},"type":"module","_from":"file:/home/runner/work/onchain-router-clients/onchain-router-clients/.artifacts/npm/agenticfi-onchain-router-buyer-core-0.1.3.tgz","types":"./dist/index.d.ts","engines":{"node":">=20.18.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./admin":{"types":"./dist/admin.d.ts","import":"./dist/admin.js"}},"private":false,"scripts":{"lint":"eslint src tests","test":"vitest run","build":"tsup src/index.ts src/admin.ts --format esm --dts --clean","clean":"rm -rf dist coverage","test:unit":"vitest run","typecheck":"tsc --noEmit","test:integration":"vitest run --passWithNoTests"},"_npmUser":{"name":"sarenabg","email":"saren.abgaryan@yahoo.com"},"_resolved":"/home/runner/work/onchain-router-clients/onchain-router-clients/.artifacts/npm/agenticfi-onchain-router-buyer-core-0.1.3.tgz","_integrity":"sha512-XApvxiN1BSpyk4eekFeRPiPnXzZULgHZvapgRL8fv1VTzTmlg9oGvrkP+vg38Ydlo6zoRQ5OaIcVzIb7hjXU3w==","repository":{"url":"git+https://github.com/AgenticFI/onchain-router-clients.git","type":"git","directory":"packages/buyer-core"},"_npmVersion":"11.5.1","description":"Secure local wallet, budget, x402 payment, recovery, and receipt runtime for Onchain Router","directories":{},"_nodeVersion":"22.14.0","dependencies":{"zod":"3.25.76","viem":"2.55.11","ethers":"6.17.0","@x402/evm":"2.21.0","@x402/core":"2.21.0","better-sqlite3":"12.11.1"},"publishConfig":{"tag":"latest","access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","tsup":"8.5.1","vitest":"4.1.0","typescript":"5.9.3","@types/better-sqlite3":"9.6.0"},"_npmOperationalInternal":{"tmp":"tmp/onchain-router-buyer-core_0.1.3_1788514367282_0.33029045493639364","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @onchainrouter/buyer-core. Install @onchainrouter/buyer-core@0.2.0."}},"time":{"created":"2026-09-01T11:53:56.528Z","modified":"2026-09-04T13:30:34.492Z","0.1.0":"2026-09-01T11:53:56.999Z","0.1.1":"2026-09-02T22:21:20.206Z","0.1.2":"2026-09-03T13:51:22.635Z","0.1.3":"2026-09-04T09:32:47.420Z"},"bugs":{"url":"https://github.com/AgenticFI/onchain-router-clients/issues"},"author":{"name":"AgenticFI"},"license":"MIT","homepage":"https://onchainrouter.dev/docs/buyer-runtime","keywords":["x402","usdc","base","ai-agents","wallet","payments","budgets"],"repository":{"url":"git+https://github.com/AgenticFI/onchain-router-clients.git","type":"git","directory":"packages/buyer-core"},"description":"Secure local wallet, budget, x402 payment, recovery, and receipt runtime for Onchain Router","maintainers":[{"name":"sarenabg","email":"saren.abgaryan@yahoo.com"}],"readme":"# Onchain Router Buyer Runtime\n\nThe security and payment engine shared by the Onchain Router CLI, SDKs, MCP server, Agent Skill,\nand loopback proxy. It keeps wallet authority and USDC limits in one local runtime so each\nintegration does not invent its own payment lifecycle.\n\nUse a higher-level package unless you are developing an Onchain Router adapter:\n\n- applications: `@agenticfi/onchain-router` or the Python `onchain-router` package;\n- humans and shell automation: `@agenticfi/onchain-router-cli`;\n- tool-capable agents: `@agenticfi/onchain-router-mcp`;\n- OpenAI-compatible clients: `@agenticfi/onchain-router-proxy`.\n\n## Release status\n\nVersion `0.1.3` is the stable npm release for the `onchainrouter.dev` domain cutover. Installing source or a package does\nnot authorize wallet setup, import, funding, unlock, policy widening, or a paid request.\n\n## What it owns\n\n- encrypted local EVM wallet storage and restore;\n- an expiring, owner-only signer broker;\n- immutable human-approved network, recipient, model, output, and spend policy;\n- cross-process integer-atomic USDC reservations in SQLite;\n- official x402 v2 `exact` EIP-3009 payment verification and signing;\n- same-idempotency-key recovery after a lost response;\n- verification and durable storage of server receipts before releasing a result.\n\nIt does not call an AI provider directly, expose wallet keys, log prompts or completions, or permit\nan agent to widen policy. Redis is not used for local financial correctness.\n\n## Requirements\n\n- Node.js 20.18 or newer;\n- macOS or Linux;\n- the matching Onchain Router `0.1.x` client packages;\n- a dedicated Base wallet funded with enough USDC for the intended calls.\n\nWindows is not yet a supported host. Live network, asset, recipient, models, and pricing must be\nread from `https://onchainrouter.dev/.well-known/x402`, `/v1/models`, and `/v1/pricing` rather than\nhard-coded.\n\n## Installation\n\nInstall the stable release explicitly:\n\n```bash\nnpm install @agenticfi/onchain-router-buyer-core@0.1.3\n```\n\nTo build the exact published source from this repository:\n\n```bash\ncorepack enable\npnpm install --frozen-lockfile\npnpm buyer:deps\npnpm --filter @agenticfi/onchain-router-buyer-core build\npnpm --filter @agenticfi/onchain-router-buyer-core test\n```\n\n`pnpm buyer:deps` is the explicit native-build step for the pinned `better-sqlite3` dependency.\n\n## Quick start\n\nDo not initialize this low-level runtime in ordinary application code. Complete human-authority\nsetup through the matching CLI, then connect through a high-level SDK:\n\n```bash\nonchain-router setup\nonchain-router funding\nonchain-router unlock\nonchain-router status\n```\n\n```ts\nimport { OnchainRouterBuyer } from '@agenticfi/onchain-router';\n\nconst buyer = await OnchainRouterBuyer.connect();\ntry {\n  console.log(await buyer.status());\n} finally {\n  buyer.close();\n}\n```\n\nSetup and unlock ask for secrets through a direct no-echo terminal. Never pass a private key,\nseed phrase, passphrase, or signer capability through source code, arguments, environment\nvariables, agent prompts, MCP tools, or proxy requests.\n\n## Payment and recovery contract\n\nEvery logical paid request needs one stable idempotency key. Buyer Runtime validates the live 402\nchallenge against local policy, reserves the signed exact amount in integer atomic USDC, obtains\nowner authorization from the short-lived broker, and delegates EIP-3009 signing to the official\nx402 libraries. It releases a successful result only after settlement and the corresponding\nreceipt are durable.\n\nOnly the public x402 v2 `exact` EIP-3009 path can sign or spend. Older `upto` profiles remain\nreadable solely for an explicit, wallet-authenticated migration through the CLI; they cannot unlock\nthe signer broker or authorize a request.\n\nThe success result includes `Completed` or `RecoveredSuccess`, the idempotency key, response body,\nverified receipt, signed exact amount, matching settled amount, Base network, recipient, and\nsettlement transaction. A known failed inference is not settled.\n\n`ProviderOutcomeUnknown` and `SettlementOutcomeUnknown` are not generic retryable errors. Preserve\nthe original idempotency key and identical request, inspect the local receipt, and require human\nreview when the returned retry directive says so. Never submit a new key to work around ambiguity.\n\n## Security\n\n- Use a dedicated low-balance wallet; do not reuse a treasury or personal wallet.\n- Keep profile, wallet, ledger, session, backup, and proxy-token files owner-only.\n- Let only the CLI perform setup, import, unlock, funding guidance, and policy widening. Keep the\n  lower-level encrypted backup/restore procedure owner-only; a polished public CLI rotation flow is\n  not yet claimed.\n- Keep the signer session short and run `onchain-router lock` when work is complete.\n- Treat hosted media URLs and receipt capabilities as bearer secrets.\n- Review the [Buyer Runtime threat model](https://github.com/AgenticFI/onchain-router-clients/blob/main/packages/buyer-core/buyer-core-threat-model.md) before building an adapter.\n\nSecurity issues should be reported privately using the process in the repository\n[`SECURITY.md`](https://github.com/AgenticFI/onchain-router-clients/blob/main/SECURITY.md). Do not include wallet material, payment signatures, prompts,\ncompletions, or receipt capabilities in an issue.\n\n## Troubleshooting\n\n- `WalletLocked`: run `onchain-router unlock` in a human terminal and retry only if no paid handoff\n  occurred.\n- Policy or budget rejection: inspect `onchain-router policy show` and `onchain-router status`; do\n  not silently widen a limit.\n- Catalog or model rejection: refresh `onchain-router models` and choose an enabled model allowed by\n  local policy.\n- A legacy `upto` profile against public `exact` discovery is definite-unpaid. A human should run\n  `onchain-router policy set --profile PROFILE_DIRECTORY --scheme exact`, enter the existing wallet\n  passphrase, unlock, and retry with a fresh idempotency key. This changes no wallet key or budget.\n- Ambiguous outcome: use `onchain-router receipt <IDEMPOTENCY_KEY>` and follow the exact retry\n  directive.\n- Native SQLite build failure: use a supported Node version, then rerun `pnpm buyer:deps`.\n\n## Support\n\nDocumentation: <https://onchainrouter.dev/docs/buyer-runtime>\n\nIssues: <https://github.com/AgenticFI/onchain-router-clients/issues>\n\nInclude the package version, OS, Node version, sanitized outcome code, and a redacted diagnostic\nreport. Never attach secrets or request/response content.\n\n## License\n\nMIT. See [LICENSE](LICENSE).\n","readmeFilename":"README.md"}