构建你自己的 OpenClaw

从零开始,用18个渐进式步骤搭建一个轻量级AI代理,涵盖工具、技能、记忆与多代理协作。

Star 数
★ 1.9k
最近更新
3 个月前
License
MIT
主语言
Python

30 秒速览

运行形态
命令行工具
可在哪里用
通用 · 跨平台
费用
软件免费,模型调用费用自付
上手难度
中 · 需要几步配置
开始前需要
PythonLiteLLMShell / 命令行网络访问本地文件系统
典型场景
想学习如何从零构建AI代理的开发者,可以按步骤逐步实现。
不适合
  • 使用 Python 以外语言、希望直接用于生产的开发者
  • 期望开箱即用、无需逐步跟做教程的用户

这个 Agent 能做什么,适合哪些场景?

这是一个分步教程,指导你从简单的聊天循环构建自己的AI代理,最终实现一个轻量版的OpenClaw。教程包含18个渐进步骤,每个步骤都有详细的README说明和可运行的代码。步骤分为四个阶段:第一阶段构建具备聊天、工具、技能、记忆和联网能力的单代理;第二阶段重构为事件驱动架构,支持配置热重载、多平台接入和WebSocket交互;第三阶段实现多代理路由、定时任务、多层提示和代理调度;第四阶段添加并发控制和长期记忆功能。参考实现为pickle-bot项目。

该仓库提供了一套逐步教程,用于学习如何构建AI代理。每个步骤包含一个README.md(解释关键组件和设计决策)和一个可运行的代码库。教程从最基础的聊天循环(00-chat-loop)开始,逐步添加工具(01-tools)、技能(02-skills)、持久化(03-persistence)、斜杠命令(04-slash-commands)、历史压缩(05-compaction)、网络工具(06-web-tools),然后重构为事件驱动架构(07-event-driven)、配置热重载(08-config-hot-reload)、多平台渠道(09-channels)、WebSocket(10-websocket),接着实现多代理路由(11-multi-agent-routing)、定时任务(12-cron-heartbeat)、多层提示(13-multi-layer-prompts)、消息回发(14-post-message-back)和代理调度(15-agent-dispatch),最后实现并发控制(16-concurrency-control)和记忆(17-memory)。

  1. 想学习如何从零构建AI代理的开发者,可以按步骤逐步实现。
  2. 需要为一个轻量级代理添加工具、技能和持久化功能的开发者。
  3. 希望将单代理重构为事件驱动架构以支持多平台的开发者。
  4. 需要实现多代理协作和定时任务的开发者。
  5. 希望在生产环境中添加并发控制和长期记忆的开发者。

如何安装或部署这个 Agent?

首先,克隆仓库到本地:git clone https://github.com/czl9707/build-your-own-openclaw.git。然后进入项目目录,复制配置文件:cp default_workspace/config.example.yaml default_workspace/config.user.yaml。编辑config.user.yaml,填入你的API密钥(参考LiteLLM支持的提供商列表)。

如何使用这个 Agent?

确保Python环境已安装,并配置好API密钥后,进入每个步骤的目录(如00-chat-loop),阅读README.md了解设计,然后运行对应的Python脚本。你可以按照教程的步骤顺序学习,也可以直接参考参考实现pickle-bot。

这个 Agent 有哪些优点和局限?

优点
  • 教程结构清晰,18个步骤渐进式,从基础到高级,适合学习。
  • 每个步骤都有可运行的代码,方便实践和调试。
  • 使用LiteLLM作为模型提供商抽象,支持多种LLM提供商,避免锁定单一供应商。
  • 覆盖了代理开发的关键方面:工具、技能、记忆、事件驱动、多代理等。
局限
  • 教程步骤需要配置API密钥,依赖外部LLM服务,可能产生费用。
  • 代码是每个步骤单独实现,可能需要整合才能用于生产环境。
  • 部分高级主题(如并发控制、记忆)可能实现有限,需自行扩展。
  • 文档和代码以Python为主,不适用于其他语言开发者。

这个 Agent 与同类方案有什么区别?

该教程明确参照了OpenClaw项目,旨在构建其轻量版本。

与相关度最高的同类 agent 并排比较关键指标。

Agent 源码审查 形态 / 费用 Star 最近更新 主语言 完整支持的平台
构建你自己的 OpenClaw 当前 21 · 缺口较多 命令行工具免费 + 模型费 ★ 1.9k 3 个月前 Python —
学习 Claude Code:智能体赋能(Harness)工程实战 48 · 缺口较多 命令行工具免费 + 模型费 ★ 79k 20 天前 Python Claude API
CaveAgent 62 · 存在缺口 代码库 / SDK免费 + 模型费 ★ 204 1 个月前 Python OpenAI API · Claude API
Claude Code 从零实现 60 · 存在缺口 命令行工具免费 + 模型费 ★ 2.8k 3 个月前 Python OpenAI API · Claude API

FollowAgents 如何评估这个 Agent?

FollowAgents 源码审查 · FARS-2.1
缺口较多
21/ 100 五分制 1.1 / 5
信任安全 0/29
可靠稳定 2/14
适用触发 6/18
规范维护 6/18
有效结果 6/13
证据核验 1/8
查看各维度的扣分理由
信任安全0 / 29 · 0.0/5

证据显示仓库仅提供教程和示例代码,未包含任何安全机制描述。没有最小权限原则、用户确认、数据流透明、敏感数据处理、依赖安全、外部影响控制、回滚或来源归属的说明。因此所有信任标准得分为0。

可靠稳定2 / 14 · 0.7/5

教程结构清晰,步骤间逻辑一致,但未提供任何错误处理或失败消息的说明。依赖可用性未提及,因此自一致性得1分,其余为0。

适用触发6 / 18 · 1.7/5

教程面向开发者,场景明确,但能力边界未清晰定义,触发精度未涉及,环境适配仅提及API配置。因此受众和场景得2分,能力边界和环境适配得1分,触发精度为0。

规范维护6 / 18 · 1.7/5

信息架构良好,有清晰的目录和步骤说明;安装说明仅涉及API配置;命名稳定但未明确版本策略;示例和FAQ有限;未提及已知限制;许可证为MIT;无版本变更日志;维护责任未明确。因此信息架构得2分,安装说明、命名稳定性、示例和FAQ、维护责任得1分,已知限制和版本变更日志为0,许可证得2分。

有效结果6 / 13 · 2.3/5

输出可用性一般,教程提供可运行代码但未说明输出格式;边际价值较高,提供了从零构建的完整路径;成本效益未评估。因此输出可用性得1分,边际价值得2分,成本效益得1分。

证据核验1 / 8 · 0.6/5

声明可追溯性一般,教程步骤有对应代码;但缺乏跨来源验证和事实与推断的区分。因此声明可追溯性得1分,其余为0。

风险与缓解建议
  • 源码中未见:最小权限约束只授予完成任务所需的权限:用专用账号或只读令牌,并限定可访问的目录和仓库。
  • 源码中未见:执行前用户确认开启或自行加上执行前确认;先在沙箱或测试环境跑通,确认行为后再接入真实数据。
  • 源码中未见:数据流向说明运行时观察它连接了哪些外部服务(代理或防火墙日志);弄清数据去向之前不要输入敏感数据。
  • 源码中未见:敏感信息处理使用专用、低权限、可随时吊销的 API 密钥,不要复用生产凭据,也不要让密钥出现在日志里。
  • 源码中未见:依赖安全审查安装前固定版本并做一次依赖扫描(如 npm audit、pip-audit);优先放在容器里运行。
  • 源码中未见:外部影响披露先弄清它会写入、发送或修改哪些外部系统,用测试账号或测试仓库验证后再接入正式环境。
  • 源码中未见:回滚或恢复路径运行前先备份,或在 git 分支、快照上操作,确保改动可以撤销。
  • 源码中未见:来源归属可核验从官方仓库或包源安装,核对发布者和仓库地址,避免同名仿冒包。
  • 该仓库为教程性质,未包含任何安全机制,用户在生产环境使用前需自行评估风险。
  • 依赖安全未提及,可能存在未披露的漏洞。
  • 未提供错误处理或失败消息,用户遇到问题可能难以排查。
证据充分度:低 评估于 2026年8月11日 审查版本 37ae5dd255a0
评估证据 README.mdLICENSE
查看完整评分方法 →

常见问题

这个教程需要哪些前置知识?
建议具备Python基础和基本的编程概念,了解LLM和API调用会更有帮助。
使用教程中的代码需要付费吗?
代码本身是开源的(MIT许可证),但运行需要调用LLM的API,这可能涉及费用,具体取决于你选择的提供商和用量。
我可以跳过一些步骤吗?
可以,每个步骤是独立的,你可以根据自己的需求选择阅读和运行特定的步骤。
教程支持哪些模型提供商?
通过LiteLLM,支持其支持的所有提供商,包括OpenAI、Anthropic等,具体可参考LiteLLM文档。
在 GitHub 查看 ↗ 安装 ↓

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。

相关 Agents