
OpenClaw 指南(一):这到底是什么东西
OpenClaw 是什么、跟 ChatGPT/Claude 有什么区别、解决哪些问题。
总有人问我:“OpenClaw 不就是套了个 LLM 的壳吗?” 短回答是:不是。这件事值得专门写一篇文章讲清楚,然后再进入 QuickStart。
这是十篇系列文章的第一篇。读完这一系列,你应该能在自己的机器上跑起一个能用的 OpenClaw——它能对接模型、监听至少一个聊天频道,并且即使重启服务器也能继续工作。

前置知识#
动手之前,先说明一下前提条件:
技术底子: 你需要熟悉终端操作、能修改配置文件,并能看懂 TypeScript 或 JavaScript 的错误堆栈。本系列无需编写代码,但当服务无法启动时,你需要通过错误日志判断问题根源——是网络超时还是语法错误。
Node.js 环境: OpenClaw 跑在 Node 18 或更高版本上。如果你尚未安装 Node,或版本低于 18,下一篇将手把手指导安装。现在你只需要知道,node --version 至少得显示 v18.0.0。
LLM API Key。 你手头得有一个能用的大模型 API 密钥。系列文章里我会演示三种方案:阿里云百炼 Coding Plan(学生和认证开发者免费)、Claude 直连(付费,需要 Anthropic API 权限)以及 DashScope 免费层(额度有限但不需要信用卡)。选适合你的方案即可。如果现在还没有,第二篇文章会告诉你去哪里注册。
聊天平台账号: 本系列以 Telegram 为例,因其接入最简单:通过 BotFather 创建机器人并获取 Token 即可完成配置。你现在还不需要 Telegram 账号,但到第四篇时最好有一个。如果你更想用钉钉、微信或 Discord,概念是通用的,只是我不会手把手带你走它们的注册流程。
为什么这些很重要: OpenClaw 不是一个只需填写表单即可使用的 SaaS 服务,而是你自己运行的基础设施。如果想到要 SSH 连 VPS 或编辑 .env 文件就让你头大,那 ChatGPT Plus 或 Claude Pro 这类托管方案可能更适合你——这没高低之分,它们同样是优秀的产品。但如果你来这里是因为想把 agent 跑在自己的基础设施上,读本地文件,且不向外部“打电话汇报”,那你来对地方了。
它到底是什么#
OpenClaw 是一个自托管的 AI agent 平台。你只需安装一个 Node 二进制文件并配置一个或多个 LLM 提供商的 API Key,它就能运行一个常驻网关进程,监听你接入的任何聊天平台——钉钉、微信(通过 WorkBuddy)、Telegram、Discord、Slack、飞书等。网关将消息路由到包含工具、技能、记忆和 cron 调度器的 agent 循环中。整个项目采用 MIT 协议开源,数据存储在你的机器上,可以随时更换模型而无需重写 prompt。
如果你用过 Claude Code 或 Cursor,这个 agent 循环会很熟悉。不同之处在于,那些产品将交互界面内置于自身 UI 中,你需要在它们的界面上与 agent 对话;而 OpenClaw 则相反——交互界面是你日常使用的即时通讯工具,agent 会主动来找你。
架构概览: 当消息从任何渠道进来,网关将其反序列化成标准化的对话轮次。这个轮次传给 agent core,由它决定是调用技能、调用工具、查询记忆,还是直接生成回复。agent core 不依赖特定模型——它通过统一接口与 LLM 提供商对话,所以从 Claude 换到 Qwen 再到 GPT-4 只是改配置,不是重构代码。响应流回渠道适配器,适配器将其序列化成该平台需要的格式:Telegram 用 Markdown,钉钉用交互卡片,短信用纯文本。
Agent 循环: 在 core 内部,每一轮对话都走一个四阶段循环:Memory(加载用户和对话的上下文)、Planning(根据任务和可用工具决定下一步做什么)、Tool Execution(执行文件系统操作、Web 搜索、API 调用或 MCP 服务器)、Reflection(评估任务是否完成或需要再来一轮)。这不是什么新架构——Cursor 的 agent mode 和 Claude Code 的自主工作流也是这套循环。区别在于,OpenClaw 把每个阶段都暴露为可定制或可观测的 hook。
渠道适配器: 每个聊天平台都有自己的适配器模块,负责认证、维持连接、解析传入事件以及序列化传出消息。不同平台采用不同的通信机制:Slack 和 Discord 使用 Webhook,Telegram 使用长轮询,钉钉则依赖持久化的 WebSocket 连接。适配器将这些细节全部封装起来。对 agent core 而言,它只需收发结构化的 JSON 数据。这种分离使得添加新渠道通常只需一两天而不是几周——你实现一个接口,剩下的自动就好使。
技能系统: 技能是 agent 的词汇表。一个技能是一个 Markdown 文件,描述一个任务、可选的辅助脚本以及一个声明何时提供该技能的 manifest。运行时,只有 manifest 被加载到内存;当 agent 将任务匹配到技能时,完整的技能 body 才会被懒加载进来。这使得系统提示词保持精简,让你能在不超出上下文窗口限制的前提下积累数十个技能。第五篇文章会展示如何写自定义技能。
它处在什么位置#
我认为把它放在一个 2x2 矩阵里看最清楚。

右下角的格子虽小,但那是我想待的地方。我希望我的 agent:
- 跑在我自己的机器上
- 读我的文件、笔记和邮件
- 发帖到我用来提醒自己的那个 Telegram 线程里
- 不被订阅制计量收费
截至 2026 年,OpenClaw 是我在该象限中发现的最成熟的方案。
跟其他方案比怎么样#
Dify。 Dify 是一个可视化的 LLM 应用工作流构建器,拥有漂亮的 Web UI、拖拽节点和内置托管。如果你想做一个客服场景的 chatbot 并交给非技术团队使用,Dify 是更好的选择。OpenClaw 没有 GUI,配置全靠 YAML 和环境变量。权衡在于:OpenClaw 是渠道原生的(你的 agent 活在 Telegram 或钉钉里,而不是 Web iframe),并且它跑在每月 5 美元的 VPS 上,不需要托管平台。
Coze。 Coze 是字节跳动的对话式 AI 构建器,与飞书(Lark)集成紧密,对中文模型支持良好。如果你已经在字节生态里,Coze 更顺滑。OpenClaw 模型无关、渠道无关——你可以用 Claude 配钉钉,Qwen 配 Telegram,甚至在一个 agent 里混用三个模型。Coze 则把你锁定在字节的模型 offerings 和飞书这个主要 surface 上。
LangChain agents。 LangChain 提供基础组件(如 Chain、Agent、Retriever、Memory),但你需要自行搭建服务器、处理聊天平台认证并实现任务编排循环。如果你是库派的人,LangChain 是对的工具。OpenClaw 是一个开箱即用的运行时环境——服务器、编排循环、渠道适配器和技能系统均已内置。你写配置,不写基础设施。
n8n AI nodes。 n8n 是一个带 LLM 调用可视化节点的工作流自动化工具,擅长连接 SaaS API——例如“当 Notion 页面更新时,总结它并发到 Slack”。如果你的用例是用 LLM 把五个外部服务串起来,n8n 更干净。OpenClaw 是为活在聊天平台里且有长运行上下文的对话 agent 设计的。n8n 工作流是无状态的;OpenClaw agent 会记得你上周聊过什么。
需要说明的是: OpenClaw 放弃了 GUI 和托管 hosting。你需要编辑 YAML 配置文件、查看日志,并在修改配置后重启服务进程。作为回报,你获得数据的完全控制权,能在自己的硬件上运行,并且能灵活接入任何模型或渠道,不用等 SaaS 厂商支持。
它靠哪三件事立足#

我想坦诚地说明哪些事情一个 wrapper 解决不了,但 OpenClaw 能解决。
1. 渠道适配器是真正的工程活。 钉钉 Stream 协议、微信的封锁策略、Discord 的速率限制,各有各的坑。OpenClaw 自带 20 多个渠道的适配器,每个都知道平台的 quirks。自己写一个要花个周末;写五个就是一个月。
使用内置适配器,你可以避开这些坑。钉钉采用持久化 WebSocket 连接,并使用自定义心跳协议,要求客户端在 20 秒内对每条消息返回 ACK,否则服务端将重发。Discord 全局速率限制是所有端点每秒 50 请求,加上每路由限制。Telegram 最简单,使用 REST webhook 或长轮询,但仍需处理 parse modes(Markdown、HTML、MarkdownV2)和 inline keyboards 的特殊性。企业微信(WorkBuddy)需要企业认证、回调签名验证和注册 IP 白名单。适配器将这些全部处理。
2. 技能不只是 system prompts。 一个 Skill 是一个 Markdown 文件、可选的辅助脚本和一个 manifest。Agent 启动时只加载 manifest,技能的 body 只有在技能匹配当前任务时才会懒加载进来。这看似平淡,却直接决定了你的系统提示词是每次对话都消耗约 4k token,还是能构建一个 40k token 的技能库,仅在调用时按需加载、几乎不额外占用上下文。
举个具体的例子。假设你想让 agent 搜索 Web、总结 PDF、管理 TODO 列表、发邮件、查 SQL 数据库。如果把这些全写进 system prompt,每轮对话都会消耗 8k–10k tokens,其中大部分与当前任务无关。如果编码成技能,agent 启动时为每个技能加载 200 token 的 manifest,发现 “web-search” 与当前查询相关,才会加载 1500 token 的技能 body。其他四个技能则留在磁盘上。
3. 记忆跨会话存活: 这里有一个类型化的记忆存储(用户画像、项目状态、参考资料、反馈)加上一个可索引的 MEMORY.md。当同一段对话在三天后于不同聊天会话中恢复时,agent 无需冷启动。
记忆存储有五个部分:user_identity(姓名、角色、偏好)、project_context(活跃项目及其状态)、references(API 文档、配置示例)、feedback(用户告诉 agent 别再做的事)、learning_profile(每个主题的深度偏好)。每个部分均对应一个 Markdown 文件。Agent 在会话开始时读取这些文件,并在用户输入导致上下文变更时将其更新写回。
如果这三点对你都不重要,可以直接使用 Claude Code。如果至少有一点让你觉得有共鸣,这个系列的剩余部分会物有所值。
运行成本#
基础设施: 个人使用,2 核 VPS 配 2 GB RAM 和 20 GB 磁盘就足够了。我自己在东京的 6 美元/月 Vultr 实例上运行。如果家里已有能运行 Docker 的 home server 或 NAS,可以直接部署,完全免费。启动时间不到 5 秒,空闲时内存占用约 150 MB,负载时约为 400 MB。
LLM API 成本: 看使用情况。我平时批处理任务混用 Claude 3.5 Sonnet + Qwen-Plus,平均每月账单约 15 美元。如果你用 DashScope 的免费层(每月 100 万 tokens),个人跑个 Agent 基本等于零成本。团队使用(每天 200 条消息),看模型选型,预算大概在 50–200 美元/月之间。
时间投入: 系统稳定后,每天 5–10 分钟维护就足够了。前期投入主要是花时间跟完这个系列,大约一个周末或两个晚上。回报值得:你会得到一个懂你项目、偏好和工作流的系统,没有月费,也不怕供应商锁定。
系列结束后你会得到什么#
等到系列结束时:
- OpenClaw 安装在本地,网关运行在
:18789 - 配置好模型提供商(Bailian Coding Plan、Claude Direct 或 DashScope 免费层——任选其一)
- 终端里的 TUI 能正常工作
- 接通一个真实的聊天渠道——本系列使用 Telegram,因为它的设置最干净
- 加载两个自定义 Skills
- 挂载一个 MCP server 用于浏览器自动化
有了这些基础,官方文档中的案例(如 second-brain、daily briefing、devops automation、content pipeline)都可以随意搭建。最后我会挑选一个进行演示。
本系列不涉及的内容#
- 多 agent 路由——官方文档讲得更好
- 超出基础范围的生产环境加固(production hardening)
- WeChat WorkBuddy 的深度配置(只做一个简短演示,毕竟是腾讯产品,注册流程较复杂)
下一篇我们将直接安装。如果 Node 环境是最新的,10 分钟即可完成;如果不是,20 分钟也足够了。