[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6GTMV1H7VZPYPPFX7N38E98":3,"skill-same:01M6GTMV1H7VZPYPPFX7N38E98":89},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":16,"sourceHtmlUrl":17,"categories":18,"keywords":24,"publishedAt":47,"linkOnly":48,"markdownContent":49,"markdownBody":50,"frontMatter":51,"refName":52,"commitSha":53,"skillDirectory":54,"forksCount":55,"repositoryHtmlUrl":56,"repositoryHomepageUrl":6,"ownerHtmlUrl":57,"ownerBlogUrl":58,"ownerDescription":59,"updatedAt":60,"install":61,"resources":74},"01M6GTMV1H7VZPYPPFX7N38E98","self-agent-id",null,"Integrate Self Protocol Agent ID for ZK-powered, human-backed AI agent identity. Covers registration, verification, soulbound NFTs, Sybil resistance, and A2A patterns. Use when asked about agent identity, proof-of-human, Self Protocol, or ZK identity.","jiayaoqijia\u002Fcryptoskill","jiayaoqijia","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F1453879?v=4","01M6GMYTX7Q7S504VC6E756ENR","YQ","01M6GMYV1QKJ1CC75MTTGT9PR0",81,"AGPL-3.0","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fidentity\u002Fself-agent-id\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fidentity\u002Fself-agent-id\u002FSKILL.md",[19],{"categoryNo":20,"categoryName":21,"taxonomyType":22,"taxonomyTypeDesc":23},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],"self agent id","agent id","id","self","human","when","for","zk","sybil","about","proof","nfts","a2a","patterns","registration","integrate","use","verification","protocol","agent identity","identity","ai agent","2026-11-10 10:12:30",false,"---\nname: self-agent-id\ndescription: >\n  Integrate Self Protocol Agent ID for ZK-powered, human-backed AI agent identity.\n  Covers registration, verification, soulbound NFTs, Sybil resistance, and A2A patterns.\n  Use when asked about agent identity, proof-of-human, Self Protocol, or ZK identity.\n---\n\n# Self Agent ID\n\nZK-powered identity for AI agents via Self Protocol. Agents get soulbound ERC-721 NFTs verified through zero-knowledge passport authentication.\n\n## How It Works\n\n1. Human scans passport via Self app (ZK proof generated locally on phone)\n2. Hub V2 verifies the proof on-chain and notifies the registry\n3. Registry mints a soulbound NFT linking agent's key to unique human nullifier\n4. Agents sign requests via SDK; services verify against on-chain registry\n\nNo personal data leaves the user's device. Only a ZK proof and nullifier are submitted on-chain.\n\n## Registry Addresses\n\n| Network | Chain ID | Registry Address |\n|---------|----------|------------------|\n| Celo Mainnet | 42220 | `0xaC3DF9ABf80d0F5c020C06B04Cced27763355944` |\n| Celo Sepolia | 11142220 | `0x043DaCac8b0771DD5b444bCC88f2f8BBDBEdd379` |\n\nThree on-chain registries (ERC-8004 compatible):\n- **SelfAgentRegistry** — Core identity (soulbound ERC-721 + proof-of-human)\n- **SelfReputationRegistry** — Aggregated reputation feedback\n- **SelfValidationRegistry** — Third-party validation\n\n## REST API\n\nBase: `https:\u002F\u002Fselfagentid.xyz\u002Fapi`\n\n**Get agent info**:\n```\nweb_fetch url=\"https:\u002F\u002Fselfagentid.xyz\u002Fapi\u002Fagent\u002Finfo\u002F42220\u002FAGENT_ID\"\n```\n\n**List agents by wallet**:\n```\nweb_fetch url=\"https:\u002F\u002Fselfagentid.xyz\u002Fapi\u002Fagent\u002Fagents\u002F42220\u002F0xWALLET_ADDRESS\"\n```\n\n**Verify agent**:\n```\nweb_fetch url=\"https:\u002F\u002Fselfagentid.xyz\u002Fapi\u002Fagent\u002Fverify\u002F42220\u002FAGENT_ID\"\n```\n\n**Get agent card (A2A)**:\n```\nweb_fetch url=\"https:\u002F\u002Fselfagentid.xyz\u002Fapi\u002Fcards\u002F42220\u002FAGENT_ID\"\n```\n\n**Register agent**:\n```\nexec command=\"curl -s -X POST 'https:\u002F\u002Fselfagentid.xyz\u002Fapi\u002Fagent\u002Fregister' -H 'Content-Type: application\u002Fjson' -d '{\\\"mode\\\":\\\"linked\\\",\\\"network\\\":\\\"mainnet\\\",\\\"humanAddress\\\":\\\"0xWALLET\\\",\\\"disclosures\\\":{\\\"age\\\":true,\\\"ofac\\\":true}}'\"\n```\n\n## Registration Modes\n\n| Mode | Key Type | Wallet Required | Best For |\n|------|----------|-----------------|----------|\n| `linked` | ECDSA | Yes (human) | Autonomous agents with human oversight |\n| `wallet-free` | ECDSA | No | Non-crypto users, embedded agents |\n| `ed25519` | Ed25519 | No | OpenClaw, Eliza frameworks |\n| `ed25519-linked` | Ed25519 | Yes (human) | Ed25519 agents with human custody |\n| `privy` | Social login | No | Google\u002FTwitter\u002Femail auth |\n| `smartwallet` | Passkey | No | Biometric auth, gasless revocation |\n\n## Verification Patterns\n\n### Agent-to-Service\nAgent signs HTTP requests with headers:\n- `x-self-agent-address` — Agent's Ethereum address\n- `x-self-agent-signature` — ECDSA signature\n- `x-self-agent-timestamp` — Unix timestamp\n\n### Agent-to-Agent\nMutual verification between two agents. `sameHuman()` detects if two agents share the same human backer without revealing identity.\n\n### Agent-to-Chain\nSmart contracts check `isVerifiedAgent()` on the registry directly. For gasless: agents sign EIP-712 typed data, relayer submits.\n\n## SDK Installation\n\n| Language | Package | Install |\n|----------|---------|---------|\n| TypeScript | `@selfxyz\u002Fagent-sdk` | `npm install @selfxyz\u002Fagent-sdk` |\n| Python | `selfxyz-agent-sdk` | `pip install selfxyz-agent-sdk` |\n| Rust | `self-agent-sdk` | `cargo add self-agent-sdk` |\n\n## Integration with Ottie\n\nOttie can integrate Self Agent ID for:\n- **Sybil-resistant identity**: each agent backed by unique human\n- **A2A verification**: verify other agents before DeFi interactions\n- **On-chain reputation**: build verifiable trust history\n- **Proof-of-human gating**: restrict sensitive operations to human-verified agents\n","# Self Agent ID\n\nZK-powered identity for AI agents via Self Protocol. Agents get soulbound ERC-721 NFTs verified through zero-knowledge passport authentication.\n\n## How It Works\n\n1. Human scans passport via Self app (ZK proof generated locally on phone)\n2. Hub V2 verifies the proof on-chain and notifies the registry\n3. Registry mints a soulbound NFT linking agent's key to unique human nullifier\n4. Agents sign requests via SDK; services verify against on-chain registry\n\nNo personal data leaves the user's device. Only a ZK proof and nullifier are submitted on-chain.\n\n## Registry Addresses\n\n| Network | Chain ID | Registry Address |\n|---------|----------|------------------|\n| Celo Mainnet | 42220 | `0xaC3DF9ABf80d0F5c020C06B04Cced27763355944` |\n| Celo Sepolia | 11142220 | `0x043DaCac8b0771DD5b444bCC88f2f8BBDBEdd379` |\n\nThree on-chain registries (ERC-8004 compatible):\n- **SelfAgentRegistry** — Core identity (soulbound ERC-721 + proof-of-human)\n- **SelfReputationRegistry** — Aggregated reputation feedback\n- **SelfValidationRegistry** — Third-party validation\n\n## REST API\n\nBase: `https:\u002F\u002Fselfagentid.xyz\u002Fapi`\n\n**Get agent info**:\n```\nweb_fetch url=\"https:\u002F\u002Fselfagentid.xyz\u002Fapi\u002Fagent\u002Finfo\u002F42220\u002FAGENT_ID\"\n```\n\n**List agents by wallet**:\n```\nweb_fetch url=\"https:\u002F\u002Fselfagentid.xyz\u002Fapi\u002Fagent\u002Fagents\u002F42220\u002F0xWALLET_ADDRESS\"\n```\n\n**Verify agent**:\n```\nweb_fetch url=\"https:\u002F\u002Fselfagentid.xyz\u002Fapi\u002Fagent\u002Fverify\u002F42220\u002FAGENT_ID\"\n```\n\n**Get agent card (A2A)**:\n```\nweb_fetch url=\"https:\u002F\u002Fselfagentid.xyz\u002Fapi\u002Fcards\u002F42220\u002FAGENT_ID\"\n```\n\n**Register agent**:\n```\nexec command=\"curl -s -X POST 'https:\u002F\u002Fselfagentid.xyz\u002Fapi\u002Fagent\u002Fregister' -H 'Content-Type: application\u002Fjson' -d '{\\\"mode\\\":\\\"linked\\\",\\\"network\\\":\\\"mainnet\\\",\\\"humanAddress\\\":\\\"0xWALLET\\\",\\\"disclosures\\\":{\\\"age\\\":true,\\\"ofac\\\":true}}'\"\n```\n\n## Registration Modes\n\n| Mode | Key Type | Wallet Required | Best For |\n|------|----------|-----------------|----------|\n| `linked` | ECDSA | Yes (human) | Autonomous agents with human oversight |\n| `wallet-free` | ECDSA | No | Non-crypto users, embedded agents |\n| `ed25519` | Ed25519 | No | OpenClaw, Eliza frameworks |\n| `ed25519-linked` | Ed25519 | Yes (human) | Ed25519 agents with human custody |\n| `privy` | Social login | No | Google\u002FTwitter\u002Femail auth |\n| `smartwallet` | Passkey | No | Biometric auth, gasless revocation |\n\n## Verification Patterns\n\n### Agent-to-Service\nAgent signs HTTP requests with headers:\n- `x-self-agent-address` — Agent's Ethereum address\n- `x-self-agent-signature` — ECDSA signature\n- `x-self-agent-timestamp` — Unix timestamp\n\n### Agent-to-Agent\nMutual verification between two agents. `sameHuman()` detects if two agents share the same human backer without revealing identity.\n\n### Agent-to-Chain\nSmart contracts check `isVerifiedAgent()` on the registry directly. For gasless: agents sign EIP-712 typed data, relayer submits.\n\n## SDK Installation\n\n| Language | Package | Install |\n|----------|---------|---------|\n| TypeScript | `@selfxyz\u002Fagent-sdk` | `npm install @selfxyz\u002Fagent-sdk` |\n| Python | `selfxyz-agent-sdk` | `pip install selfxyz-agent-sdk` |\n| Rust | `self-agent-sdk` | `cargo add self-agent-sdk` |\n\n## Integration with Ottie\n\nOttie can integrate Self Agent ID for:\n- **Sybil-resistant identity**: each agent backed by unique human\n- **A2A verification**: verify other agents before DeFi interactions\n- **On-chain reputation**: build verifiable trust history\n- **Proof-of-human gating**: restrict sensitive operations to human-verified agents\n",{"name":5,"description":7},"main","3df1d0d67b30ff15236561f8c0f9f06d33f42dfd","skills\u002Fidentity\u002Fself-agent-id",17,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia","https:\u002F\u002Feth2030.com","Hardcore infra. Building @alt-research and applied cryptography.","2026-11-14 02:27:51",{"source":8,"skillName":5,"commands":62,"prompt":72,"zipAvailable":73},[63,66,69],{"tool":64,"command":65},"npx","npx skills add jiayaoqijia\u002Fcryptoskill --skill self-agent-id",{"tool":67,"command":68},"bunx","bunx skills add jiayaoqijia\u002Fcryptoskill --skill self-agent-id",{"tool":70,"command":71},"pnpm","pnpm dlx skills add jiayaoqijia\u002Fcryptoskill --skill self-agent-id","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fidentity\u002Fself-agent-id\u002FSKILL.md",true,[75,79,85],{"path":76,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":78,"sourceHtmlUrl":16},"LICENSE","许可证",34562,{"path":80,"resourceType":81,"resourceTypeDesc":82,"sizeBytes":83,"sourceHtmlUrl":84},"SOURCE.md","REFERENCE","参考文档",177,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fidentity\u002Fself-agent-id\u002FSOURCE.md",{"path":86,"resourceType":81,"resourceTypeDesc":82,"sizeBytes":87,"sourceHtmlUrl":88},"TRUST.auto.yaml",2141,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fidentity\u002Fself-agent-id\u002FTRUST.auto.yaml",[90,119,141,159,172,182],{"skillNo":91,"name":92,"nameZh":6,"description":93,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":94,"licenseFileUrl":95,"sourceHtmlUrl":96,"categories":97,"keywords":98,"publishedAt":47},"01M712C436EQYE43342Q4E7GG1","recipe-performance","Diagnose a specific MetaMask user flow's real-app performance and Sentry critical-user-flow telemetry with deterministic mm-harness recipes. Use for CUF boundaries, cold\u002Fwarm\u002Fbackground-resume behavior, latency regressions, lifecycle tags, duplicate or blocking network requests, long tasks, layout\u002Fpaint cost, screen redraws, React rerenders, or browser trace analysis where tests alone cannot prove the real app.","MIT","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fwallets\u002Fmetamask-official-recipe-performance\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fwallets\u002Fmetamask-official-recipe-performance\u002FSKILL.md",[],[99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118],"performance","recipe performance","recipe","mm","sentry","harness","app","deterministic","recipes","flow","cold","critical","analysis","tasks","react","browser","layout","screen","network","metamask",{"skillNo":120,"name":121,"nameZh":6,"description":122,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":123,"licenseFileUrl":124,"sourceHtmlUrl":125,"categories":126,"keywords":127,"publishedAt":47},"01M70XT2F8A5CQZ81JBP98KSW3","mexc-spot-websocket","MEXC Spot WebSocket workflows for public streams, protobuf handling, depth maintenance, listen keys, and private streams without exposing API keys.","Apache-2.0","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fexchanges\u002Fmncrftfrcnm-mexc-spot-websocket\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fexchanges\u002Fmncrftfrcnm-mexc-spot-websocket\u002FSKILL.md",[],[128,129,130,131,132,133,134,135,136,137,31,138,139,140],"mexc spot websocket","spot","websocket","api","workflows","public","listen","streams","depth","keys","api keys","maintenance","protobuf",{"skillNo":142,"name":143,"nameZh":6,"description":144,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":123,"licenseFileUrl":145,"sourceHtmlUrl":146,"categories":147,"keywords":148,"publishedAt":47},"01M70XT0MBXN3WZY1BKN0CPNKR","mexc-spot-rest","MEXC Spot REST workflows for public data, signed account requests, orders, wallet\u002Fadmin actions, and secure signing without exposing API keys.","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fexchanges\u002Fmncrftfrcnm-mexc-spot-rest\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fexchanges\u002Fmncrftfrcnm-mexc-spot-rest\u002FSKILL.md",[],[149,129,150,151,152,153,154,138,31,137,155,156,157,133,158,132,131],"mexc spot rest","REST","admin","signing","Wallet","requests","actions","secure","data","orders",{"skillNo":160,"name":161,"nameZh":6,"description":162,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":123,"licenseFileUrl":163,"sourceHtmlUrl":164,"categories":165,"keywords":166,"publishedAt":47},"01M70XSYSVZ2N0N91XCAR2CAK0","mexc-futures-websocket","MEXC Futures WebSocket workflows for public streams, private account\u002Forder\u002Fposition streams, ping\u002Fpong, subscriptions, and depth maintenance.","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fexchanges\u002Fmncrftfrcnm-mexc-futures-websocket\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fexchanges\u002Fmncrftfrcnm-mexc-futures-websocket\u002FSKILL.md",[],[167,168,130,169,170,139,31,171,136,135,133,132],"mexc futures websocket","futures","position","ping","subscriptions",{"skillNo":173,"name":174,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":94,"licenseFileUrl":175,"sourceHtmlUrl":176,"categories":177,"keywords":178,"publishedAt":47},"01M6H0ZWHVE5W04WG2DKQE2SQC","0xklen-version-and-refresh-sanctions-lists","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-version-and-refresh-sanctions-lists\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-version-and-refresh-sanctions-lists\u002FSKILL.md",[],[179,180,181],"refresh","0xklen version and refresh sanctions lists","version",{"skillNo":183,"name":184,"nameZh":6,"description":185,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":94,"licenseFileUrl":186,"sourceHtmlUrl":187,"categories":188,"keywords":189,"publishedAt":47},"01M6H0Z28Q3R8J0S799GJQWXM3","verify-tests-cover-changed-lines","Use when a PR adds code that the existing suite may not exercise. Measures patch coverage — the share of newly changed lines hit by tests — before approving.","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-verify-tests-cover-changed-lines\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-verify-tests-cover-changed-lines\u002FSKILL.md",[],[190,191,192,193,194,195,196,41,197,198,199],"tests","cover","verify tests cover changed lines","verify","coverage","pr","exercise","patch","code","share"]