OpenClaw 之所以能在 2026 年引爆开源社区,不仅仅是因为它'能干活',更因为它在架构设计上解决了一个核心矛盾:大模型的非确定性(Probabilistic)与操作系统执行的确定性(Deterministic)之间的冲突。

作为架构师,我们来看看它的核心设计,以及如果由我来主导重构,我会重点动刀的地方。
一、核心架构思想:本地优先的'感知 - 决策 - 执行'闭环
OpenClaw 的架构哲学可以概括为三个关键词:Local-First(本地优先)、Sandboxed Execution(沙箱执行)、Model-Agnostic(模型无关)。
1. 核心架构图解(逻辑视图)
OpenClaw 并非一个简单的脚本包装器,它是一个分层的 Agent 运行时环境(Agent Runtime):
安全与执行层 (Security & Execution) 工具层 (Tooling & Skills) 大脑层 (Brain) 用户指令 交互层 (CLI/TUI/Web) 核心编排引擎 (Orchestrator) 规划器 (Planner) 记忆检索 (RAG/Memory) 模型路由 (Multi-Model Router) 主流大模型 (Claude/GPT/Local) 工具注册中心 文件系统操作 浏览器自动化 (Playwright/Puppeteer) 系统命令执行 第三方技能插件 沙箱隔离层 (Container/VM) 宿主操作系统 安全策略引擎 执行反馈/截图/日志

2. 关键设计思想解析
- 本地优先(Local-First):数据不出域。所有的文件读取、屏幕截图、浏览器操作都在本地完成。只有'思考'过程(Prompt 推理)会发送给云端大模型(或本地部署的 OLLama 模型)。这极大降低了隐私泄露风险,且减少了网络延迟对操作流畅度的影响。
- 确定性执行桥接(Deterministic Bridge):LLM 输出的是文本(概率性的),但操作系统需要的是精确的系统调用。OpenClaw 定义了一套严格的 中间表示语言(IR)或结构化 Schema(通常是 JSON Schema)。流程上,LLM 不直接写代码执行,而是输出符合 Schema 的'行动计划'。OpenClaw 的引擎解析这个计划,将其转换为确定的函数调用(Function Calling)。如果 LLM 输出的格式不对,引擎会拒绝执行并要求重试。
- 多模型容灾路由(Model Agnostic Router):不绑定单一模型。架构中内置了路由层,支持 Anthropic Claude、OpenAI GPT、Google Gemini 甚至本地模型的热切换。当某个模型 API 挂了,或者某个任务适合用便宜的小模型做规划、大模型做复杂推理时,系统能自动调度,保证服务高可用(HA)。
二、源代码核心模块解析(基于 TypeScript/Node.js 生态)
根据开源社区的代码结构分析,OpenClaw 的核心源码主要围绕以下几个关键模块构建:
1. core/orchestrator.ts (总指挥)
这是系统的入口和状态机管理器。
- 职责:维护 Agent 的当前状态(Idle, Thinking, Acting, Error)。它负责循环执行
Perceive -> Think -> Act的主循环。 - 关键逻辑:实现了 模式的引擎。它不断将历史对话、当前观察(Observation)打包发送给 LLM,解析返回的 Action,执行后获取 Observation,再喂回给 LLM,直到任务完成。


