OpenHarness 是什麼:這個開源 Agent Harness 能做什麼

根據 HKUDS/OpenHarness 官方倉庫與 README,整理 OpenHarness 的定位、核心功能、ohmo 個人助手能力,以及它適合哪些使用場景。

如果你最近在關注開源 AI Agent 工具,HKUDS/OpenHarness 是一個很值得留意的新專案。它不是單純再做一個「會聊天的外殼」,而是把一套可運行、可擴展、可治理的 Agent 基礎設施單獨抽出來,做成一個開源的 Agent Harness

按照官方 README 的說法,OpenHarness 主要提供的是一整套輕量級 Agent 基礎能力,包括工具調用、技能載入、記憶機制、權限治理以及多 Agent 協調;而它附帶的 ohmo,則是建立在這套基礎設施之上的個人 AI 助手應用。

01 OpenHarness 是什麼

可以把 OpenHarness 理解成「給大模型裝上手腳、記憶與邊界」的運行層。

大模型本身擅長推理與生成,但如果你想讓它真正成為一個可以長期工作的 Agent,通常還需要這些外圍能力:

  • 調用工具,而不只是輸出文字
  • 讀寫檔案、執行命令、使用搜尋與網頁能力
  • 在長會話中保留上下文與記憶
  • 對危險操作做權限控制
  • 把大型任務拆給多個子 Agent 並行處理

OpenHarness 的目標,就是把這部分「圍繞模型的工程層」做成一個清晰、開源、可檢查的 Python 實作。它更像是一個 Agent 運行底座,而不是單獨強調某一種模型或某一個聊天介面。

02 這個專案的基本功能

從目前 GitHub 首頁與 README 來看,OpenHarness 的核心能力主要集中在下面幾塊。

1. Agent Loop

這是 Agent 能持續工作的核心執行循環。官方列出的重點包括:

  • 串流式工具調用循環
  • API 重試與指數退避
  • 並行工具執行
  • Token 統計與成本追蹤

這部分的意義在於,Agent 不只是「一問一答」,而是可以在一次任務裡持續觀察、思考、調用工具、讀取結果,再進入下一步。

2. 工具、Skills 與外掛體系

OpenHarness 把工具層做得相當完整。專案首頁提到它已經內建檔案、Shell、搜尋、網頁、MCP 等多類工具,並支援按需載入 Markdown 技能檔案。

它的價值不只是「工具很多」,更重要的是組合方式比較開放:

  • 可以直接使用內建工具
  • 可以依任務載入 skills
  • 可以透過外掛擴展 hooks、skills 與 agents
  • 相容 anthropics/skills 與相關外掛生態

如果你希望把某些固定流程沉澱成可重用能力,而不是每次都靠 prompt 臨時描述,這一層會很有用。

3. 上下文與記憶

這部分是 OpenHarness 很重要的差異點。官方給出的關鍵詞包括:

  • CLAUDE.md 發現與注入
  • 自動上下文壓縮
  • MEMORY.md 持久記憶
  • 會話恢復與歷史延續

這代表它不只是處理當前這一輪輸入,而是會盡量把「專案約定」「歷史任務」「長期偏好」保留下來,讓 Agent 更適合持續工作,而不是每次都從零開始。

4. 權限治理與安全邊界

Agent 真正進入檔案系統、終端與網路之後,治理就變得非常重要。OpenHarness 在這部分提供了:

  • 多級權限模式
  • 基於路徑與命令的規則控制
  • PreToolUse / PostToolUse hooks
  • 互動式審批彈窗

簡單來說,它不只是讓 Agent「能做事」,也考慮了「哪些事可以直接做,哪些事必須先經過確認」。

5. 多 Agent 協調

OpenHarness 也支援把任務拆給子 Agent 處理。目前公開資料裡提到的能力包括:

  • 子 Agent 建立與委派
  • 團隊註冊與任務管理
  • 背景任務生命週期管理

對複雜任務來說,這代表它可以不只靠一個 Agent 串行推進,而是嘗試進行並行協作。

6. 多 Provider 工作流

OpenHarness 目前並不把 provider 只當成底層 API 名稱,而是抽象成 workflow + profile。根據 README,目前支援的方向包括:

  • Claude / Anthropic-compatible
  • OpenAI-compatible
  • Codex Subscription
  • GitHub Copilot
  • Moonshot(Kimi)、GLM、MiniMax 等相容後端

這讓它更像一個「多模型、多入口」的 Agent 運行框架,而不是綁定某一家服務商。

7. React TUI 與非互動模式

OpenHarness 內建終端互動介面,執行 oh 後可以進入 React/Ink TUI。官方 README 提到它支援:

  • 命令選擇器
  • 權限確認
  • 模型切換
  • Provider 切換
  • 會話恢復

如果你不想進入互動介面,也可以用非互動模式直接執行單次任務,例如把結果輸出到標準輸出、JSON 或串流 JSON,適合腳本化與自動化場景。

03 ohmo 是什麼

如果說 OpenHarness 是底層基礎設施,ohmo 就是建立在這套基礎設施之上的「個人 Agent 應用」。

專案首頁對 ohmo 的定位很明確:它不是一般聊天機器人,而是一個可以在長會話中持續工作的個人助手。官方描述裡提到,它可以在 Feishu、Slack、Telegram、Discord 等渠道與你互動,並執行像是:

  • fork 分支
  • 寫程式碼
  • 跑測試
  • 發起 PR

另外,README 還特別強調:ohmo 可以運行在你現有的 Claude Code 或 Codex 訂閱之上,不一定要求額外申請新的 API key。對已經在使用這些訂閱工具的人來說,這一點門檻比較低。

04 它適合什麼場景

從這個專案目前公開出來的能力來看,OpenHarness 比較適合下面幾類人:

  • 想研究生產級 Agent 到底由哪些基礎模組構成
  • 想自己搭建一個可擴展的開源 Agent 運行層
  • 想把工具、技能、記憶、權限、多 Agent 協調放進同一個框架裡
  • 不希望被單一模型廠商或單一客戶端形態綁定
  • 想基於現成架構繼續做垂直領域 Agent 或個人助手

如果你的目標只是「找一個能直接聊天的成品助手」,那 OpenHarness 本體可能不是最輕量的選擇;但如果你更關心 Agent 基礎設施、工程可控性與後續擴展,這個專案就很值得研究。

05 快速理解它的定位

一句話總結:

OpenHarness 負責把大模型變成真正可執行任務的 Agent,ohmo 負責把這套能力包裝成一個可以長期陪你工作的個人助手。

也可以把它拆成兩層來看:

  • OpenHarness:開源 Agent Harness,本質是基礎設施
  • ohmo:基於這套基礎設施構建的 personal-agent app

截至 2026 年 4 月 12 日,專案 GitHub 首頁顯示它的更新已經推進到 v0.1.6(2026 年 4 月 10 日),重點持續放在自動上下文壓縮、MCP 傳輸能力、React TUI 與多 Agent 運行穩定性上。這表示它目前仍處於快速演進階段,但方向已經非常清晰。

參考連結

  • GitHub 專案首頁:https://github.com/HKUDS/OpenHarness
  • 英文 README:https://github.com/HKUDS/OpenHarness/blob/main/README.md
  • 中文 README:https://github.com/HKUDS/OpenHarness/blob/main/README.zh-CN.md
记录并分享
使用 Hugo 建立
主題 StackJimmy 設計