🦞
03

OpenClaw的原理

深入理解 OpenClaw 的工作原理

系统架构概览

OpenClaw 是一个长运行时系统,采用本地优先、自托管的架构设计。

核心组件包括:

  • Gateway控制平面
  • Agent Runtime执行平面
  • Channel Adapters渠道适配器
  • Workspace工作空间系统

核心设计哲学:Bash is All You Need

来自 Anthropic 工程师 Thariq Shihipar 在《Claude Code SDK Workshop》中提出的革命性观点:与其为 Agent 定义成千上万个定制化 API,不如直接赋予它 Unix 时代的两项原始能力。

Bash(终极胶水)
  • 组合性:通过管道连接百万级成熟软件
  • 发现性:像人类一样探索环境
文件系统(长期记忆)
  • 上下文工程:超长任务管理方案
  • 状态持久化:渐进式披露,处理巨型项目

"给予 Agent 一个电脑终端,它就拥有了像人类一样解决数字世界问题的通用能力。" Thariq Shihipar

范式转移:从工具调用到操作系统级自主

维度传统工具调用Bash & 文件系统范式
灵活性开发者必须预先定义好每个函数Agent 随用随写脚本,组合现有工具
安全性依赖 API 权限管理沙盒 + 权限 + 审计(瑞士奶酪防御)
效率单次交互完成简单任务Agent Loop 完成长程任务

系统架构图

OpenClaw System Architecture

Agent 执行循环

Agent 实现连续的状态化执行循环:解析会话 → 组装上下文 → 调用模型 → 执行工具 → 持久化状态 → 循环继续。 这种设计让 Agent 能够持续学习和记忆。

伪代码示例

while (true) {
  const response = await llm.think(context)
  const tool = response.chooseTool()

  if (tool) {
    const result = await tool.execute()
    context.append(result)
  }

  if (response.isDone()) break
}

简化流程图

Agent Loop Simple Diagram

完整执行流程

Agent Loop Complete Diagram

拓展资料

深入了解 Claude Code 的工作原理与最佳实践

Learn Claude Code