โ† ่ฟ”ๅ›žๆ€ป่งˆ

๐Ÿฆž OpenClaw

Multi-channel AI Gateway โ€” ไฝ ๆญฃๅœจไฝฟ็”จ็š„ Agent ๆก†ๆžถ

Event-Driven Gateway Plugin Architecture TypeScript 68 Source Modules 8129 TypeScript Files 150+ Extensions 14 Chat Platforms
๐Ÿ“ฆ 8,129 TS files ๐Ÿ”Œ 150+ extensions ๐Ÿ’ฌ 14 channels ๐Ÿงฉ 68 source modules ๐Ÿ›ก๏ธ Policy-based security

ไธ€ใ€ๆ ธๅฟƒๆžถๆž„

OpenClaw ๆ•ดไฝ“ๆžถๆž„ โ€” Event-Driven Gateway + Plugin System โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ Gateway (ๆ ธๅฟƒๅฎˆๆŠค่ฟ›็จ‹) โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ Session Manager (ไผš่ฏ็ฎก็†) โ”‚ โ”‚ โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ Telegram โ”‚ โ”‚ Discord โ”‚ โ”‚ WhatsApp โ”‚ โ”‚ Slack โ”‚ ...ร—14 โ”‚ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚ โ”‚ โ”‚ โ†“ inbound โ”‚ โ”‚ โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ Channel Plugin Layer (ๆถˆๆฏ่ทฏ็”ฑ) โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ allowlists โ†’ auth โ†’ routing โ†’ session binding โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚ โ”‚ โ”‚ โ†“ โ”‚ โ”‚ โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ System Prompt Composer (ๆ็คบ่ฏ็ป„่ฃ…) โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ stable prefix โ†cache boundaryโ†’ volatile suffix โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ [identity][tools][skills][context files][memory][runtime] โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚ โ”‚ โ”‚ โ†“ โ”‚ โ”‚ โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ Provider Runtime (LLM ่ฐƒ็”จๅฑ‚) โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ Anthropic / OpenAI / Google / DeepSeek / ... 40+ providers โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ failover โ†’ retry โ†’ model fallback โ†’ credential rotation โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚ โ”‚ โ”‚ โ†“ โ”‚ โ”‚ โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ Tool Execution Pipeline (ๅทฅๅ…ทๆ‰ง่กŒ) โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ policy check โ†’ approval โ†’ exec โ†’ result โ†’ redaction โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚ โ”‚ โ”‚ โ†“ outbound โ”‚ โ”‚ โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ Reply Delivery (ๅ›žๅคๆŠ•้€’) โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ text / media / reactions / buttons / voice โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚ โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ Sub-Agent โ”‚ โ”‚ Cron Jobs โ”‚ โ”‚ Context โ”‚ โ”‚ Compaction โ”‚ โ”‚ โ”‚ โ”‚ Registry โ”‚ โ”‚ Scheduler โ”‚ โ”‚ Engine โ”‚ โ”‚ Service โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚ โ”‚ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ โ”‚ Extension System (150+ plugins) โ”‚ โ”‚ โ”‚ โ”‚ providers ร— 40+ | channels ร— 14 | tools ร— 30+ | skills ร— 20+ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

ไบŒใ€็ณป็ปŸๆ็คบ่ฏๆžถๆž„ (ๆทฑๅบฆๅˆ†ๆž)

๐Ÿงฑ ๆ็คบ่ฏไธ‰ๅฑ‚็ป“ๆž„ + Cache Boundary

System Prompt ็ป„่ฃ…ๆต็จ‹ (~36,206 ๅญ—็ฌฆ + ~32,694 ๅญ—็ฌฆๅทฅๅ…ทๅฎšไน‰) โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ STABLE PREFIX (็ผ“ๅญ˜็ƒญๅŒบ๏ผŒ่ทจ turn ไธๅ˜) โ”‚ โ”‚ โ”‚ โ”‚ 1. Identity (SOUL.md / IDENTITY.md) โ”‚ โ”‚ 2. Tooling (ๅฏ็”จๅทฅๅ…ทๆ่ฟฐ) โ”‚ โ”‚ 3. Safety Rules โ”‚ โ”‚ 4. Skills (ๅŒน้…็š„ SKILL.md) โ”‚ โ”‚ 5. Memory Recall ๆŒ‡ไปค โ”‚ โ”‚ 6. Workspace Files ๆณจๅ…ฅ้กบๅบ: โ”‚ โ”‚ AGENTS.md(10) โ†’ SOUL.md(20) โ†’ โ”‚ โ”‚ IDENTITY.md(30) โ†’ USER.md(40) โ†’ โ”‚ โ”‚ TOOLS.md(50) โ†’ BOOTSTRAP.md(60) โ†’ โ”‚ โ”‚ MEMORY.md(70) โ”‚ โ”‚ 7. Sub-Agent Delegation ๅๅฅฝ โ”‚ โ”‚ 8. Provider Overlay (GPT-5 ็ญ‰) โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚ โ† CACHE BOUNDARY โ†’ โ”‚ โ”‚ (system-prompt-cache-boundary.ts) โ”‚ โ”‚ SHA256 hash ้ชŒ่ฏ prefix ็จณๅฎšๆ€ง โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚ VOLATILE SUFFIX (ๆฏ turn ้‡ๅปบ) โ”‚ โ”‚ โ”‚ โ”‚ 9. Memory State (MEMORY.md ๅ†…ๅฎน) โ”‚ โ”‚ 10. User Profile (USER.md) โ”‚ โ”‚ 11. Inbound Context (channel/chat/user) โ”‚ โ”‚ 12. Compaction Summary โ”‚ โ”‚ 13. Timestamp / Session / Model info โ”‚ โ”‚ 14. Heartbeat Context (HEARTBEAT.md) โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ ๅ…ณ้”ฎ่ฎพ่ฎกๅ†ณ็ญ–: โ€ข Stable prefix ไฝฟ็”จ LRU ็ผ“ๅญ˜ (ไธŠ้™ 64 ๆก)๏ผŒ้ฟๅ…ๆฏๆฌก turn ้‡ๆ–ฐๆž„ๅปบ โ€ข Cache boundary ็กฎไฟไธŠๆธธ LLM provider ็š„ prefix cache ๅ‘ฝไธญ โ€ข Workspace files ๆœ‰ๆ˜Ž็กฎ็š„ไผ˜ๅ…ˆ็บงๆŽ’ๅบ (CONTEXT_FILE_ORDER Map) โ€ข HEARTBEAT.md ๆ˜ฏๅ”ฏไธ€ๆ ‡่ฎฐไธบ dynamic ็š„ไธŠไธ‹ๆ–‡ๆ–‡ไปถ

ไธ‰ใ€ไธƒๅคงๆณจๅ…ฅๅฑ‚

ๅฑ‚็บงๆฅๆบ่งฆๅ‘ๆ—ถๆœบๅ†…ๅฎน
1. System Promptsystem-prompt.tsๆฏ session ๆž„ๅปบ่บซไปฝใ€ๅทฅๅ…ทใ€ๅฎ‰ๅ…จใ€ๆŠ€่ƒฝใ€ไธŠไธ‹ๆ–‡ๆ–‡ไปถ
2. Tool Definitionspi-tool-definition-adapter.tsๆฏ turn~32,694 ๅญ—็ฌฆ็š„ JSON Schema ๅทฅๅ…ทๅฎšไน‰
3. Provider Overlaygpt5-prompt-overlay.ts็‰นๅฎš providerGPT-5 ็ญ‰ๆจกๅž‹็š„็‰นๆฎŠๆŒ‡ไปค่ฆ†็›–
4. Context Enginecontext-engine/*.tsๅŽ‹็ผฉ่งฆๅ‘ๆ—ถไธŠไธ‹ๆ–‡ๅŽ‹็ผฉ็ญ–็•ฅ
5. Memory Flushplugins/memory-state.tsๆฏ turn volatileMEMORY.md + ๅ‘้‡ๆฃ€็ดข็ป“ๆžœ
6. Inbound Contextchannels/plugins/ๆฏๆกๆถˆๆฏchannel, chat_type, sender ไฟกๆฏ
7. Compaction Summarycompaction.tsไธŠไธ‹ๆ–‡ๆบขๅ‡บๆ—ถๅކๅฒๅฏน่ฏๆ‘˜่ฆ

ๅ››ใ€ๅทฅๅ…ทๆ‰ง่กŒ็ฎก็บฟ

Tool Execution Pipeline (็ญ–็•ฅ้ฉฑๅŠจ๏ผŒๅคšๅฑ‚ๅฎ‰ๅ…จ) LLM tool_call โ†“ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ Tool Policy โ”‚ โ† tool-policy-pipeline.ts โ”‚ (็ญ–็•ฅๅŒน้…) โ”‚ path-policy, fs-policy, sender-policy โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ†“ allowed โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ Approval Gate โ”‚ โ† bash-tools.exec-approval-request.ts โ”‚ (ๅฎกๆ‰นๆฃ€ๆŸฅ) โ”‚ native approvals / chat approvals โ”‚ โ”‚ suggest / auto-edit / full-auto โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ†“ approved โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ Tool Dispatch โ”‚ โ† tool-policy-match.ts โ”‚ (ๆ‰ง่กŒ่ทฏ็”ฑ) โ”‚ sandbox / host / node / gateway โ”‚ โ”‚ exec-host-node.ts (่ฟœ็จ‹ๆ‰ง่กŒ) โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ†“ executed โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ Result Guard โ”‚ โ† session-tool-result-guard.ts โ”‚ (็ป“ๆžœ่ฟ‡ๆปค) โ”‚ redaction, sanitization โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ†“ ่ฟ”ๅ›ž็ป™ LLM ๅฎ‰ๅ…จ็‰นๆ€ง: โ€ข Exec ๅฎ‰ๅ…จๅฑ‚็บง: deny โ†’ allowlist โ†’ full โ€ข ๆ–‡ไปถ็ณป็ปŸ็ญ–็•ฅ: workspace-only, path-pattern โ€ข ๆๅ‡ๆƒ้™ (elevated): ้œ€่ฆ็”จๆˆทๆ˜พๅผ /approve โ€ข ๆฒ™็ฎฑๆจกๅผ: Docker container ้š”็ฆป โ€ข Node ๆ‰ง่กŒ: ่ฟœ็จ‹่ฎพๅค‡ไธŠ็š„ๅ—ๆŽงๆ‰ง่กŒ

ไบ”ใ€ไผš่ฏ็ฎก็†

Session ็”Ÿๅ‘ฝๅ‘จๆœŸ

ๅ…ญใ€150+ ๆ‰ฉๅฑ•็”Ÿๆ€็ณป็ปŸ

ๆ‰ฉๅฑ•ๅˆ†็ฑป

็ฑปๅˆซๆ•ฐ้‡ไปฃ่กจ
Chat Channels14Telegram, Discord, WhatsApp, Signal, Slack, iMessage, Feishu, Matrix, IRC, QQ, LINE, Nostr, WeChat, Google Chat
LLM Providers40+OpenAI, Anthropic, Google, DeepSeek, Groq, Mistral, Ollama, LMStudio, OpenRouter, Together, Fireworks, Chutes, HuggingFace...
Tools30+Browser, File Transfer, Web Search, Voice Call, Image/Video/Music Gen, Document Extract, Canvas...
Skills (ๅ†…็ฝฎ)20+diagram-maker ๐Ÿงญ, spike ๐Ÿงช, node-inspect-debugger ๐Ÿชฒ, browser-automation, github, weather, video-frames, taskflow, find-skills, clawhub...
Memory4Memory Core, LanceDB Vector, Wiki, Active Memory
Speech/TTS5+ElevenLabs, Deepgram, Azure Speech, SenseAudio, Local CLI

ไธƒใ€OpenClaw vs Hermes: ๅ…ณ้”ฎๅทฎๅผ‚

ๆžถๆž„ๅฏนๆฏ”

็ปดๅบฆOpenClawHermes Agent
่ฏญ่จ€TypeScriptPython
ๆ ธๅฟƒๆจกๅผEvent-Driven GatewayConversation Loop (AIAgent)
ๆ’ไปถ็ณป็ปŸ็ผ–่ฏ‘ๆ—ถๆ‰ฉๅฑ• (extensions/)่ฟ่กŒๆ—ถๆ’ไปถ (plugins/)
ๆ็คบ่ฏ็ผ“ๅญ˜Cache Boundary + LRUAnthropic prefix cache ็ปงๆ‰ฟ
่‡ชๆˆ‘ๆ”น่ฟ›ๆ—  (้ ็”จๆˆท้…็ฝฎ)โœ… Background Review Fork
Sub-Agentsessions_spawn + registrydelegate_task + kanban
Compactionๅˆ†ๅ—ๆ‘˜่ฆ + ๆ ‡่ฏ†็ฌฆไฟ็•™ContextCompressor + ๅฏๆ’ๆ‹”ๅผ•ๆ“Ž
ๅทฅๅ…ทๅฎ‰ๅ…จPolicy Pipeline + ApprovalGuardrails + Approval Callback
Channels14 (็ผ–่ฏ‘ๆ—ถ็ป‘ๅฎš)30+ (่ฟ่กŒๆ—ถๅ‘็Žฐ)
่ฎฐๅฟ†MEMORY.md + LanceDBMEMORY.md + ๅค–้ƒจ Provider + Self-improvement
๐ŸŽฏ OpenClaw ๅฏนไฝ ๆž„ๅปบ Agent ็š„ๅฏ็คบ๏ผš

ๅ…ซใ€ๅ…ณ้”ฎๆบๆ–‡ไปถ

ๆ–‡ไปถไฝœ็”จ่กŒๆ•ฐ
src/agents/system-prompt.ts็ณป็ปŸๆ็คบ่ฏ็ป„่ฃ…ๆ ธๅฟƒ~500
src/agents/compaction.tsไธŠไธ‹ๆ–‡ๅŽ‹็ผฉไธŽๆ‘˜่ฆ~400
src/agents/system-prompt-cache-boundary.tsCache boundary ๅˆ†ๅ‰ฒ็‚น~50
src/agents/pi-embedded-runner.tsๅตŒๅ…ฅๅผ LLM ่ฐƒ็”จ runner~600
src/agents/tool-policy-pipeline.tsๅทฅๅ…ท็ญ–็•ฅ็ฎก็บฟ~200
src/agents/subagent-registry.tsๅญไปฃ็†ๆณจๅ†ŒไธŽ็”Ÿๅ‘ฝๅ‘จๆœŸ~500
src/agents/bash-tools.exec.tsShell ๆ‰ง่กŒๅฎ‰ๅ…จๆŽงๅˆถ~300
src/plugins/memory-state.ts่ฎฐๅฟ†็Šถๆ€ๆณจๅ…ฅ~200
src/gateway/agent-prompt.tsAgent ๆถˆๆฏๆž„ๅปบ~100