先给结论:OpenClaw 是什么
OpenClaw 是一个运行在自己设备或服务器上的个人 AI Agent 系统。它用 Gateway 统一管理会话、渠道和路由,让同一个 Agent 可以从 Control UI、Telegram、WhatsApp、飞书、QQ Bot 等入口接收任务,再调用 Skills、浏览器、文件和自动化能力完成工作。
这一定义里有三个容易被短视频演示掩盖的重点:
- 它不是一个模型。 你仍需配置可用的模型提供商或本地模型。
- 它不等于某个聊天渠道。 渠道只是入口,Gateway 才是会话和连接的中枢。
- “能做事”来自工具与权限。 Agent 能否读文件、操作浏览器或发送消息,取决于工具配置、运行环境和审批边界。
OpenClaw 和普通聊天机器人有什么不同
| 维度 | 普通聊天机器人 | OpenClaw |
|---|---|---|
| 主要目标 | 回答当前问题 | 持续接收任务并调用工具完成动作 |
| 入口 | 通常是单一网页或 App | 一个 Gateway 可连接多个渠道 |
| 上下文 | 以当前对话为主 | 会话、工作区文件和可检索记忆共同组成 |
| 能力扩展 | 依赖平台预置功能 | Skills、Plugins、Hooks、Browser 与外部工具 |
| 运行位置 | 多为平台托管 | 默认强调自托管和本地控制 |
| 责任边界 | 用户主要判断答案 | 用户还要管理权限、凭据、网络和失败恢复 |
因此,OpenClaw 的价值不在于“换一个地方聊天”,而在于把入口、上下文和执行能力连成一条可治理的任务链。
用一张图理解它的工作方式
Telegram / WhatsApp / WebChat / Control UI
↓
Gateway
会话 · 路由 · 渠道连接 · 鉴权
↓
Agent
模型 · Workspace · Memory · Skills
↓
Browser · 文件 · 消息 · Hooks · Cron
↓
结果、审批记录与可复用流程
Gateway 是这套结构的“单一事实来源”。它负责保持渠道连接、区分会话、把消息路由到正确 Agent,并向 Control UI、CLI 和插件提供控制面。模型负责推理,但不应该绕开 Gateway 的鉴权与工具策略直接获得无限权限。
四个最值得理解的核心能力
1. 多渠道不是复制聊天窗口
多个渠道可以同时连接,但群聊、私聊、媒体、回复和配对规则并不相同。先在 Control UI 跑通任务,再添加一个真实渠道,通常比一次配置全部入口更容易排错。
2. Skills 是可复用的工作说明
Skill 本质上是带元信息的 SKILL.md 指令目录,用来告诉 Agent 何时使用某项工具以及如何执行。它不是天然可信的插件。安装社区 Skill 前仍要核对发布者、权限、脚本和数据外发范围,并先在测试工作区运行。
3. 记忆是文件,不是神秘的“永久大脑”
OpenClaw 的长期记忆来自工作区中的 MEMORY.md,日常记录位于 memory/YYYY-MM-DD.md。模型只会使用被写入、加载或检索到的内容。这个设计便于检查和修订,也意味着你需要定期清理过期偏好,避免错误记忆持续影响行动。
4. 后台任务必须带失败与审批规则
Hooks 适合响应 Gateway 内部事件,Cron 适合在固定时间唤醒任务。它们都不应被理解成“设置后永远正确”。涉及发送、删除、付款、发布或生产变更时,最好让自动化停在草稿、预览或审批步骤。
哪些人适合使用 OpenClaw
比较适合:
- 想从常用聊天软件调用个人 Agent,但希望数据和运行环境由自己控制。
- 有高频、结构化任务,并愿意为它们定义输入、输出、权限和失败处理。
- 能维护一台持续在线的电脑或服务器,并接受查看日志、更新版本和轮换凭据。
- 团队需要共享 Agent 能力,同时保留不同用户、渠道与工具的访问边界。
暂时不适合:
- 只需要偶尔问答,不需要工具、记忆、多渠道或后台任务。
- 希望安装后完全免维护,也不愿意管理模型费用和系统权限。
- 准备一开始就开放邮箱发送、文件删除或生产部署,却没有审批和回滚机制。
- 把“自托管”误解成数据绝不会离开设备。模型 API、搜索、消息渠道和第三方 Skill 都可能产生外部传输。
10 分钟判断:先不安装,回答六个问题
1. 我最想交给 Agent 的具体任务是什么?
2. 这个任务一周会发生几次?
3. 它需要哪些文件、账号、渠道或工具?
4. 哪一步必须由人确认?
5. 失败时如何发现、停止和恢复?
6. 相比普通聊天工具,多渠道或后台执行真的带来价值吗?
如果前四个问题都无法回答,先写任务边界,不急着安装。如果能选出一个高频、低风险、可验证的任务,就有了合适的试点。
安装后如何验证自己理解正确
完成 Onboarding 后,不要马上接入全部账号。先做最小健康检查:
openclaw gateway status --require-rpc
openclaw channels status --probe
openclaw skills check
openclaw dashboard
你需要看到 Gateway 可连接、预期渠道状态正常、Skills 没有明显缺失,然后在 Dashboard 中完成一个不含敏感数据的测试任务。任何一步失败,都应先解决健康状态,再扩大权限。
OpenClaw Gateway 架构
一张文字版运行图
可以先把 OpenClaw 想成 5 层:
- 入口层:Telegram、WhatsApp、Browser、Webhook、移动端或远程节点产生请求。
- 准入层:pairing、allowlist、dmPolicy、groupPolicy、设备 approval 决定谁能进来。
- Gateway 层:处理连接、认证、会话、工具调用、健康探针、日志和重启行为。
- 界面层:Dashboard、Control UI、WebChat 让你观察状态、审批请求或发起对话。
- 执行层:agent、skills、browser、hooks、worker 或外部系统真正完成任务。
很多新手会把这 5 层混在一起。例如“Telegram 没回应”可能是 bot token 错了,也可能是 dmPolicy 把陌生私聊挡住了,也可能是 Gateway 没 ready,还可能是 Control UI 里有待批准请求没有处理。正确做法是从入口到准入再到 Gateway 状态逐层缩小范围。
Gateway 负责什么
从官方 Gateway CLI 和 Gateway configuration 页面可以看出,Gateway 至少承担这些职责:
- 启动与绑定:根据配置、端口、认证和安全护栏决定能否启动。官方 CLI 文档提示,缺少必要的
gateway.mode=local时不能把它当成普通默认值糊弄过去。 - 连接与认证:处理 WebSocket、token、password、local/remote 访问和 CLI 查询。
- 健康与就绪:
/healthz更偏存活探针,/readyz更偏服务是否真正稳定。排查时不要只看“进程还在不在”。 - 渠道治理:配置页把 WhatsApp、Telegram、Discord 等渠道放在
channels.<provider>下,并把 DM / group access 作为共享治理模型。 - 设备与节点配对:Gateway pairing 处理节点/设备加入,而不是简单等同于聊天渠道的私信配对。
- 重启与诊断:
openclaw gateway restart --safe、stability bundle、startup trace 都属于真实运维阶段会用到的能力。
Gateway 不负责什么
为了避免误判,也要明确它不该背哪些锅:
- 它不能替你自动判断某个群聊是否应该响应。群聊是否要求 @、是否允许某个群,仍要回到渠道配置。
- 它不能把不安全的开放访问变成安全访问。
dmPolicy: "open"和allowFrom: ["*"]这种配置要有明确理由。 - 它不能替你保管所有团队流程。审批、轮换、事故响应和 owner 责任仍然需要团队制度配合。
- 它不是所有外部系统的最终执行者。Browser、webhook、skills 和 agent 执行失败时,Gateway 只是观察和转发中轴。
实操步骤
- 先从“消息从 channel 进来后会经过哪里”这个问题开始梳理,不要直接背术语。
- 把 pairing、allowlist、审批理解成准入机制,而不是互不相干的独立功能页。
- 再把 Dashboard / Control UI 视为 Gateway 状态的不同观察入口:一个偏本地运行态,一个偏交互与治理。
- 回看配置文件,确认哪些字段定义 Gateway 行为,哪些字段只是某个 channel 的局部策略。
- 最后为你自己的部署画一张 5 层运行图,并标出每一层的排错入口。
配置或命令示例
openclaw gateway health --url ws://127.0.0.1:18789
openclaw gateway restart --safe
openclaw dashboard
openclaw pairing list telegram
openclaw pairing approve telegram <CODE>
下面这个简化配置展示了 Gateway 与 channel 配置的边界。gateway 负责运行态,channels.telegram 负责 Telegram 入口策略。
{
gateway: {
mode: "local",
channelHealthCheckMinutes: 5,
channelStaleEventThresholdMinutes: 30
},
channels: {
telegram: {
enabled: true,
botToken: "123:abc",
dmPolicy: "pairing",
groups: { "*": { requireMention: true } }
}
}
}
排错顺序
遇到“OpenClaw 没反应”时,按这个顺序比盲目重启更稳:
- 先确认进程与端口:Gateway 是否启动、端口是否被占用、是否因为缺少配置被拒绝启动。
- 再确认 ready 状态:能响应不等于 ready。看
/readyz或 gateway health,确认插件、channels 和 hooks 是否已经稳定。 - 再确认准入策略:陌生私聊看
dmPolicy和 pairing;群聊看groupPolicy、groups、requireMention。 - 再确认 credentials / state:已配对设备、待处理请求、allowlist 存储都属于敏感状态,不要随手删。
- 最后看执行层:如果 Gateway 和准入都正常,再排 skills、Browser、webhook、agent 指令或外部服务。
团队部署时的边界清单
- 谁可以修改 Gateway 配置,谁只能在 Control UI 审批请求。
- 是否允许
open私聊策略;如果允许,是否限定环境和有效期。 - 是否启用 group mention gating,哪些群必须
requireMention: true。 - Gateway token、password、paired device state 和 allowlist 文件是否按敏感数据处理。
- 重启时优先使用普通 restart、safe restart,还是明确需要 force。
- 是否记录 Gateway stability bundle,方便事故后复盘。
常见坑
- 把 channel 看成独立系统,结果忽略它们都要经过 Gateway 的准入、认证与日志链路。
- 遇到审批或 pairing 异常时,只盯前端界面,不回头看底层服务状态。
- 把
/healthz当成“全部正常”,忽略/readyz或 channel 稳定性还没通过。 - 团队里没有统一的 Gateway 认知,最后每个人都在用不同模型排错。
OpenClaw 能做什么
OpenClaw 能做什么:先看任务,不看功能列表
OpenClaw 官方展示了整理邮箱、发送邮件、管理日历、处理航班和值守后台任务等案例。真正落地时,问题不是“它理论上能做多少”,而是哪个任务值得交给一个长期运行、拥有工具权限的 Agent。
一个适合先做的场景通常同时满足四个条件:
- 高频: 每周反复发生,节省的时间能够累计。
- 结构化: 输入、步骤和交付物大体稳定。
- 可验证: 人能快速判断结果是否正确。
- 可恢复: 失败后可以停止、重试或回滚,不造成不可逆损失。
只满足“看起来很酷”的场景,不应排在前面。
10 个场景的价值与风险排序
| 场景 | 适合交付的结果 | 初始权限 | 主要风险 | 建议顺序 |
|---|---|---|---|---|
| 1. 每日资料摘要 | 带来源的要点与待办 | 只读 | 摘要遗漏、来源失真 | 1 |
| 2. 会议准备 | 议程、背景、问题清单 | 只读 | 使用过期资料 | 2 |
| 3. 邮箱初筛 | 分类、优先级、回复草稿 | 只读 + 草稿 | 误判紧急程度、泄露邮件内容 | 3 |
| 4. 日历整理 | 冲突清单、时间建议 | 只读 + 建议 | 错改事件、忽略时区 | 4 |
| 5. 周报与复盘 | 从记录生成结构化周报 | 只读 | 把推测写成事实 | 5 |
| 6. 浏览器取数 | 指定页面的数据与证据 | 隔离浏览器 | 登录失效、页面变化、误操作 | 6 |
| 7. 消息转任务 | 待办、负责人、截止时间 | 读取指定渠道 | 把闲聊误识别为承诺 | 7 |
| 8. 固定提醒与追踪 | 到期提醒、状态汇总 | 定时任务 | 重复通知、时区错误、任务失控 | 8 |
| 9. 团队共享流程 | 统一模板、检查和审批 | 受限写入 | 权限混用、责任不清 | 9 |
| 10. 外部执行操作 | 发送、发布、修改系统 | 高权限 | 不可逆变更和凭据风险 | 10 |
排序不是能力上限,而是风险控制顺序。先让 Agent 可靠地“读、整理、给建议”,再逐渐进入“写草稿、等待确认”,最后才考虑自动执行。
第一阶段:只读任务最容易证明价值
场景 1:每日资料摘要
给 OpenClaw 一组固定来源,让它在指定时间收集更新,保留链接,区分事实、判断和待确认信息。成功标准不是字数,而是你能在三分钟内看完并决定下一步。
场景 2:会议准备
会前读取议程、上次纪要和项目资料,输出背景、未决问题和需要确认的三件事。不要让它凭记忆补齐缺失信息;没有来源的内容应明确标记为待确认。
场景 3:周报与复盘
从每日记录、提交或任务状态中整理周报,要求每条成果能回到原始证据。Agent 可以帮助压缩信息,但不应该替你虚构进度。
第二阶段:生成草稿,人来批准
邮箱和日历很高频,也最容易因为权限过大出问题。推荐采用下面的递进方式:
- 只读取指定文件夹或日历。
- 输出分类、冲突和建议,不做修改。
- 生成回复或事件变更草稿。
- 人工确认后才发送或保存。
- 记录执行结果,失败时停止,不自动扩大范围重试。
这种流程看起来比“全自动”慢一步,却更适合建立真实信任。经过一段时间,你还能从审批记录中发现哪些规则稳定、哪些仍需要人判断。
第三阶段:浏览器、渠道与定时任务
OpenClaw 可以使用独立的受控浏览器,也可以在明确选择后连接真实登录会话。优先使用隔离浏览器完成公开网页或测试账号任务;只有必须使用已有登录态时,才接入个人浏览器,并限制站点和操作范围。
定时任务由 Gateway 调度,因此需要考虑:Gateway 是否持续运行、时区是否正确、任务超时后如何停止、重复执行是否会产生副作用。不要把普通提醒写进记忆文件后期待它准时触发,固定时间任务应使用调度能力。
用任务卡定义首个试点
选择一个场景后,先写任务卡,再配置工具:
任务:每个工作日 17:30 生成项目摘要
允许读取:指定项目目录中的 Markdown 和任务导出文件
禁止读取:凭据目录、个人聊天和其他项目
交付物:5 条进展、3 个阻塞、次日 3 个优先事项
事实规则:每条进展必须附文件或任务来源
审批点:只生成草稿,不发送到群聊
失败处理:来源缺失或格式变化时停止并列出缺口
成功指标:人工修改少于 20%,阅读与整理时间减少一半
这张卡片比一句“帮我做项目助理”更容易测试,也能直接转化为 Skill、定时任务或团队 Playbook。
两周落地顺序
第 1 至 3 天:建立只读基线
- 选择一个数据范围明确的任务。
- 在测试工作区运行三次,保留原始输入和结果。
- 记录遗漏、幻觉、格式不稳定和耗时。
第 4 至 7 天:固定交付物
- 把有效提示整理成 Skill 或模板。
- 明确来源引用、异常提示和完成检查。
- 仍然不开放外部发送或删除权限。
第 8 至 14 天:加入触发与审批
- 选择一个渠道或定时触发方式。
- 把发送、修改和高风险步骤放在人工确认之后。
- 统计成功率、人工修改率和真正节省的时间。
两周后,如果任务没有稳定节省时间,先修改任务边界,不要靠增加更多工具掩盖问题。
常见失败方式
- 同时接入邮箱、日历、浏览器和多个群聊,出了问题却无法判断是哪一层。
- 用“处理一下”“帮我看看”这类开放指令代替交付物和成功标准。
- 把浏览器登录成功等同于可以自由点击、下载或提交。
- 定时任务失败后无限重试,产生重复消息或重复写入。
- 只计算 Agent 完成了多少动作,不计算核对和返工时间。