OpenHarness:开源 Agent Harness + 内置个人 Agent "Ohmo" — 深度研究报告
来源: https://github.com/HKUDS/OpenHarness
发布日期: 2026-04-01(v0.1.0,当前 v0.1.7)
研究日期: 2026-04-26
辅助来源: knightli.com, SHOWCASE.md, GitHub API
Stars: 11,229 | Forks: 1,899 | License: MIT
一句话版本
OpenHarness 是一个开源的 Agent "基础设施层"——就像一个给 AI 装上手、眼睛、记忆和安全规则的引擎。它自带的个人 Agent 叫 Ohmo,可以在飞书/Slack/Telegram/Discord 里帮你 Fork 代码、写 PR、跑测试,而且直接用你已有的 Claude Code 或 Codex 订阅,不需要额外花钱买 API Key。
核心内容
1. 项目定位:两层架构
OpenHarness 不是一个聊天应用,它拆成了两层:
| 层 | 是什么 | 类比 |
|---|---|---|
| **OpenHarness** | 开源 Agent 基础设施(工具、技能、记忆、权限、多 Agent 协调) | 操作系统内核 |
| **ohmo** | 基于 OpenHarness 构建的个人 AI 助手应用 | 操作系统上跑的 App |
这跟 Anthropic Managed Agents 的"解耦大脑与双手"哲学是同一个方向——Harness 是 Hands,模型是 Brain。
2. 五大核心能力
🔄 Agent Loop(代理循环)
- 流式工具调用循环:Agent 不是一轮对话,而是一个持续观察→推理→调用工具→读取结果→继续迭代的循环
- API 重试(指数退避)
- 并行工具执行
- Token 计数和成本实时追踪
🔧 Harness Toolkit(工具集)
- 43+ 内置工具:文件操作、Shell 执行、搜索、Web 访问、MCP 协议
- 按需加载 Markdown 技能文件(兼容 anthropics/skills 生态)
- 插件系统:Skills + Hooks + Agents 可组合
- 支持非交互模式(
oh -p "..." --output-format json)
🧠 Context & Memory(上下文与记忆)
- CLAUDE.md / MEMORY.md 自动发现和注入
- 自动上下文压缩(Auto-Compaction):上下文满了自动压缩,不需要手动 compact
- Session 恢复和历史延续——Agent 可以在多天会话中持续工作
- 项目约定的持久记忆
🛡️ Governance(安全治理)
- 多级权限模式
- 路径级和命令级规则
- PreToolUse / PostToolUse 钩子
- 交互式审批对话框
- 敏感路径保护(built-in sensitive-path protection)
- web_fetch URL 验证(防 SSRF)
🤝 Swarm Coordination(多 Agent 协作)
- 子 Agent 派生与委派
- 团队注册与任务管理
- 后台任务生命周期管理
- 路线图上有 ClawTeam 深度集成
3. ohmo:个人 AI Agent
ohmo 是 OpenHarness 的"旗舰应用"——一个能在聊天软件里帮你干活的个人 Agent:
- 渠道:飞书 / Slack / Telegram / Discord
- 能力:Fork 分支 → 写代码 → 运行测试 → 开 PR(全自动化)
- 零额外成本:直接复用你已有的 Claude Code 或 Codex 订阅
- 频道命令:支持斜杠命令和多模态附件
4. 提供商兼容性
OpenHarness 的一个核心设计是 provider-agnostic:
| 工作流 | 支持的模型/后端 |
|---|---|
| Anthropic-Compatible | Claude 官方、Moonshot/Kimi、GLM、MiniMax、内部兼容网关 |
| Claude Subscription | 本地 `~/.claude/.credentials.json` 桥接 |
| OpenAI-Compatible | OpenAI 官方、OpenRouter、DashScope、DeepSeek、SiliconFlow、Groq、Ollama、GitHub Models |
| Codex Subscription | 本地 Codex 订阅桥接 |
| GitHub Copilot | Copilot 集成 |
提供商的抽象方式不是"API label",而是 workflow + profile 组合——所以同一个 Anthropic-compatible 端点可以保存不同的 profile 和 key。
5. 版本迭代速度(观察关键指标)
| 日期 | 版本 | 关键更新 |
|---|---|---|
| 04-01 | v0.1.0 | 🎨 初始开源,完整 Harness 架构 |
| 04-06 | v0.1.2 | ohmo 个人 Agent + 统一设置向导 |
| 04-08 | v0.1.4 | 多提供商认证 + Moonshot/Kimi 原生支持 |
| 04-08 | v0.1.5 | MCP HTTP 传输 + Swarm 轮询 + 多模态附件 |
| 04-10 | v0.1.6 | Auto-Compaction + Markdown TUI + 子进程 headless worker |
| 04-18 | v0.1.7 | 打包优化、PATH 管理、TUI 交互改进 |
| 未发布 | 🔍 | `--dry-run` 安全预览模式 |
分析:25 天 7 个版本,平均 3.6 天一个 release。迭代速度极快,且每个版本都有实质功能增量——不是修 bug 式的微调。这团队执行力很强。
6. 技术架构亮点
Auto-Compaction 机制
OpenHarness 的上下文压缩不是简单的截断,而是"保留任务状态和频道日志跨压缩周期"——这意味着 Agent 可以在多天的会话中持续工作,不需要用户手动 compact 或 clear。
Reactive TUI
基于 React/Ink 构建的终端 UI,支持:
- 命令选择器
- 权限确认
- 模型/提供商热切换
- 会话恢复
- Markdown 渲染
多种输出格式
text:标准输出json:结构化 JSON(适合脚本)stream-json:实时流式 JSON 事件(适合 CI/自动化)
Dry-Run 安全检查
在不调用模型、不执行工具、不连接 MCP 服务器的情况下,解析所有配置,返回 ready / warning / blocked 状态和具体修复建议。
与 Anthropic Managed Agents 的对比
| 维度 | Managed Agents | OpenHarness |
|---|---|---|
| 运行方式 | 托管云服务 | 本地/自托管 |
| Session 持久化 | 内置 getEvents() API | Auto-Compaction + Session Resume |
| Sandbox 隔离 | 云端 Docker Sandbox | 无内置 sandbox(本地执行) |
| 安全模型 | Token 不进 Sandbox(vault proxy) | 本地权限控制(路径规则 + 多级模式) |
| 多 Agent | 多 Brain 多 Hand 架构 | Swarm 子 Agent 派生 + 团队注册 |
| 成本 | 按 token 付费 | 零额外成本(复用已有订阅) |
| 生态锁定 | Anthropic 生态 | 多提供商(Claude/OpenAI/Copilot/Codex/Kimi/GLM) |
| 成熟度 | 生产级(GA) | 早期(v0.1.7,开源 25 天) |
关键差异:OpenHarness 的"零额外成本"(复用已有订阅)和"多提供商兼容"是两个 Managed Agents 做不到的点。但 OpenHarness 缺少 Managed Agents 的云端 sandbox 安全隔离,更依赖本地权限控制。
与 OpenClaw 的关联
OpenHarness 的架构与 OpenClaw 有显著重叠:
- 都是 Agent Harness 架构
- 都支持多提供商
- 都有 MCP 协议支持
- 都有 skills/plugins 生态
- 都支持子 Agent 派生
差异化:
- OpenHarness 更偏"研究者和构建者"的轻量工具
- OpenClaw 更偏"生产级多通道 Agent 网关"(QQ/飞书/Discord/Telegram/Slack 全覆盖)
- OpenHarness 的 ohmo 是面向个人用户的应用层;OpenClaw 是面向部署的基础设施层
- OpenHarness 支持 Claude Code/Codex 订阅桥接(复用已有订阅),OpenClaw 需要 API key
OpenHarness README 明确提到兼容 OpenClaw CLI agent 集成——两者更像是上下游而非竞品。
对 Jay 的启发
1. Auto-Compaction 值得关注:OpenHarness 的上下文压缩保留了"任务状态和频道日志",这是 Managed Agents 报告里提到的"harness 假设会过时"的具体反例——压缩策略本身需要随模型能力演进。
2. 多提供商 profile 设计:用 workflow + profile 组合来抽象提供商,而不是简单的 API key 列表。这个设计思路可以用在我们的工具链里。
3. Dry-run 安全预览:oh --dry-run 在不动模型、不动工具、不动 MCP 的情况下给出 readiness 评估——这是一个很好的安全检查模式,可以借鉴。
4. 订阅桥接模式:ohmo 直接复用 Claude Code/Codex 订阅而不需要额外 API key。这让个人 Agent 的部署成本降到零。如果我们也支持这种"桥接"模式,能降低新用户的接入门槛。
5. 迭代速度观察:25 天 7 个 release,团队执行力极强。值得持续跟踪。
开源生态定位
在之前 Managed Agents 报告的开源替代品对比中,OpenHarness 排在"最接近完整概念"的第一位。经过这次深入研究,确认:
- ✅ Harness 理念匹配:直接受 Anthropic 工程博客影响
- ✅ Session 持久化:Auto-Compaction + Session Resume,比大部分开源框架强
- ❌ Sandbox 安全隔离:本地执行,没有云端 sandbox
- ⚠️ 成熟度:25 天,生态和生产案例都还很薄
一句话:OpenHarness 是目前最认真在做"Agent Harness"概念的开源项目,但它还在 0.1 版本,跟 Managed Agents 的生产级托管不可比。适合研究、实验、个人使用,不适合企业生产。
评分
| 维度 | 评分 | 说明 |
|---|---|---|
| 技术创新 | ⭐⭐⭐⭐☆ (8/10) | Auto-Compaction、Dry-run、订阅桥接都是创新点 |
| 工程完整性 | ⭐⭐⭐⭐☆ (8/10) | 43+ 工具、TUI、权限系统、多提供商,覆盖完整 |
| 开发生态 | ⭐⭐☆☆☆ (4/10) | 25 天历史,文档薄,社区小 |
| 生产就绪度 | ⭐⭐☆☆☆ (3/10) | v0.1 阶段,无企业案例,无 sandbox 隔离 |
| 与 Managed Agents 的相似度 | ⭐⭐⭐⭐☆ (7/10) | 架构理念最接近,但实现深度差距大 |
| 对 Jay 的参考价值 | ⭐⭐⭐⭐☆ (8/10) | Auto-Compaction 设计、订阅桥接、Dry-run 都值得借鉴 |
综合评分:6.3/10
原始链接: https://temp.jaylab.io/openharness-report.html