OpenClaw 是什么?它要解决什么问题?它的核心能力有哪些?
OpenClaw 是什么?它要解决什么问题?它的核心能力有哪些?
参考答案
OpenClaw 是一个开源的本地 AI Agent 运行平台。
它解决的问题恰好是 ChatGPT、豆包、Claude Code 这些产品各自没覆盖到的地方。
ChatGPT / 豆包这类对话产品,它们本质是”聊天机器人”,你问它答,但它不能真正”动手干活”。让它帮你改一个文件、跑一条命令、定时监控一个服务,它做不到,它只能输出文字。
Claude Code 这类 Agent 产品,它确实能动手干活(读写文件、跑终端命令),但它是一个一次性的终端工具。你在命令行里启动它,用完就退出了。它不能 7×24 小时常驻运行,不能对接多个聊天平台,不能定时执行任务,不能主动巡检。
OpenClaw 解决的就是这两个缺口:
既有 Agent 的执行能力(能调用工具、能操作系统),又有 Gateway 提供的基础设施能力:常驻运行、多平台接入、定时调度、主动巡检。而且模型随便换,数据全在本地。
核心能力从这个定位出发,分五块:
1)Gateway 常驻网关:这是 OpenClaw 区别于所有终端 Agent 工具的核心。7×24 小时运行的守护进程,崩溃自动拉起,支持心跳巡检(定期主动检查待办事项)和 Cron 定时调度(标准 cron 表达式的定时任务)。这让 AI 从一个”你问它才答”的被动工具,变成了一个”能主动干活”的基础设施。
2)多渠道统一接入:WhatsApp、Telegram、Discord、Slack、iMessage 等 15+ 渠道开箱即用。每个渠道有独立的适配器,消息进来后统一归一化成标准格式,Agent 不需要关心消息来自哪个平台。新增渠道只需写一个适配器插件,核心逻辑零改动。
3)模型无关的 Agent 执行引擎:内置 ReAct 风格的推理循环(LLM 思考 → 调用工具 → 拿到结果 → 继续思考),支持 Anthropic、OpenAI、Google、Ollama 等所有主流模型,切换只改配置不改代码。还支持 fallback 机制,主模型挂了自动切备用模型。
4)插件化扩展体系:工具、渠道、Hook、Provider 都可以通过插件注册,第三方开发者可以在不动核心代码的前提下扩展能力。社区技能通过 ClawHub 分发,一行命令就能安装。
5)本地优先 + 隐私安全:Gateway 跑在你自己的机器上,API Key 自己管,对话历史存本地磁盘,数据完全不经过第三方服务器。
扩展知识
定位和部署方式
OpenClaw 的定位比较特别,它不是一个云服务,也不是一个纯 SDK 或者框架。
是一个”个人 AI 助手平台”,Gateway 跑在你自己的机器(或买的云厂商的机器)上,你自己配模型的 API Key,数据完全在本地,不经过任何第三方服务器。
部署方式有多种可选:macOS 菜单栏 App 适合个人开发者日常用,点一下就启动;CLI 方式(命令行)适合服务器部署,跑在 Linux VPS 上 24 小时在线;Docker 容器方式适合自动化部署和云服务器场景。
除此之外还有 iOS 和 Android 原生客户端。
不管哪种方式,本质都是在本地起一个 Node.js 进程跑 Gateway。
多渠道统一接入的实现思路
多渠道接入的关键在于抽象层。每个渠道实现一个统一的 Channel 接口,负责把各平台的消息格式转换成 OpenClaw 内部的标准格式。WhatsApp 来的消息和 Telegram 来的消息,到了 Gateway 内部看起来长得一模一样。
多渠道消息流转:左侧 5 个渠道入口(WhatsApp、Telegram、Discord、飞书、钉钉)分别发送消息 → 汇入中间的 Channel 适配层做统一消息格式转换 → 进入右侧 Gateway 核心依次经过 Agent 路由 → Agent Runner → 工具调用 → LLM 调用。
响应沿反方向返回:Gateway 输出统一格式 → Channel 适配层转回各平台格式 → 发回对应渠道。

反过来也一样,Agent 的回复是统一格式,各渠道的 Channel 实现负责转成自家平台的格式发出去。
新增一个渠道就是写一个 Channel 适配器,不用动核心逻辑。
面试官追问
提问:你说数据完全在本地,那多设备之间的会话同步怎么解决?手机上聊了几句,回到电脑上能接着聊吗?
回答:会话数据存在 Gateway 所在的机器上,手机和电脑连的是同一个 Gateway 实例,所以天然就是同步的。手机上通过 WhatsApp 发消息,Gateway 处理完存下来,你在电脑上打开 Web 客户端看到的就是完整的对话历史。关键是所有渠道的消息都汇聚到同一个 session,不会出现手机一份、电脑一份的情况。
提问:多 Agent 路由的时候,如果一个用户在同一个渠道里想切换 Agent 怎么办?比如他一会想写代码一会想问生活问题。
回答:路由规则是预先配好的,按渠道或群组匹配,不支持用户在对话中动态切换。如果想切换,最直接的办法是用不同的群组或频道,一个群绑代码助手,另一个群绑生活助手。当然你也可以写个插件在 before_agent_start Hook 里做动态路由,比如检测用户消息里有没有特定指令来切换 Agent,但这不是开箱自带的功能。
提问:OpenClaw 支持 Ollama,那跑本地模型的时候性能怎么样?会不会因为本地模型太慢影响用户体验?
回答:性能完全取决于你本地机器的配置和跑的模型大小。Gateway 本身的开销可以忽略不计,瓶颈在模型推理。OpenClaw 做了流式输出,所以用户不用等模型完全生成完才看到内容,首字延迟和生成速度分开感知。如果本地模型实在太慢,可以配 fallback 到云端 API,本地模型超时后自动切到 OpenAI 或 Anthropic。