{"_id":"@agentlyhq/erc-8004","_rev":"7-23d09bafc30594ecbd108da0bef70100","name":"@agentlyhq/erc-8004","dist-tags":{"latest":"0.0.5"},"versions":{"0.0.0":{"name":"@agentlyhq/erc-8004","version":"0.0.0","author":"","license":"MIT","_id":"@agentlyhq/erc-8004@0.0.0","maintainers":[{"name":"openwindowclosewindow","email":"fuxing@agently.to"},{"name":"kevzzsk","email":"kevin.kihata@gmail.com"},{"name":"fuxingloh","email":"npm@fuxing.dev"}],"homepage":"https://github.com/AgentlyHQ/agently#readme","bugs":{"url":"https://github.com/AgentlyHQ/agently/issues"},"dist":{"shasum":"bb0a8bedc9acbf44adabffafc01259c799937a89","tarball":"https://registry.npmjs.org/@agentlyhq/erc-8004/-/erc-8004-0.0.0.tgz","fileCount":20,"integrity":"sha512-SfxUWI5XPM2MPK+92h9KwCw2yzAxEc6TmccHucqJFtDAmo4KtsuPWbEprlYzN0YO2K5dh0U14vVVLFQ8ZjRDbw==","signatures":[{"sig":"MEUCIDfKDDIUr1xwDLNkJGIYzj/wm0hnDPVeeLV8Bpe5ZDFTAiEAqAkfrtrMwgZ6jGRvdE6BUyv92oQcnxxphaZ0rqoUGxA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":326082},"main":"dist/src/index.js","type":"commonjs","types":"dist/src/index.d.ts","exports":{".":{"default":"./dist/src/index.js","require":"./dist/src/index.js"}},"gitHead":"c24a0c67ff820c058769ac60f7c6ed20a9329cc7","scripts":{"build":"tsc"},"_npmUser":{"name":"kevzzsk","email":"kevin.kihata@gmail.com"},"repository":{"url":"git+https://github.com/AgentlyHQ/agently.git","type":"git"},"_npmVersion":"11.6.2","description":"Shared ERC-8004 contract ABIs, addresses, and Solidity sources for the Agently ecosystem.","directories":{},"_nodeVersion":"24.12.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/erc-8004_0.0.0_1770010484759_0.7647192481769962","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.0.1":{"name":"@agentlyhq/erc-8004","version":"0.0.1","author":{"name":"kevzzsk"},"license":"MIT","_id":"@agentlyhq/erc-8004@0.0.1","maintainers":[{"name":"openwindowclosewindow","email":"fuxing@agently.to"},{"name":"kevzzsk","email":"kevin.kihata@gmail.com"},{"name":"fuxingloh","email":"npm@fuxing.dev"}],"homepage":"https://github.com/AgentlyHQ/agently#readme","bugs":{"url":"https://github.com/AgentlyHQ/agently/issues"},"dist":{"shasum":"533134f9be987607a1b3e71e00f09a4a4e2dc4d7","tarball":"https://registry.npmjs.org/@agentlyhq/erc-8004/-/erc-8004-0.0.1.tgz","fileCount":20,"integrity":"sha512-smRlKKkFP02l7Qv1B1aMl8RT+DXM6BA2N5libNXruvLic+FEZCG5bb6AsXLxOx0iJc/uI0Y10+aJcQePiEC9sA==","signatures":[{"sig":"MEUCIQDSQMm8OHeZISE8Af+AinIhHWU5cvf1cpqOgUe4TYrvXwIgUY0ScQyDLMYRFq4pVDxm5yEoOpA7n/6SIwWyICv8QIo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":326155},"main":"dist/src/index.js","type":"commonjs","types":"dist/src/index.d.ts","exports":{".":{"default":"./dist/src/index.js","require":"./dist/src/index.js"}},"gitHead":"c24a0c67ff820c058769ac60f7c6ed20a9329cc7","scripts":{"build":"tsc"},"_npmUser":{"name":"kevzzsk","email":"kevin.kihata@gmail.com"},"repository":{"url":"git+https://github.com/AgentlyHQ/agently.git","type":"git"},"_npmVersion":"11.6.2","description":"Shared ERC-8004 contract ABIs, addresses, and Solidity sources for the Agently ecosystem.","directories":{},"_nodeVersion":"24.12.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/erc-8004_0.0.1_1770010803151_0.5497885181576396","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.0.2":{"name":"@agentlyhq/erc-8004","version":"0.0.2","author":{"name":"kevzzsk"},"license":"MIT","_id":"@agentlyhq/erc-8004@0.0.2","maintainers":[{"name":"openwindowclosewindow","email":"fuxing@agently.to"},{"name":"kevzzsk","email":"kevin.kihata@gmail.com"},{"name":"fuxingloh","email":"npm@fuxing.dev"}],"homepage":"https://github.com/AgentlyHQ/agently#readme","bugs":{"url":"https://github.com/AgentlyHQ/agently/issues"},"dist":{"shasum":"0389bb1188c78f62f981289e18c38c3e3c3325f2","tarball":"https://registry.npmjs.org/@agentlyhq/erc-8004/-/erc-8004-0.0.2.tgz","fileCount":23,"integrity":"sha512-/1ebQiWj6wREYMhmvHNWtzQuDRx2Z7U5hbBqB9gBqB5VbQyRB0eur7qdc8z4/jEMezqcpadHHp3IOz6n3wQAwA==","signatures":[{"sig":"MEUCIQCRPLywdyxIs+gvzqvFzlYZ+4ZgX4J/+BD8ofU9C3JYFgIgddxl9U979uNpB82nluG/TiT0K9nC6SzD86qxyIZiRkU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@agentlyhq%2ferc-8004@0.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":274227},"main":"dist/src/index.js","type":"commonjs","types":"dist/src/index.d.ts","exports":{".":{"default":"./dist/src/index.js","require":"./dist/src/index.js"},"./*":{"default":"./dist/src/*.js","require":"./dist/src/*.js"}},"gitHead":"994bdcd48185205124b6ce78abd4d9cddb0762c5","scripts":{"test":"bun test","build":"tsc"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d7aa1137-6056-4893-b293-be922a837b64"}},"repository":{"url":"git+https://github.com/AgentlyHQ/agently.git","type":"git"},"_npmVersion":"11.6.2","description":"Shared ERC-8004 contract ABIs, addresses, and Solidity sources for the Agently ecosystem.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"zod":"^4.3.6"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/erc-8004_0.0.2_1770020040034_0.9613718709766168","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.0.3":{"name":"@agentlyhq/erc-8004","version":"0.0.3","author":{"name":"kevzzsk"},"license":"MIT","_id":"@agentlyhq/erc-8004@0.0.3","maintainers":[{"name":"openwindowclosewindow","email":"fuxing@agently.to"},{"name":"kevzzsk","email":"kevin.kihata@gmail.com"},{"name":"fuxingloh","email":"npm@fuxing.dev"}],"homepage":"https://github.com/AgentlyHQ/agently#readme","bugs":{"url":"https://github.com/AgentlyHQ/agently/issues"},"dist":{"shasum":"8d7058f6b519c8115a42e6e824f21f574ec3b7e5","tarball":"https://registry.npmjs.org/@agentlyhq/erc-8004/-/erc-8004-0.0.3.tgz","fileCount":23,"integrity":"sha512-3whevx+5rs0EbozuloOap/aTkd8GOSNSYVepG7YIlcbLFM7s3UmfSxFPbekEIhPFaF7ixZjzoIMzXx4J7hKkew==","signatures":[{"sig":"MEUCIQDmTiU1EBJKrstubPyoZjyyE3j7+go3xed9ci5wwyVMswIgXP5z82KOghUhsGaGce4B1vKVF04k06QCZ+ymvTxbIIw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@agentlyhq%2ferc-8004@0.0.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":274966},"main":"dist/src/index.js","type":"commonjs","types":"dist/src/index.d.ts","exports":{".":{"default":"./dist/src/index.js","require":"./dist/src/index.js"},"./*":{"default":"./dist/src/*.js","require":"./dist/src/*.js"}},"gitHead":"d18959e4c71f3a40cdb003e80fbdabbcf26bb935","scripts":{"test":"bun test","build":"tsc"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d7aa1137-6056-4893-b293-be922a837b64"}},"repository":{"url":"git+https://github.com/AgentlyHQ/agently.git","type":"git"},"_npmVersion":"11.6.2","description":"Shared ERC-8004 contract ABIs, addresses, and Solidity sources for the Agently ecosystem.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"zod":"^4.3.6"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/erc-8004_0.0.3_1770021158645_0.004111704253549009","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.0.4":{"name":"@agentlyhq/erc-8004","version":"0.0.4","author":{"name":"kevzzsk"},"license":"MIT","_id":"@agentlyhq/erc-8004@0.0.4","maintainers":[{"name":"openwindowclosewindow","email":"fuxing@agently.to"},{"name":"kevzzsk","email":"kevin.kihata@gmail.com"},{"name":"fuxingloh","email":"npm@fuxing.dev"}],"homepage":"https://github.com/AgentlyHQ/agently#readme","bugs":{"url":"https://github.com/AgentlyHQ/agently/issues"},"dist":{"shasum":"8b4e5cdfc600c331a15206325eb714bd6730963a","tarball":"https://registry.npmjs.org/@agentlyhq/erc-8004/-/erc-8004-0.0.4.tgz","fileCount":23,"integrity":"sha512-uK+YXz9uTFdGHViaArXhliytRVzQnDFAXI9etzrnjxpXyDRaDRd2fMGgDZpIfJfwg+nCSXS/3/OSrVDlqC0G8Q==","signatures":[{"sig":"MEUCIAftc+IKP8+4JLEZRiLrkpyDeauW5YU612ZilnhJA3VWAiEAxsdfXPyqTy49lmgURGdDVJfWB7o7Vwair3tLE7+lkqE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@agentlyhq%2ferc-8004@0.0.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":282768},"main":"dist/src/index.js","type":"commonjs","types":"dist/src/index.d.ts","exports":{".":{"default":"./dist/src/index.js","require":"./dist/src/index.js"},"./*":{"default":"./dist/src/*.js","require":"./dist/src/*.js"}},"gitHead":"2ac742b6dd5222d9f882393fddfe2f87def0e71b","scripts":{"test":"bun test","build":"tsc"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d7aa1137-6056-4893-b293-be922a837b64"}},"repository":{"url":"git+https://github.com/AgentlyHQ/agently.git","type":"git"},"_npmVersion":"11.6.2","description":"Shared ERC-8004 contract ABIs, addresses, and Solidity sources for the Agently ecosystem.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"zod":"^4.3.6"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/erc-8004_0.0.4_1770287184938_0.4664664719109195","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.0.5":{"name":"@agentlyhq/erc-8004","version":"0.0.5","author":{"name":"kevzzsk"},"license":"MIT","_id":"@agentlyhq/erc-8004@0.0.5","maintainers":[{"name":"openwindowclosewindow","email":"fuxing@agently.to"},{"name":"kevzzsk","email":"kevin.kihata@gmail.com"},{"name":"fuxingloh","email":"npm@fuxing.dev"}],"homepage":"https://github.com/AgentlyHQ/agently#readme","bugs":{"url":"https://github.com/AgentlyHQ/agently/issues"},"dist":{"shasum":"bf3625f9c2496ee7198deea57ce3ecb83fe5ceae","tarball":"https://registry.npmjs.org/@agentlyhq/erc-8004/-/erc-8004-0.0.5.tgz","fileCount":23,"integrity":"sha512-4JKIhVzPDZWdyPVpUyM5dEIJSlmBjM/yebWnMT4LUvgg3sQgS1BzcIzlqdSGHra8Ezr8lUQ7JtJxdTZLqE9loA==","signatures":[{"sig":"MEYCIQDlXm+vSx5uUKRxWTahgkSfLw/Cj4XRIQ8QtdJe+zBlMAIhAJVyb6M0jnn2WyO4VCgtpZB2e6zU3IjSHqj84VHiBMWv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@agentlyhq%2ferc-8004@0.0.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":283442},"main":"dist/src/index.js","type":"commonjs","types":"dist/src/index.d.ts","exports":{".":{"default":"./dist/src/index.js","require":"./dist/src/index.js"},"./*":{"default":"./dist/src/*.js","require":"./dist/src/*.js"}},"gitHead":"3a6945504f85a0ff9399912898740388fd67ce1f","scripts":{"test":"bun test","build":"tsc"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:d7aa1137-6056-4893-b293-be922a837b64"}},"repository":{"url":"git+https://github.com/AgentlyHQ/agently.git","type":"git"},"_npmVersion":"11.6.2","description":"Shared ERC-8004 contract ABIs, addresses, and Solidity sources for the Agently ecosystem.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"zod":"^4.3.6"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/erc-8004_0.0.5_1770386439829_0.35398987014652494","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."}},"time":{"created":"2026-02-02T05:34:44.627Z","modified":"2026-02-13T07:20:12.609Z","0.0.0":"2026-02-02T05:34:44.896Z","0.0.1":"2026-02-02T05:40:03.296Z","0.0.2":"2026-02-02T08:14:00.175Z","0.0.3":"2026-02-02T08:32:38.789Z","0.0.4":"2026-02-05T10:26:25.107Z","0.0.5":"2026-02-06T14:00:39.971Z"},"bugs":{"url":"https://github.com/AgentlyHQ/agently/issues"},"author":{"name":"kevzzsk"},"license":"MIT","homepage":"https://github.com/AgentlyHQ/agently#readme","repository":{"url":"git+https://github.com/AgentlyHQ/agently.git","type":"git"},"description":"Shared ERC-8004 contract ABIs, addresses, and Solidity sources for the Agently ecosystem.","maintainers":[{"name":"fuxingloh","email":"npm@fuxing.dev"},{"name":"kevzzsk","email":"kevin.kihata@gmail.com"},{"name":"openwindowclosewindow","email":"fuxing@agently.to"}],"readme":"# @agentlyhq/erc-8004\n\nTypeScript SDK for [ERC-8004](https://eips.ethereum.org/EIPS/eip-8004), the decentralized agent registry standard. Provides contract ABIs, deployed addresses, and Zod schemas for agent registration and feedback files.\n\n## Installation\n\n```bash\nbun add @agentlyhq/erc-8004\n# or\nnpm install @agentlyhq/erc-8004\n```\n\n## Usage\n\n### Contract Interaction\n\n```typescript\nimport { IdentityRegistryAbi, ADDRESSES, CHAIN_ID } from \"@agentlyhq/erc-8004\";\nimport { createPublicClient, http } from \"viem\";\nimport { sepolia } from \"viem/chains\";\n\nconst client = createPublicClient({\n  chain: sepolia,\n  transport: http(),\n});\n\nconst address = ADDRESSES[CHAIN_ID.SEPOLIA].identityRegistry;\n\nconst tokenURI = await client.readContract({\n  address,\n  abi: IdentityRegistryAbi,\n  functionName: \"tokenURI\",\n  args: [1n],\n});\n```\n\n### Parsing Registration Files\n\n```typescript\nimport { parseRawRegistrationFile, getServices, hasX402Support } from \"@agentlyhq/erc-8004\";\n\n// Parse an existing file fetched from an agent's tokenURI\nconst result = parseRawRegistrationFile(fetchedData);\nif (result.success) {\n  const services = getServices(result.data);\n  const supportsPayment = hasX402Support(result.data);\n}\n```\n\n### Creating Registration Files\n\n```typescript\nimport { validateRegistrationFile } from \"@agentlyhq/erc-8004\";\n\n// Strict validation before on-chain submission — requires type literal and at least one service\nconst result = validateRegistrationFile(newFile);\nif (!result.success) {\n  console.error(result.error.issues);\n}\n```\n\n### Parsing Feedback Files\n\n```typescript\nimport { parseRawFeedbackFile } from \"@agentlyhq/erc-8004\";\n\nconst result = parseRawFeedbackFile(fetchedData);\nif (result.success) {\n  const { agentId, value, valueDecimals, clientAddress } = result.data;\n}\n```\n\n### Solidity (Foundry)\n\n```toml\n# foundry.toml\nremappings = [\"@agentlyhq/erc-8004/=node_modules/@agentlyhq/erc-8004/\"]\n```\n\n```solidity\nimport { IdentityRegistryUpgradeable } from \"@agentlyhq/erc-8004/contracts/IdentityRegistryUpgradeable.sol\";\nimport { ReputationRegistryUpgradeable } from \"@agentlyhq/erc-8004/contracts/ReputationRegistryUpgradeable.sol\";\nimport { ValidationRegistryUpgradeable } from \"@agentlyhq/erc-8004/contracts/ValidationRegistryUpgradeable.sol\";\n```\n\n## Supported Chains\n\n**Mainnets:**\n\n| Chain   | Chain ID | Constant           |\n| ------- | -------- | ------------------ |\n| Mainnet | `1`      | `CHAIN_ID.MAINNET` |\n| Base    | `8453`   | `CHAIN_ID.BASE`    |\n| Polygon | `137`    | `CHAIN_ID.POLYGON` |\n| Scroll  | `534352` | `CHAIN_ID.SCROLL`  |\n| Monad   | `143`    | `CHAIN_ID.MONAD`   |\n| BSC     | `56`     | `CHAIN_ID.BSC`     |\n| Gnosis  | `100`    | `CHAIN_ID.GNOSIS`  |\n\n**Testnets:**\n\n| Chain          | Chain ID   | Constant                  |\n| -------------- | ---------- | ------------------------- |\n| Sepolia        | `11155111` | `CHAIN_ID.SEPOLIA`        |\n| Base Sepolia   | `84532`    | `CHAIN_ID.BASE_SEPOLIA`   |\n| Polygon Amoy   | `80002`    | `CHAIN_ID.POLYGON_AMOY`   |\n| Scroll Sepolia | `534351`   | `CHAIN_ID.SCROLL_SEPOLIA` |\n| Monad Testnet  | `10143`    | `CHAIN_ID.MONAD_TESTNET`  |\n| BSC Testnet    | `97`       | `CHAIN_ID.BSC_TESTNET`    |\n\n## ABIs\n\n| Export                  | Description                           |\n| ----------------------- | ------------------------------------- |\n| `IdentityRegistryAbi`   | ERC-721 based agent identity registry |\n| `ReputationRegistryAbi` | Agent reputation/feedback registry    |\n| `ValidationRegistryAbi` | Third-party agent validation registry |\n\nVersioned ABIs (e.g. `IdentityRegistryAbi_V1`, `ReputationRegistryAbi_V3`) are available for pinning. See [CHANGELOG.md](./CHANGELOG.md) for details.\n\n## Contract Addresses\n\nAll contracts use UUPS proxies. Addresses are consistent across all chains within each environment.\n\n**Mainnets** (Ethereum, Base, Polygon, Scroll, Monad, BSC, Gnosis):\n\n| Contract             | Address                                      |\n| -------------------- | -------------------------------------------- |\n| `identityRegistry`   | `0x8004A169FB4a3325136EB29fA0ceB6D2e539a432` |\n| `reputationRegistry` | `0x8004BAa17C55a88189AE136b182e5fdA19dE9b63` |\n| `validationRegistry` | `0x8004Cc8439f36fd5F9F049D9fF86523Df6dAAB58` |\n\n**Testnets** (Sepolia, Base Sepolia, Polygon Amoy, Scroll Sepolia, Monad Testnet, BSC Testnet):\n\n| Contract             | Address                                      |\n| -------------------- | -------------------------------------------- |\n| `identityRegistry`   | `0x8004A818BFB912233c491871b3d84c89A494BD9e` |\n| `reputationRegistry` | `0x8004B663056A597Dffe9eCcC1965A193B7388713` |\n| `validationRegistry` | `0x8004Cb1BF31DAf7788923b405b754f57acEB4272` |\n\n## References\n\n- [ERC-8004 Specification](https://eips.ethereum.org/EIPS/eip-8004)\n- [erc-8004-contracts](https://github.com/erc-8004/erc-8004-contracts)\n- [CHANGELOG.md](./CHANGELOG.md) - ABI version history and breaking changes\n","readmeFilename":"README.md"}