Agent Infrastructure:OpenHands 与 OpenManus 深度解读

RL Paper Reading入库于 2026/6/9|

Agent Infrastructure 论文笔记:OpenHands 与 OpenManus

阅读难度:★★☆☆☆ | 预计阅读时间:12 分钟

来源:OpenHands (arXiv 2407.16741) | OpenManus(开源框架,2025)


总体背景:为什么 Agent Infrastructure 是关键壁垒?

阶段2学习计划中的判断:"Agent 时代最大的壁垒不是模型,而是 Runtime"

原因:

  • 模型能力强了,但如何让 Agent 安全、可靠地与真实世界交互?
  • 如何在沙箱中执行代码、浏览网页、管理文件?
  • 如何让多个 Agent 协作而不互相冲突?
  • 如何评估 Agent 的能力是否真正提升?

这些问题不是模型层面能解决的,需要专门的 Infrastructure。


OpenHands(原 OpenDevin):SWE-Agent 的开源 Runtime 平台

"An Open Platform for AI Software Developers as Generalist Agents"

一句话总结

OpenHands 本质上是在解决 AI Agent 没有安全、标准化的"工作环境" 的问题——提供一个 Docker 沙箱 + 事件流架构,让 Agent 能像真实开发者一样工作:写代码、执行命令、浏览网页。

核心架构:四层设计

┌─────────────────────────────────────────────┐
│                用户界面 / API                  │
└───────────────────┬─────────────────────────┘
                    │ 事件
┌───────────────────▼─────────────────────────┐
│              Agent(大脑)                    │
│  step(state) → action                       │
│  支持 CodeActAgent / BrowsingAgent 等多种实现  │
└───────────────────┬─────────────────────────┘
                    │ Action → Observation
┌───────────────────▼─────────────────────────┐
│          Agent Runtime(执行层)              │
│  Docker 沙箱 + 三种执行能力:                  │
│  - Bash Shell(命令执行)                     │
│  - Jupyter IPython(Python 代码执行)         │
│  - Chromium Browser(网页交互)               │
└───────────────────┬─────────────────────────┘
                    │ AgentSkills
┌───────────────────▼─────────────────────────┐
│          AgentSkills 工具库                   │
│  文件编辑、PDF解析、图片理解等标准化工具            │
└─────────────────────────────────────────────┘

关键设计:事件流(Event Stream)

OpenHands 的核心通信机制:所有交互(用户指令、Agent 动作、环境观测、错误信息)都作为事件追加到一条时序流中。

好处:

  • Agent 的完整决策轨迹可追溯
  • 多 Agent 协作时,任何 Agent 都能访问完整历史
  • 与 RL 训练天然兼容——事件流就是 Trajectory

State = Event Stream + 辅助信息(成本统计、多 Agent 元数据等)

关键设计:CodeAct 行动空间

与传统 JSON Function Calling 不同,OpenHands 让 Agent 用代码表达行动:

# Agent 生成的行动示例(不是 JSON,是可执行 Python/Bash)
execute_bash("git clone https://github.com/...")
edit_file("src/utils.py", start_line=42, end_line=50, content="new code")
browser_navigate("https://docs.python.org")

为什么代码比 JSON 函数调用更好?

  • 任何工具都能用代码调用,不需要为每个工具写 schema
  • Agent 可以自己写新工具(Python 函数)并立即使用
  • 组合逻辑(循环、条件)自然表达,不需要特殊设计

关键设计:Docker 沙箱安全隔离

每个任务会话启动独立的 Docker 容器:

  • Agent 的代码在沙箱里执行,不影响宿主系统
  • 支持任意 Docker 镜像,可按需配置环境
  • 任务完成后容器销毁,无残留

多 Agent 委托(Agent Delegation)

CodeActAgent(通用)
    ↓ AgentDelegateAction
BrowsingAgent(网页专家)
    ↓ AgentDelegateAction
FileEditAgent(代码编辑专家)

主 Agent 可以把子任务委托给专业子 Agent,形成 Hierarchy。这正是 Claude Code、OpenAI Deep Research 中 Parallel Subagent 的基础设施原型。

评估数据

  • SWE-Bench Verified:72% 解决率(使用 Claude Sonnet 4.5 + Extended Thinking)
  • GAIA (val set):有竞争力的表现
  • 15 个基准测试,涵盖软件工程 + 网页浏览 + 通用任务

GitHub 数据:32K Star,188+ 贡献者


OpenManus:Manus 的开源实现

:OpenManus 没有正式学术论文,是 MetaGPT 团队开源的 Manus 替代实现,2025 年 3 月发布

背景:Manus 的出现

2025 年初,Manus(由 Monica.im 团队开发)演示了完全自主的 Agent 能力:

  • 给定一个任务目标,自主规划、搜索、写代码、执行
  • 不需要用户每步确认
  • 真正的"端到端自动化"

引发了 AGI 时代到来的广泛讨论。

OpenManus 的设计思路

OpenManus 是 Manus 的开源复现,基于 MetaGPT 生态,核心设计:

工具箱(Toolbox)

  • 浏览器操控(类似 OpenHands 的 BrowserInteractiveAction)
  • 代码执行(Python/Bash 沙箱)
  • 文件操作
  • 网络搜索

规划层(Planner)

  • ReAct 风格的 Think → Act → Observe 循环
  • 支持长周期多步骤任务

与 OpenHands 的区别

维度OpenHandsOpenManus
定位SWE 专项(软件工程)通用 Agent(任何任务)
沙箱Docker 强隔离相对轻量级
多 AgentAgentDelegation基于 MetaGPT 的 Multi-Agent
社区学术+工业 2.1K 贡献者MetaGPT 生态
评估15 个标准 Benchmark通用任务演示

Agent Infrastructure 的核心价值总结

模型(Claude / GPT-4 / Qwen)
    ↓ 能力输入
Agent Infrastructure(OpenHands / OpenManus / OpenClaw)
    ↓ 提供
安全执行环境 + 标准化行动空间 + 评估框架
    ↓ 支撑
实际 Agent 产品(Claude Code / Manus / Deep Research)

三大关键组件:

  1. 沙箱(Sandbox):安全隔离,防止 Agent 误操作宿主系统
  2. 行动空间(Action Space):标准化 Agent 能做什么(代码执行 > JSON 函数调用)
  3. 评估框架(Evaluation):衡量 Agent 能力进步(SWE-Bench / GAIA / WebArena)

对 RL / RLE 的意义

OpenHands 的架构本质上就是一个 RL Environment

  • State:Event Stream(所有历史行动和观测)
  • Action:CodeAct(代码/命令/浏览器操作)
  • Reward:任务是否完成(由 SWE-Bench 等 Benchmark 评估)
  • Environment:Docker 沙箱

这使得 OpenHands 可以直接用于 RL 训练:让模型在真实软件工程任务上执行、获得反馈、迭代优化。这正是 SWE-Agent RL 训练的标准设施。