前言

生成模型:Claude Opus 4.6 (anthropic/claude-opus-4-6) Token 消耗:输入 ~130,000 tokens,输出 ~12,000 tokens(本章)


为什么写这本书

2025 年末,大语言模型(LLM)的能力已经从"能对话"跨越到"能做事"。AI Agent 不再是论文里的概念——它们正在接管邮件回复、日程管理、代码生成、信息检索等日常任务。然而,市面上绝大多数 AI 助手都运行在云端,你的对话记录、偏好设置、工作文件全部托管在第三方服务器上。

OpenClaw 提供了一条不同的路径:在你自己的设备上运行一个完整的 AI 助手。它连接到你已经在用的消息平台(WhatsApp、Telegram、Slack、Discord、Signal、iMessage 等),你可以在任何一个平台上和它对话,而所有的数据——对话记录、记忆文件、配置——都保存在你的本地磁盘上。

OpenClaw 是一个开源项目(MIT 许可证),截至本书写作时,其 TypeScript 源码超过 30 万行,覆盖了从 WebSocket 网关、多通道消息路由、AI Agent 运行时、浏览器自动化,到原生 macOS/iOS/Android 客户端等完整技术栈。这使得它成为一个绝佳的学习素材——不仅涵盖了现代 AI 应用的核心架构模式,还展示了一个生产级项目如何组织代码、管理复杂性、处理安全问题。

本书旨在从源码出发,带领读者深入理解 OpenClaw 的架构设计、核心机制与关键实现。读完本书后,你应该能够:

  1. 理解 一个多通道 AI 助手的完整架构

  2. 阅读 OpenClaw 的源码并追踪任意功能的实现路径

  3. 动手 开发出类似的 AI 助手产品

目标读者

本书面向具备一定编程基础的读者,典型画像包括:

  • 计算机科学本科生:学过数据结构、操作系统、计算机网络等基础课程

  • 初级至中级开发者:有 JavaScript/TypeScript 经验,想深入理解 AI Agent 架构

  • 技术爱好者:对本地 AI 助手感兴趣,想了解背后的工程实现

你不需要是 TypeScript 专家,但需要能读懂基本的 TypeScript 代码。对于一些在计算机科学教科书中不常出现的概念(如 WebSocket 控制平面、向量嵌入搜索、Chrome DevTools Protocol 等),本书会在首次出现时给出衍生解释。

本书的组织结构

全书分为十个部分,34 章外加 5 个附录:

部分
内容概要
章节

第一部分

全局概览:项目介绍、架构总览、开发环境

第 1–2 章

第二部分

Gateway 控制平面:服务器、协议、会话、路由

第 3–6 章

第三部分

AI Agent 运行时:Pi Agent、模型管理、提示词、流式传输

第 7–10 章

第四部分

多通道消息系统:适配器层、核心通道、扩展机制

第 11–13 章

第五部分

工具与自动化:工具架构、Bash、浏览器、Canvas、Cron、节点

第 14–19 章

第六部分

记忆、技能与生态:向量搜索、技能平台、钩子系统

第 20–22 章

第七部分

安全、配置与基础设施:配置系统、安全模型、CLI、底层设施

第 23–26 章

第八部分

客户端应用与 Web UI:Lit 控制台、原生应用

第 27–28 章

第九部分

部署与运维:部署方案、监控与故障排查

第 29–30 章

第十部分

高级主题与实践:多代理、ACP、TUI、实战项目

第 31–34 章

建议的阅读路线:

  • 快速了解:阅读第 1 章,然后跳到感兴趣的部分

  • 系统学习:从第 1 章开始顺序阅读

  • 动手实践:在阅读过程中同步参考第 34 章的实战项目

源码版本说明

本书基于 OpenClaw v2026.2.x 版本的源码进行分析。具体对应的 package.json 版本号为 2026.2.6-3。源码仓库地址:

建议读者将源码克隆到本地,以便在阅读时随时对照:

由于 OpenClaw 是一个活跃维护的项目,后续版本的代码可能与本书描述有所出入,但核心架构和设计理念应该保持一致。

预备知识

阅读本书需要以下基础知识:

  • TypeScript / JavaScript 基础:变量、函数、类、模块、Promise/async-await

  • Node.js 运行时概念:事件循环、模块系统(ESM)、Buffer、Stream

  • 基本的网络知识:HTTP、WebSocket、TCP/IP

  • 命令行操作:终端使用、npm/pnpm 包管理

  • Git 版本控制:克隆、分支、标签

以下知识有帮助但不是必需的——本书会在需要时进行讲解:

  • Docker 容器化

  • 大语言模型(LLM)的基本原理

  • 数据库(SQLite)

  • WebSocket 协议细节

  • 浏览器自动化(Playwright/CDP)

约定

  • 源码路径相对于 OpenClaw 仓库根目录,例如 src/gateway/server.ts

  • 中文术语首次出现时会标注英文原文,例如 "控制平面(Control Plane)"

  • 代码片段以 TypeScript 语法高亮显示

  • 每个文档标注生成所使用的 AI 模型和 Token 消耗量


让我们开始吧。

Last updated