OpenClaw 学习系列之二:项目地图

项目地图

打开代码前先看这份地图,快速定位你想找的东西。

顶层目录

复制代码
openclaw/
├── src/                 # 核心源码(TypeScript ESM)
├── extensions/          # 渠道和功能插件(独立 npm 包)
├── apps/                # 原生应用(iOS / Android / macOS)
├── ui/                  # Web 前端
├── packages/            # 工作区共享包
├── scripts/             # 构建和运维脚本
├── docs/                # 文档(Mintlify)
├── test/                # 测试工具
└── dist/                # 编译输出

src/ 核心结构

按功能分组,列出你最可能需要看的目录:

消息入口和路由

目录 作用 关键文件
src/gateway/ Gateway 服务器主体 server.impl.ts (主入口), server-channels.ts
src/gateway/server-methods/ RPC 方法处理器 chat.ts, send.ts, types.ts
src/routing/ 消息路由决策 resolve-route.ts, session-key.ts
src/channels/ 渠道抽象与注册 plugins/types.plugin.ts, plugins/types.adapters.ts
src/auto-reply/ 自动回复分发 dispatch.ts, reply/

Agent 和 AI 调用

目录 作用 关键文件
src/agents/ Agent 运行时 pi-tools.ts, context.ts
src/agents/pi-embedded-runner/ 嵌入式 Agent 执行器 run.ts

配置和状态

目录 作用 关键文件
src/config/ 配置加载与校验 types.ts (类型导出), types.base.ts, io.ts
src/sessions/ 会话持久化 session-key-utils.ts
src/memory/ 长期记忆 (SQLite + 向量)

基础设施

目录 作用 关键文件
src/cli/ CLI 入口和命令路由 entry.ts, run-main.ts, deps.ts
src/commands/ 各 CLI 子命令实现
src/plugins/ 插件注册表和运行时 registry.ts, types.ts
src/plugin-sdk/ 插件开发公共 SDK
src/infra/ 底层工具(日志、错误、进程) agent-events.ts
src/shared/ 共享工具函数 lazy-runtime.ts
src/media/ 媒体处理管道

extensions/ 插件目录

每个插件是独立的 npm 包,有自己的 package.jsonopenclaw.plugin.json

常见渠道插件:feishumatrixmsteamsbluebubbleszalovoice-call 等。

核心渠道(src/ 内置):telegramdiscordslacksignalimessageweb(WhatsApp)。

运行时数据位置

数据 路径 格式
配置文件 ~/.openclaw/openclaw.json JSON5
会话记录 ~/.openclaw/sessions/ JSONL (追加写)
记忆数据库 ~/.openclaw/memory/ SQLite + 向量嵌入
凭据 ~/.openclaw/credentials/ 各类 token (权限 0600)
Agent 日志 ~/.openclaw/agents/<id>/sessions/*.jsonl JSONL

开发命令速查

bash 复制代码
pnpm install          # 安装依赖
pnpm build            # 类型检查 + 编译
pnpm tsgo             # 仅类型检查
pnpm check            # lint + format 检查
pnpm format:fix       # 自动格式化
pnpm test             # 运行测试 (vitest)
pnpm test -- src/routing/resolve-route.test.ts  # 运行单个测试
pnpm dev              # 开发模式运行 CLI
pnpm openclaw ...     # 以 dev 模式执行 CLI 命令
相关推荐
yanwei20201 天前
NinChat:构建 AI 时代的实时新闻搜索基础设施
人工智能·ai agent·openclaw·hermes·meilishard·热点新闻聚合
Koma-forever2 天前
OpenClaw-使用本地Ollamam模型(opencalw config+ ollama launch)
ollama·openclaw
梦想的初衷~2 天前
【科研自动化实战】Codex × Claude Code × OpenClaw × Hermes:四位AI研究员的科研协作流水线搭建指南
人工智能·codex·claude code·openclaw·科研自动化·agent协作·ai科研助手
菜地里的小菜鸟2 天前
openclaw配置智谱GLM-4.7
openclaw·openclaw模型配置·openclaw配置智谱glm47
站在墙头上2 天前
Windows下安装 龙虾-Openclaw
windows·ai·openclaw
AC赳赳老秦3 天前
防火墙规则批量配置实战:OpenClaw 自动生成模板、批量下发与合规性校验全解析
java·开发语言·人工智能·python·github·php·openclaw
七夜zippoe3 天前
OpenClaw 实战案例:数据分析平台构建
服务器·网络·数据分析·openclaw·平台构建
yanwei20203 天前
AI Agent 实时搜索痛点根治:NinChat 轻量化检索实践(省Token、全品类实时资讯)
人工智能·ai agent·openclaw·token优化·hermes-agent·大模型联网搜索·实时资讯检索
AC赳赳老秦4 天前
网络日志自动化分析实战:OpenClaw 清洗访问日志、定位异常攻击、生成安全报表
开发语言·windows·python·安全·自动化·deepseek·openclaw
AI 大模型学习不踩坑4 天前
OpenClaw 完整教程:从安装到使用(官方脚本版)
java·人工智能·神经网络·机器学习·计算机视觉·自然语言处理·openclaw