硬核向 | OpenClaw 项目结构全解析
最近在玩 OpenClaw,一个开源的个人 AI 助手平台。今天来盘一盘它的代码结构,适合想贡献源码或自行扩展的朋友。
核心源码 (src/)
核心模块:
• gateway/— 控制平面,session、channel、tools、events 都归它管• cli/+commands/— 命令行入口,敲openclaw就对了• acp/— Agent Control Protocol,AI 代理控制协议• agents/— Agent 运行时 + 身份认证配置• sessions/— 会话管理• routing/— 消息路由• providers/— AI 模型集成(OpenAI、Claude、Moonshot...)
消息通道:
• 内置: telegram/、discord/、slack/、whatsapp/、signal/• 扩展: feishu/、msteams/、matrix/、line/、imessage/等等
功能模块:
• plugins/+plugin-sdk/— 插件系统,想加新功能自己搞• memory/— 记忆/存储• media/+media-understanding/— 媒体处理• tts/— 文字转语音• i18n/— 国际化• security/— 安全相关
应用层 (apps/)
• macos/— macOS 桌面端• ios/— iOS 端• android/— Android 端• shared/— 跨平台共享代码
其他目录
docs/ | |
ui/ | |
scripts/ | |
test/ | |
skills/ | |
assets/ |
架构一览
消息通道 (WhatsApp/Telegram/Discord/Feishu...) │ ▼ Gateway (ws://127.0.0.1:18789) │ ├─→ Pi Agent (RPC + 工具流) ├─→ CLI (openclaw 命令) ├─→ WebChat UI └─→ Companion Apps (macOS/iOS/Android)一句话总结
本地优先的个人 AI 助手,Gateway 是大脑,插件系统是四肢,想接入什么社交平台自己加。
夜雨聆风