{"id":"e0c0658d-1030-48ba-a3ae-99921a84c361","slug":"prism-protocol","kind":"skill","name":"prism-protocol","summary":"","owner":"Motus-DAO","repoUrl":"https://github.com/Motus-DAO/prism-protocol","license":"MIT","licenseTier":"permissive","trust":"community","stars":0,"match":null,"fewStars":true,"format":"skill","createdAt":"2026-01-19T19:31:37.000Z","addedAt":"2026-10-21T22:27:57.601Z","logoUrl":"https://avatars.githubusercontent.com/u/149033886?v=4","linkOnly":false,"collection":null,"skillPath":null,"categories":["writing"],"tags":[],"runtime":"binary","local":true,"cloudCapable":false,"cloudCapability":"unknown","cloudReadyOnPlatform":false,"needsApiKey":false,"reviewed":false,"syncedAt":"2026-10-23T21:43:10.444Z","sample":false,"url":"https://conduits.dev/tools/prism-protocol","language":"TypeScript","transports":["stdio"],"install":{},"requirements":{"env":[],"upstreamMayCharge":false},"tools":null,"readme":"# Prism Protocol\n\n**Privacy + Identity infrastructure for autonomous AI agents**\n\n> Your wallet's invisible shield. Derive disposable context wallets, delegate to AI agents with granular permissions, and register identities on-chain via ERC-8004. If a context is compromised, only that context burns — never your root wallet.\n\n**Multi-chain**: [Solana (main branch)](https://github.com/Motus-DAO/prism-protocol/tree/main) · **EVM/Celo (this branch)**\n\n---\n\n## 🌐 Live System Overview\n\n```\n┌─────────────────────────────────────────────────────────────────┐\n│                     PRISM PROTOCOL STACK                        │\n│                                                                 │\n│  ┌──────────┐    ┌──────────────┐    ┌────────────────────┐     │\n│  │  Human   │───▶│  Self (ZK)   │───▶│  Root Wallet       │     │\n│  │  Owner   │    │  Proof of    │    │  0x6460...E9c9     │     │\n│  └──────────┘    │  Personhood  │    └────────┬───────────┘     │\n│                  └──────────────┘             │                  │\n│                                    ┌─────────┴─────────┐       │\n│                                    ▼                   ▼        │\n│  ┌─────────────────────────────────────────────────────────┐    │\n│  │               ENS: prism-protocol.eth                   │    │\n│  │  agentmotus.prism-protocol.eth ──▶ Agent Wallet         │    │\n│  │  [project].prism-protocol.eth  ──▶ Free subnames        │    │\n│  └─────────────────────────────────────────────────────────┘    │\n│                                    │                            │\n│           ┌────────────────────────┼─────────────────┐          │\n│           ▼                        ▼                 ▼          │\n│  ┌──────────────┐    ┌──────────────────┐  ┌──────────────┐    │\n│  │ ERC-8004     │    │  PrismFactory    │  │  Paymaster   │    │\n│  │ Registry     │    │  Context Wallets │  │  Gas Sponsor │    │\n│  │              │    │                  │  │              │    │\n│  │ Agent #3396  │    │ ┌──────────────┐ │  │ Deposits:    │    │\n│  │ on 8004scan  │    │ │ Context A    │ │  │ 0.2 CELO     │    │\n│  │              │    │ │ 1 CELO/tx    │ │  │              │    │\n│  │ Agent #1     │    │ │ 5 CELO/day   │ │  │ Sponsors     │    │\n│  │ on Prism     │    │ │ 30-day TTL   │ │  │ context gas  │    │\n│  └──────────────┘    │ └──────────────┘ │  └──────────────┘    │\n│                      └──────────────────┘                       │\n│                                    │                            │\n│                                    ▼                            │\n│  ┌─────────────────────────────────────────────────────────┐    │\n│  │              Venice Private Inference                    │    │\n│  │  Agent reasons over sensitive data (no data retained)   │    │\n│  │  Model: llama-3.3-70b │ Decision → On-chain action      │    │\n│  └─────────────────────────────────────────────────────────┘    │\n│                                    │                            │\n│                                    ▼                            │\n│  ┌─────────────────────────────────────────────────────────┐    │\n│  │              Agent Executes On-Chain                     │    │\n│  │  Context wallet enforces caveats at contract level      │    │\n│  │  Every tx logged → agent_log.json (verifiable)          │    │\n│  └─────────────────────────────────────────────────────────┘    │\n└─────────────────────────────────────────────────────────────────┘\n```\n\n---\n\n## 🚀 Deployed on Celo Mainnet (Chain 42220)\n\n| Contract | Address | CeloScan |\n|----------|---------|----------|\n| **PrismFactory V1** | `0xaC39210F2dBcD120D9bCDE7DEeF04f2c30F8E24F` | [View](https://celoscan.io/address/0xaC39210F2dBcD120D9bCDE7DEeF04f2c30F8E24F) |\n| **PrismFactory V2** | `0x21a7d7A3D28750961321479f57596dd58520521F` | [View](https://celoscan.io/address/0x21a7d7A3D28750961321479f57596dd58520521F) |\n| **PrismRegistry** | `0xEe0C5FffD437099789d4B1A67A765dA7a163Ced3` | [View](https://celoscan.io/address/0xEe0C5FffD437099789d4B1A67A765dA7a163Ced3) |\n| **PrismPaymaster** | `0x0240A986CC1CB5052547cd922ba5f9657e157A4c` | [View](https://celoscan.io/address/0x0240A986CC1CB5052547cd922ba5f9657e157A4c) |\n| **Context Wallet** | `0x69CA5D2dD933236b77b16Dabe90144a586ee9554` | [View](https://celoscan.io/address/0x69CA5D2dD933236b77b16Dabe90144a586ee9554) |\n| **8004scan Registry** | `0x8004A169FB4a3325136EB29fA0ceB6D2e539a432` | [View](https://celoscan.io/address/0x8004A169FB4a3325136EB29fA0ceB6D2e539a432) |\n\n### On-Chain Transaction Log\n\n| # | Action | TxHash | Block |\n|---|--------|--------|-------|\n| 1 | Deploy PrismFactory + PrismRegistry | [View](https://celoscan.io/tx/0x4805154345e3873b9969969fff1e422813d6864481f68e7f0a8f682fd4e2ec1c) | — |\n| 2 | Register AgentMotus (Agent #1) | [View](https://celoscan.io/tx/0x4805154345e3873b9969969fff1e422813d6864481f68e7f0a8f682fd4e2ec1c) | — |\n| 3 | Register on 8004scan (Agent #3396) | [View](https://celoscan.io/tx/0x24e7db14f2eb83b9b3bf52e4ecbdc9ee6f8fd84c87a6e0b4ffa6d5e59acb42dc) | — |\n| 4 | Create Context Wallet (delegated) | [View](https://celoscan.io/tx/0x705301dbc0d1e7e88a53a2320408611fef162f1371680396a76e1cac8b6fed0c) | — |\n| 5 | Agent first execution | [View](https://celoscan.io/tx/0x3f1d3338e3122d1ed442b36bd7a11987d540c04ecf4091c9077ad6a3386f2676) | — |\n| 6 | Paymaster prefund context | [View](https://celoscan.io/tx/0x6db612b3c8e0e0e7e2c10ccb8f49c4cd53c5d4a64e5ec0e3a8b8a7c3d2f1e0a9) | — |\n| 7 | **Venice inference → send 0.001 CELO** | [View](https://celoscan.io/tx/0xc058d3e61e267c4e2779b9e0ea530f230f87e7055939b54578120add7a3b6e62) | 62249658 |\n\n---\n\n## 🎯 What Prism Does\n\n### The Problem\nAI agents need wallets to operate on-chain. But:\n- Giving an agent your **private key** = disaster waiting to happen\n- Creating **separate wallets** = management nightmare, no identity, no permissions\n- No standard way to **verify, scope, and revoke** agent access\n\n### The Solution: Identity Refraction\n\n```\n         ROOT WALLET (verified human)\n              │\n              │  Like light through a prism,\n              │  one identity refracts into\n              │  many controlled contexts\n              │\n         ─────┼─────\n        ╱     │     ╲\n       ╱      │      ╲\n      ╱       │       ╲\n     ▼        ▼        ▼\n Context A  Context B  Context C\n (Agent)    (DeFi)     (Browsing)\n 1 CELO/tx  5 CELO/tx  0.01 CELO\n 30-day TTL 7-day TTL  1-hour TTL\n\n Each context: isolated, scoped, disposable\n Root wallet: never exposed\n```\n\n---\n\n## 🔄 Agent Execution Flow\n\nThis is what happens when AgentMotus operates:\n\n```\n┌─────────────────────────────────────────────────────────┐\n│ 1. TASK RECEIVED                                        │\n│    \"Send 0.001 CELO to owner as heartbeat ping\"        │\n└───────────────────────┬─────────────────────────────────┘\n                        ▼\n┌─────────────────────────────────────────────────────────┐\n│ 2. GATHER ON-CHAIN DATA                                 │\n│    ┌─────────────────────────────────────────────┐      │\n│    │ cast balance 0x69CA...9554  → 0.059 CELO    │      │\n│    │ cast balance 0xd023...fd8  → 0.221 CELO    │      │\n│    │ cast balance 0x6460...E9c9 → 1.451 CELO    │      │\n│    │ cast block-number          → 62249658       │      │\n│    └─────────────────────────────────────────────┘      │\n└───────────────────────┬─────────────────────────────────┘\n                        ▼\n┌─────────────────────────────────────────────────────────┐\n│ 3. VENICE PRIVATE INFERENCE (no data retained)          │\n│                                                         │\n│    Agent reasons over balances + task privately          │\n│    Model: llama-3.3-70b                                 │\n│                                                         │\n│    Output:                                              │\n│    ┌─────────────────────────────────────────────┐      │\n│    │ {                                           │      │\n│    │   \"action\": \"send\",                         │      │\n│    │   \"reasoning\": \"Balance 0.059 > 0.01...\",   │      │\n│    │   \"confidence\": 0.99,                       │      │\n│    │   \"risk_assessment\": \"low\",                 │      │\n│    │   \"params\": {                               │      │\n│    │     \"to\": \"0x6460...E9c9\",                  │      │\n│    │     \"value_celo\": \"0.001\"                   │      │\n│    │   }                                         │      │\n│    │ }                                           │      │\n│    └─────────────────────────────────────────────┘      │\n└───────────────────────┬─────────────────────────────────┘\n                        ▼\n┌─────────────────────────────────────────────────────────┐\n│ 4. EXECUTE VIA CONTEXT WALLET                           │\n│                                                         │\n│    context.execute(owner, 0.001 ether, 0x)             │\n│                                                         │\n│    Contract enforces:                                   │\n│    ✓ value ≤ 1 CELO (spending limit)                   │\n│    ✓ daily total ≤ 5 CELO                              │\n│    ✓ caller = delegate (AgentMotus)                    │\n│    ✓ TTL not expired                                   │\n│                                                         │\n│    TX: 0xc058d3...6e62 ✅                              │\n└───────────────────────┬─────────────────────────────────┘\n                        ▼\n┌─────────────────────────────────────────────────────────┐\n│ 5. LOG EXECUTION (agent_log.json)                       │\n│                                                         │\n│    Verifiable receipt with:                             │\n│    - Venice model + decision                           │\n│    - On-chain tx hash                                  │\n│    - Balances before/after                             │\n│    - Timestamp                                         │\n└─────────────────────────────────────────────────────────┘\n```\n\n---\n\n## 🏗️ Architecture\n\n### Contract Stack\n\n```\n┌──────────────────────────────────────────────────┐\n│                  PrismFactory                     │\n│  ┌────────────────────────────────────────────┐  │\n│  │  createContext(config, salt) → wallet addr │  │\n│  │  createContextAndRegister() → wallet + 8004│  │\n│  │  Deterministic via CREATE2                 │  │\n│  └────────────────────────────────────────────┘  │\n│                      │                            │\n│           creates    │    registers                │\n│                      ▼                            │\n│  ┌────────────────────────┐  ┌────────────────┐  │\n│  │    PrismContext        │  │ PrismRegistry  │  │\n│  │    (Smart Wallet)      │  │  (ERC-8004)    │  │\n│  │                        │  │                │  │\n│  │  • execute(to,val,data)│  │  • register()  │  │\n│  │  • spending limits     │  │  • feedback()  │  │\n│  │  • daily caps          │  │  • reputation  │  │\n│  │  • allowlist           │  │  • ERC-721 NFT │  │\n│  │  • TTL expiry          │  │                │  │\n│  │  • revoke()            │  │                │  │\n│  └────────────────────────┘  └────────────────┘  │\n│                                                   │\n│  ┌────────────────────────────────────────────┐  │\n│  │           PrismPaymaster                   │  │\n│  │  Sponsors gas for context wallets          │  │\n│  │  Owner deposits → contexts transact free   │  │\n│  └────────────────────────────────────────────┘  │\n└──────────────────────────────────────────────────┘\n```\n\n### Core Contracts\n\n#### PrismFactory\nDerives deterministic context wallets from your root identity using CREATE2.\n\n```solidity\nfactory.createContext(\n    ContextConfig({\n        contextType: \"agent\",\n        spendingLimit: 1 ether,      // max per transaction\n        dailyLimit: 5 ether,         // max per 24h window\n        allowlist: [],               // allowed target contracts\n        ttl: 30 days,                // auto-expire\n        delegate: agentAddress       // who can operate this wallet\n    }),\n    salt\n);\n```\n\n#### PrismContext (Smart Wallet)\nEach context wallet enforces caveats on every transaction:\n- **Per-tx spending limit** — agent can't drain funds in one shot\n- **Daily spending limit** — rolling 24h window cap\n- **Contract allowlist** — restrict which contracts the agent can interact with\n- **TTL** — auto-expires after set duration\n- **Revocation** — owner can instantly revoke at any time\n\n#### PrismRegistry (ERC-8004)\nOn-chain agent identity and reputation, fully compliant with [ERC-8004](https://eips.ethereum.org/EIPS/eip-8004).\n\n```solidity\nuint256 agentId = registry.register(agentURI);\nregistry.submitFeedback(agentId, 5, \"Excellent execution\");\n(uint256 score, uint256 reviews) = registry.getReputation(agentId);\n```\n\n---\n\n## 🔐 Venice Integration — Private Cognition\n\nPrism uses [Venice AI](https://venice.ai) for **privacy-preserving agent inference**:\n\n```\n┌─────────────────────────────────────────────┐\n│           TRADITIONAL AGENT                  │\n│                                              │\n│  User data ──▶ Cloud LLM ──▶ Action         │\n│                    │                         │\n│              Data retained!                  │\n│              Provider sees everything!       │\n└─────────────────────────────────────────────┘\n\n┌─────────────────────────────────────────────┐\n│        PRISM + VENICE AGENT                  │\n│                                              │\n│  On-chain data ──▶ Venice ──▶ Decision       │\n│                      │                       │\n│              No data retained!               │\n│              Private inference!               │\n│                      │                       │\n│              Decision ──▶ Context wallet     │\n│                          (caveats enforced)  │\n└─────────────────────────────────────────────┘\n```\n\n**Run it yourself:**\n```bash\n./scripts/venice-agent.sh \"Check balances and send 0.001 CELO to owner if balance > 0.01\"\n```\n\n---\n\n## 🏭 Namespace Factory (Roadmap)\n\n```\n┌─────────────────────────────────────────────────────────────┐\n│                PRISM NAMESPACE SYSTEM                        │\n│                                                              │\n│  FREE TIER (subnames of prism-protocol.eth)                 │\n│  ┌──────────────────────────────────────────┐               │\n│  │  register(\"agentmotus\")                  │               │\n│  │  → agentmotus.prism-protocol.eth         │               │\n│  │  → Context wallet + ERC-8004 + ENS name  │               │\n│  │  → Cost: $0 (Celo gas only)              │               │\n│  └──────────────────────────────────────────┘               │\n│                                                              │\n│  PAID TIER (your own namespace)                             │\n│  ┌──────────────────────────────────────────┐               │\n│  │  createNamespace(\"myproject\") → ~$3      │               │\n│  │  → Deploys your own subname registrar    │               │\n│  │  → Give subnames to YOUR agents:         │               │\n│  │    agent1.myproject.prism                │               │\n│  │    agent2.myproject.prism                │               │\n│  │  → Full Prism stack included             │               │\n│  └──────────────────────────────────────────┘               │\n└─────────────────────────────────────────────────────────────┘\n```\n\n---\n\n## 📁 Project Structure\n\n```\ncontracts/\n├── PrismFactory.sol          # Context wallet factory (CREATE2)\n├── PrismContext.sol           # Smart wallet with caveats\n├── PrismRegistry.sol          # ERC-8004 agent identity + reputation\n├── PrismPaymaster.sol         # Gas sponsorship for contexts\n├── interfaces/                # Contract interfaces\n└── libraries/\n    └── PrismErrors.sol        # Custom errors\n\nscripts/\n└── venice-agent.sh            # Venice private inference → on-chain execution\n\nagent/\n├── agent.json                 # Protocol Labs agent manifest\n├── agent_log.json             # Execution receipts with TxIDs\n├── venice_execution_log.json  # Venice inference + execution log\n├── registration.json          # ERC-8004 registration file\n└── registration-8004scan.json # 8004scan official registration\n```\n\n---\n\n## ✅ What We Just Shipped (Current Sprint)\n\n### Hybrid PsyResearch Swarm (real run with 2 PDFs)\n- Ingested real research inputs into `research-inputs/`.\n- Generated:\n  - `research-inputs/research_draft.md`\n  - `research-inputs/validation_report.md`\n  - `research-inputs/human_signoff.md`\n  - `agent/research_swarm_run.json`\n- Published receipts bundle to IPFS/Filecoin:\n  - **CID:** `bafybeihg7zdj2slku6g6avfo6shte7bda6ezlgoofyn3fjpk7kyprmheey`\n  - Gateway: `https://w3s.link/ipfs/bafybeihg7zdj2slku6g6avfo6shte7bda6ezlgoofyn3fjpk7kyprmheey`\n\n### Role-based wallet expansion\nCreated dedicated swarm role wallets (separate blast radius):\n- `validator`: `0x27ec91c68A7797C774C44923681794D5Eaa94773`\n- `publisher`: `0x1BeF0E6a26dE6EfCB6852A9dABdBa32FAB410391`\n\n### Reusable skills for other agents\n- Runtime skill (project root): `SKILL.md`\n- Swarm skill: `skills/psyresearch-swarm/SKILL.md`\n- Technical installable skill package:\n  - Source: `skills/prism-technical/`\n  - Packaged: `prism-technical.skill`\n\n---\n\n## 🧩 Agent Identity + Session Matrix (Submission-Ready)\n\n| Role | Session Label | Wallet | ENS | 8004 | Status |\n|---|---|---|---|---|---|\n| Orchestrator | `swarm-orchestrator` | `0x64608C2d5E4685830348e9155bAB423bf905E9c9` | `orchestrator.prism-protocol.eth` | pending | Active |\n| Research | `swarm-research` | `0xd0237E6B4aA31a1740E84423ed43A84D1Cb01fd8` | `agentmotus.prism-protocol.eth` | `3396` | Active |\n| Validator | `swarm-validator` | `0x27ec91c68A7797C774C44923681794D5Eaa94773` | `validator.prism-protocol.eth` | pending | Wallet ready |\n| Publisher | `swarm-publisher` | `0x1BeF0E6a26dE6EfCB6852A9dABdBa32FAB410391` | `publisher.prism-protocol.eth` | pending | Wallet ready |\n\n> Recommended: assign ENS + (optional) 8004 for validator/publisher before final demo recording.\n\n---\n\n## 🧪 Technical Skill Distribution (Cursor/OpenClaw)\n\nThis repo now includes a reusable technical onboarding skill so any external agent can bootstrap Prism on the `ethereum-root-identity` branch.\n\n### Included assets\n- `prism-technical.skill` (portable package)\n- `skills/prism-technical/SKILL.md`\n- `skills/prism-technical/references/PSYRESEARCH_SWARM_RUNBOOK.md`\n\n### What this skill automates\n1. checkout + environment setup\n2. Foundry toolchain install\n3. role wallet + secure key storage path\n4. context wallet create/fund/execute/revoke on Celo\n5. ENS/8004 identity mapping checklist\n6. receipts + CID workflow\n\n### Security defaults\n- never commit private keys\n- keep keys in host-only path (`~/.config/prism/keys`, `chmod 600`)\n- rotate immediately if a key appears in logs/chat\n\n---\n\n## 🛠️ Development\n\n### Prerequisites\n- [Foundry](https://book.getfoundry.sh/getting-started/installation) (forge, cast, anvil)\n\n### Build & Test\n```bash\ngit clone https://github.com/AgentMotus/prism-protocol.git\ncd prism-protocol\ngit checkout ethereum-root-identity\nforge build\nforge test\n```\n\n### Run Venice Agent\n```bash\n# Requires: Venice API key at ~/.config/secrets/venice.key\n#           Agent key at ~/.config/secrets/agentmotus.key\n./scripts/venice-agent.sh \"Your task here\"\n```\n\n---\n\n## 🎯 Use Cases\n\n| Use Case | How Prism Helps |\n|----------|----------------|\n| 🤖 **AI Agent Ops** | Scoped wallet with spending limits, not raw private keys |\n| 🏭 **Agent Orchestrators** | Spawn agents, each gets own context + identity + ENS |\n| 🛡️ **Wallet Protection** | Risky sites get disposable context; root never exposed |\n| 🧠 **Private DeFi** | Venice inference → trade without exposing strategy |\n| ⭐ **Agent Reputation** | On-chain track record via ERC-8004 |\n| 🔄 **Multi-Agent Swarms** | Each agent: own context, own limits, own identity |\n\n---\n\n## 🏆 Synthesis Hackathon 2026\n\n| Bounty | Prize | Integration |\n|--------|-------|-------------|\n| **Protocol Labs** | $16,000 | ERC-8004 identity, agent.json, agent_log.json, full autonomy loop |\n| **Venice** | $11,500 | Private inference → trusted on-chain action |\n| **Celo** | $5,000 | Deployed on Celo mainnet, real transactions, real utility |\n| **MetaMask** | $5,000 | Delegation framework via context wallets + caveats |\n| **ENS** | $1,500 | prism-protocol.eth, human-readable agent identity |\n| **Self** | $1,000 | ZK-based human verification for root wallet |\n\n**Total addressable: $40,000+**\n\n### Final Submission Checklist (Remaining)\n- [ ] Assign ENS subdomains for validator + publisher wallets\n- [ ] (Optional) register validator + publisher on ERC-8004\n- [ ] Update `SUBMISSION.md` with final EVM narrative + tx hashes + CID\n- [ ] Add ENS text record: `receipts_cid = bafybeihg7zdj2slku6g6avfo6shte7bda6ezlgoofyn3fjpk7kyprmheey`\n- [ ] Record 2–3 min demo video (sign → execute → revoke → ENS → CID proof)\n- [ ] Update frontend/web page to reflect final architecture and live evidence links\n- [ ] Submit on Devfolio using this branch/fork evidence\n\n---\n\n## 🔗 Links\n\n- **Live Agent:** [AgentMotus on 8004scan](https://8004scan.io/agent/3396)\n- **ENS:** [prism-protocol.eth](https://app.ens.domains/prism-protocol.eth)\n- **GitHub:** [AgentMotus/prism-protocol](https://github.com/AgentMotus/prism-protocol/tree/ethereum-root-identity)\n- **PR:** [Motus-DAO/prism-protocol #2](https://github.com/Motus-DAO/prism-protocol/pull/2)\n- **MetaMask Track Plan:** [docs/METAMASK_TRACK.md](./docs/METAMASK_TRACK.md)\n- **PsyResearch Swarm Runbook:** [docs/PSYRESEARCH_SWARM_RUNBOOK.md](./docs/PSYRESEARCH_SWARM_RUNBOOK.md)\n- **PsyResearch Swarm Skill:** [skills/psyresearch-swarm/SKILL.md](./skills/psyresearch-swarm/SKILL.md)\n- **Prism Technical Skill (source):** [skills/prism-technical/SKILL.md](./skills/prism-technical/SKILL.md)\n- **Prism Technical Skill (package):** [prism-technical.skill](./prism-technical.skill)\n\n---\n\n## 📜 License\n\nMIT\n\n---\n\n**Built by [MotusDAO](https://github.com/Motus-DAO) + [AgentMotus](https://github.com/AgentMotus)** ⚡\n\n*An AI agent that built its own identity infrastructure, registered itself on-chain, and executes autonomously within human-defined boundaries.*\n"}