渐进式 AI Agent 构建教程,涵盖 18 个步骤从零实现轻量版 OpenClaw(pickle-bot),覆盖工具调用、多 Agent 协作与生产级特性。
项目定位#
本项目是一个面向开发者的渐进式 AI Agent 构建教程,通过 18 个可独立运行的步骤,引导用户从基础聊天循环逐步演进至轻量版 OpenClaw(参考实现名:pickle-bot)。教程解决的核心问题是:现有 AI Agent 框架封装过重,开发者难以理解底层设计模式与架构演进逻辑。
四大阶段#
Phase 1:基础 Agent 能力(步骤 0–6)#
- 00-chat-loop — 基础聊天循环
- 01-tools — 集成 Read/Write/Bash 工具
- 02-skills — 通过
SKILL.md声明式扩展 Agent 技能 - 03-persistence — 对话状态持久化存储
- 04-slash-commands — 斜杠命令控制会话流程
- 05-compaction — 历史消息压缩与摘要以维持上下文窗口
- 06-web-tools — 接入互联网访问能力
Phase 2:事件驱动架构(步骤 7–10)#
- 07-event-driven — 摆脱 CLI 的事件驱动架构重构
- 08-config-hot-reload — 配置文件热重载(无需重启)
- 09-channels — 多通道支持(如手机等外部平台)
- 10-websocket — 提供 WebSocket 接口支持程序化交互
Phase 3:自主与多 Agent(步骤 11–15)#
- 11-multi-agent-routing — 多 Agent 智能路由分发
- 12-cron-heartbeat — 定时任务与心跳机制,Agent 可自主触发执行
- 13-multi-layer-prompts — 多层 Prompt 上下文注入
- 14-post-message-back — Agent 主动向用户发送消息
- 15-agent-dispatch — 复杂场景下的 Agent 协作与调度
Phase 4:生产级特性(步骤 16–17)#
- 16-concurrency-control — 系统并发控制机制
- 17-memory — 长期记忆系统实现
架构与实现要点#
- 架构演进路径:从单线程 CLI 聊天循环 → 事件驱动架构 → 多 Agent 系统 → 生产级部署,采用阶梯式重构设计。
- LLM 统一接入层:底层通过 LiteLLM 实现多 Provider 统一调用接口,支持 OpenAI、Anthropic、Google Gemini、MiniMax、Qwen、Grok、Z.ai 等多家大模型服务。
- 技能声明机制:摒弃硬编码,采用
SKILL.md文件以声明式方式为 Agent 动态注入技能。 - Web 服务层:使用 FastAPI 暴露 WebSocket 端点,仓库内含基于 TypeScript(占代码量 4.9%)的
web/前端目录。 - 教学精简设计:与完整的 pickle-bot 相比,教程版本有意剔除了模板变量替换(
{{variable}})和完整 REST API 端点,聚焦于 Agent 核心逻辑的教学。
上手路径#
git clone https://github.com/czl9707/build-your-own-openclaw.git
cd build-your-own-openclaw
cp default_workspace/config.example.yaml default_workspace/config.user.yaml
# 编辑 config.user.yaml,填入 LLM API key
按编号顺序(00 至 17)进入各步骤的独立目录,每个目录均包含可运行的代码与 README.md,阅读后直接运行即可递进学习。配置体系采用 YAML 格式,核心配置项包括 provider、model、api_key、api_base、temperature 等。
待确认信息#
- "OpenClaw" 的具体指代:教程标题提及 "OpenClaw",但仓库中未详细说明其是否为独立开源项目或商业产品,结合 pickle-bot 推断可能为作者设计的 AI Agent 产品/框架概念。
- 依赖版本要求:README 中未明确列出 Python 版本或第三方库的最低版本要求。
- 正式发布状态:仓库无 GitHub Releases 发布记录,持续在 main 分支迭代。