11k 行 Python 拆解 Claude Code!港大 HKUDS 开源 OpenHarness,开发者终于能看懂的 Agent Harness

当你盯着 Claude Code 那 50 万行 TS 代码、想搞清楚「Agent Loop 到底跑了几轮」「权限拦截在哪一行」的时候,大概率会被劝退——这玩意儿就不是给你拆着看的。但港大数据智能实验室 HKUDS 开源的 OpenHarness 把这事办了:163 个 Python 文件、约 11,700 行代码,实现 Claude Code 约 98% 的工具覆盖(43 vs 44)和 61% 的命令覆盖(54 vs 88),代码体积却轻了 44 倍。

它不是「又一个 ChatGPT 客户端」

OpenHarness(命令行入口 OH)的关键词是 Agent Harness——给 LLM 装上手、眼睛、记忆和安全边界的那层基础设施。它把 Claude Code、Codex、Cursor 这些工具背后真正干活的工程层剥出来,让你能读懂、能改造、能在 11k 行 Python 里跑通一条完整的 Agent 主循环。

更狠的是,它内置了一个叫 ohmo 的个人 Agent,跑在你已有的 Claude Code / Codex 订阅上(不需要额外 API Key),可以直接在飞书、Slack、Telegram、Discord 里跟它聊,它会自动 fork 分支、写代码、跑测试、提 PR。

架构核心:10 个子系统,模块化到极致

  • engine/:Agent Loop 核心——流式输出 → 工具调用 → 回环,配上指数退避重试和并行工具执行;
  • tools/:43 个开箱即用工具,覆盖文件读写、Shell 执行、网页搜索、Web 抓取、MCP 调用;
  • skills/:按需加载 .md 知识文件,兼容 anthropics/skills
  • plugins/:Claude Code 风格的插件系统,支持 commands / hooks / agents;
  • permissions/:多级权限模式 + 路径级规则 + 命令黑名单;
  • hooks/:PreToolUse / PostToolUse 生命周期钩子;
  • commands/:54 条斜杠命令(/help、/plan、/resume、/commit…);
  • mcp/:Model Context Protocol 客户端,支持 HTTP 传输;
  • memory/:CLAUDE.md 自动发现 + MEMORY.md 持久记忆 + Auto-Compaction;
  • coordinator/:子 Agent 派生 + 团队注册表 + 后台任务调度。

对比 Claude Code 的真实工程取舍

为了跑赢「研究友好」,OpenHarness 主动砍掉了企业级包袱:telemetry 上报、OAuth 复杂度、几百个 React 组件。代价是 UI 相对朴素、登录流程更直白。收益是你能在几小时内把整条 Agent Loop 跟下来,并在它之上做实验——这是商业版根本不可能给你的可读性。

另外它原生支持 Moonshot/Kimi、OpenAI、Copilot、GLM、NVIDIA NIM 等所有 Anthropic 兼容后端,不绑死单家供应商。这意味着你在国内直接用 Kimi K2.5 也能跑完整套 Agent Loop,不用掏美元信用卡。

快速上手

一行命令装好:

curl -fsSL https://raw.githubusercontent.com/HKUDS/OpenHarness/main/scripts/install.sh | bash

交互式选好认证,立刻用:

oh setup
oh

想看一个 11k 行 Python 究竟怎么把 Claude Code 拆成可读模块,或者想自己 fork 一份改 Agent Loop 行为、嫁接自定义 Skills / Tools 体系,OpenHarness 是目前公开代码里最干净的那把手术刀

仓库地址:https://github.com/HKUDS/OpenHarness(⭐ 15.5k+)


GitHub: https://github.com/HKUDS/OpenHarness

评论区

0 条评论

登录后可评论。

江望 14 阅读