如何構建生產級Agent Harness:不止選框架,更需模塊化“Worker”架構
整理版優先睇
Agents嘅Harness唔係一個框架,而係一組可插拔Worker。模塊化設計比框架綁定更適合企業長期落地。
呢篇文章係基於Mike Piccolo(iii.dev創始人)一篇深度文章《How to Build Your Own Agent Harness》嘅整理。作者想解決嘅問題係:點解好多團隊最終要由頭搭建自己嘅Agent Harness?整體結論係,Harness唔係單一框架,而係由10-15個獨立職責組成嘅組合,最適合嘅方法係構建成一組可安裝、可版本化、可替換嘅Worker,透過統一引擎連接。
文章指出,團隊經常直接採用LangChain、LangGraph呢啲框架,一旦某個部分唔匹配就要分支、繞路或重寫,最終好多都要自建。所以Harness必須承擔15項核心職責,包括接受Turn請求、策略檢查、人工審批、預算控制、事件流推送等。呢啲職責喺企業級場景缺一不可。
Mike Piccolo提倡嘅模塊化Worker架構,每個Worker獨立運行、獨立版本,透過總線註冊函數同觸發器。咁樣想換策略引擎或加新模型provider都好簡單。框架同模塊化唔係二選一,而係可以透過滑塊調整,少裝幾個Worker就係輕量版,全裝就係企業級厚版。文章最後俾出實用建議,包括先評估需求、從小處實踐、重視FSM,同埋避免過度追求全自動。
- Harness承擔15項核心職責,包括策略檢查、人工審批、預算控制、Trace等,缺一不可。
- 建議將Harness構建成一組可插拔Worker,透過統一引擎連接,更靈活易於治理。
- 框架上手快適合MVP,但規模化後定製成本高;模塊化Worker可獨立升級、語言無關。
- 企業落地需優先解決觀測性(統一Trace)同治理(審批、預算),呢啲係生產環境嘅「保險絲」。
- 避免過度追求全自動,Human-in-the-Loop喺高風險場景至關重要;上下文壓縮同Prompt組裝直接影響Token消耗。
How to Build Your Own Agent Harness
Mike Piccolo 原文,詳細拆解生產級 Agent Harness 嘅職責同 Worker 架構,仲有執行流程圖同替換示例。
問題所在:Harness唔係單一框架
近年AI Agent逐漸從概念走向落地,企業關心點樣令Agent喺生產環境穩定、高效、安全運行。Mike Piccolo分享嘅文章系統拆解咗生產級Agent Harness嘅本質。佢指出:大多數團隊唔係構建Harness,而係直接「採用」一個框架,將循環、工具、記憶、編排全部打包成一個決策。
Agent = 模型 + Harness
LLM似聰明大腦,但要佢真正「做事」就需要可靠「身體」——Harness。Harness負責工具調用、狀態管理、策略控制、預算追蹤等基礎設施。一旦某個部分(例如策略引擎或審批流程)唔匹配,就要分支、繞路或重寫,最終好多團隊都要由頭搭建。
生產級Harness嘅15項核心職責
文章詳細列出咗生產環境中Agent Harness需要處理嘅典型職責。呢啲職責缺一不可,尤其係企業級場景中,策略、審批、預算同Trace係避免「翻車」嘅關鍵。
- 1 接受並持久化 Turn(單次交互)請求
- 2 解析模型提供商憑證
- 3 查詢模型能力(視覺、工具、上下文窗口等)
- 4 驅動 per-Turn 狀態機(provision、stream、工具執行、steering、tear down)
- 5 加載並提供 Skill(工具描述)
- 6 組裝 System Prompt(模式、身份、默認技能等)
- 7 將 Token 流式返回客戶端
- 8 每個工具調用前嘅策略檢查
策略檢查、人工審批、預算控制同Trace係生產環境嘅「保險絲」
推薦方法:模塊化Worker架構
Mike Piccolo嘅核心建議係唔好將Harness當成單一框架,而係構建成一組可安裝、可版本化、可替換嘅Worker,透過統一引擎同簡單原語(例如 iii.trigger())連接。喺iii系統示例中,默認棧包含約11個Worker,每一個獨立運行、獨立版本,透過總線註冊函數同觸發器。
可安裝、可版本化、可替換嘅Worker
單次Turn嘅執行鏈路簡化版:客戶端觸發 → 持久化 + 狀態機啟動 → Provisioning(沙箱、Skill下載、Prompt組裝)→ 模型Streaming → 工具調用 → 策略檢查 → (必要時)人工審批 → 執行 + Hook → Steering(決定繼續或結束)+ 上下文壓縮 + Trace記錄 → 事件流推送到UI。
薄 vs 厚Harness:透過滑塊調整,少裝幾個Worker就係輕量版(適合實驗),全裝加自定義就係企業級厚版(帶嚴格治理)。
框架 vs 模塊化:點樣揀?
理性看待框架:優勢係上手快、社區成熟,適合MVP或小團隊快速驗證。但風險係規模化後定製成本高、Trace唔完整、治理能力弱,一年後往往面對「要麼忍受,要麼重寫」嘅困境。
規模化後,定製成本高、Trace唔完整、治理能力弱
模塊化Worker嘅優勢:靈活性(語言無關、獨立升級、易於集成現有企業系統)、可觀測性(統一Trace貫穿所有步驟)、安全性與合規(Fail-closed默認拒絕、審批路由、預算控制易實現)、成本控制(按需組裝,避免過度工程)。當然,搭建Worker體系需要一定架構投入,如果Agent只係內部簡單自動化,成熟框架加少量擴展可能夠用。
實用建議與避坑指南
- 1 先評估需求:列出Agent需要嘅職責,尤其策略、預算、審批、Trace。如果已有框架滿足80%,先優化;否則考慮模塊化路徑。
- 2 強烈推薦直接讀Mike Piccolo原文,裏面有詳細Worker列表、Turn執行流程圖同替換示例。
- 3 從小處實踐:嘗試開源iii Harness bundle,Clone後本地運行,體驗Worker插拔靈活性;從核心(Turn Orchestrator + Provider + Policy)開始搭建,逐步添加。
- 4 企業落地Tips:把Harness當成系統一部分,而非孤立層;優先解決觀測性同治理;確保多語言支援同版本化;持續監控成本同性能。
- 5 避免常見坑:唔好過度追求全自動,Human-in-the-Loop喺高風險場景至關重要;上下文壓縮同Prompt組裝直接影響Token消耗同效果。
成本預算Worker唔係錦上添花,而係必需模塊
最後,Harness係基礎設施,更係長期競爭力。Agent嘅價值最終取決於能否喺真實業務中穩定交付成果。選框架係起點,但構建可組合、可演化嘅Harness先係通往生產級嘅必經之路。
近排,AI Agent(智能體)開始由概念變到真係落地,企業越嚟越關心點樣可以令到Agent喺生產環境入面穩定、高效、安全咁運行。日前Mike Piccolo(iii.dev創辦人)分享咗一篇深度文章,《How to Build Your Own Agent Harness》,引嚟唔少討論。
呢篇文章唔係淨係sell某個框架,而係系統咁拆解咗生產級Agent Harness(智能體框架)嘅本質。今日,我哋就夾埋原文嘅內容,分享一啲核心觀點同生產建議,幫大家少啲行冤枉路。

咩係Agent Harness?點解佢比模型本身更加關鍵?
簡單講,Agent = 模型 + Harness。LLM(大語言模型)就好似一個聰明嘅大腦,但要令佢真係「做到嘢」,就需要一個可靠嘅「身體」,呢個就係Harness。佢負責工具調用、狀態管理、策略控制、預算追蹤、上下文處理等一系列嘅基建工作。
Mike Piccolo指出:大部分團隊唔係喺度整Harness,而係直接「用」一個框架(例如LangChain、LangGraph、OpenAI Agents SDK、CrewAI等)。將循環、工具、記憶、編排全部打包成一個決定。一旦有某個部分(例如策略引擎或者審批流程)唔啱用,就要分支、繞路或者重寫,最終好多團隊都要由頭自己砌返個Harness。
上面的問題嘅核心,就係在於:Harness唔係「一樣嘢」,而係10至15個獨立職責嘅組合。單一嘅傳統框架好多時會將佢哋綁死,呢個就限制咗靈活性。
生產級Harness一定要承擔嘅15項核心職責
文章入面列出咗生產環境中Agent Harness需要處理/承擔嘅典型職責(以下總結有少少精簡):
1. 接收同持久化Turn(單次交互)請求 2. 解析模型提供商嘅憑證 3. 查詢模型能力(視覺、工具、上下文窗口等) 4. 驅動per-Turn狀態機(provision、stream、工具執行、steering、tear down) 5. 加載同提供Skill(工具描述) 6. 組裝System Prompt(模式、身份、默認技能等) 7. 將Token串流返俾客戶端 8. 每個工具調用前嘅策略檢查 9. 需要人工審批嘅暫停同恢復 10. 追蹤LLM嘅花費同預算控制 11. 工具調用前後嘅Hook(日誌、脱敏、自定義副作用) 12. 以分支樹形式持久化Session,支援fork同resume 13. 上下文窗口滿咗嗰陣進行壓縮 14. 發出UI可以訂閲嘅事件流 15. 貫穿成個過程嘅OpenTelemetry Trace,方便除錯
呢啲職責一個都唔少得,特別係喺企業級場景入面,策略、審批、預算同Trace係避免「炒車」嘅關鍵。
推薦方法:模塊化做可插拔嘅Worker
Mike Piccolo嘅核心建議係唔好將Harness當成單一框架,而係砌成一組可安裝、可版本化、可替換嘅Worker,透過統一嘅引擎同簡單原語(例如 iii.trigger())連接。
喺佢哋嘅iii系統示例入面,默認棧包含大約11個Worker(例如turn-orchestrator、harness元Worker、approval-gate、llm-budget、唔同provider等)。每個Worker獨立運行、獨立版本,透過總線註冊函數同觸發器。

單次Turn嘅執行鏈路(簡化版):
• 客戶端觸發 → 持久化 + 狀態機啟動 • Provisioning(沙箱、Skill下載、Prompt組裝) • 模型Streaming • 工具調用 → 策略檢查 → (有需要時)人工審批 → 執行 + Hook • Steering(決定繼續定結束)+ 上下文壓縮 + Trace 記錄 • 事件流推送俾UI
呢種設計令到「自己整」變得簡單:想換策略引擎?寫一個註冊相同函數嘅Worker換走就得;想加新模型provider?加一個新Worker就得,唔使重構成個系統。
薄 vs 厚Harness:唔係二揀一,而係一種「滑塊」調整。裝少幾個Worker就係輕量版(適合實驗);全部裝曬加自定義就係企業級厚版(有嚴格治理),透過配置調整就可以切換。
分析:框架綁定 vs 模塊化,邊個更適合企業?
理性看待框架:
• 優勢:上手快、社區成熟,適合MVP或者細團隊快速驗證。 • 風險:規模化之後,定製成本高、Trace唔完整、治理能力弱。一年後好多時會面臨「一係忍,一係重寫」嘅困境。
模塊化Worker嘅優勢:
• 靈活性:語言無關(支援多語言SDK)、獨立升級、容易集成現有企業系統(Secrets Manager、OPA/Cedar策略等)。 • 可觀測性:統一Trace貫穿所有步驟,除錯效率高。 • 安全性與合規:Fail-closed(默認拒絕)、審批路由、預算控制更容易實現。 • 成本控制:按需要組裝,避免過度工程。
當然,冇萬能嘅選擇。建立Worker體系本身就需要一定嘅架構投入。如果你嘅Agent只係內部簡單自動化,成熟框架加少量擴展可能已經夠。但係對於長期生產落地、涉及敏感操作或者多團隊協作嘅企業,模塊化思路更加可持續。
實用建議:點樣揀?
1. 先評估需求:列出你嘅Agent需要邊啲職責(尤其係策略、預算、審批、Trace)。如果現有框架滿足到八成,先優化佢;否則考慮模塊化路徑。 2. 強烈建議直接睇Mike Piccolo篇文(iii.dev博客),入面有詳細Worker列表、Turn執行流程圖同替換示例。 3. 由細位開始實踐: ◦ 試嚇開源嘅iii Harness bundle,clone之後本地運行,體驗Worker插拔嘅靈活性。 ◦ 由核心(例如Turn Orchestrator + Provider + Policy)開始砌,逐步加。 ◦ 重視FSM(有限狀態機):佢係單次Turn可靠執行嘅基礎。 4. 企業落地Tips: ◦ 將Harness當做「系統嘅一部分」,唔係孤立層。Agent本身都可以係Worker。 ◦ 優先處理觀測性同治理:Trace同審批係生產環境嘅「保險絲」。 ◦ 多語言支援同版本化:方便唔同團隊協作。 ◦ 持續監控成本同性能:預算Worker唔係錦上添花,而係必要嘅模塊。 5. 避免常見陷阱:唔好太過追求「全自動」,Human-in-the-Loop(人工審批)喺高風險場景入面好重要;上下文壓縮同Prompt組裝直接影響token消耗同效果。
最後:Harness係基建,更加係長期競爭力
Agent嘅價值最終取決於可唔可以喺真實業務入面穩定咁交出成果。揀框架係起點,但係砌一個可組合、可演化嘅Harness先係通往生產級嘅必經之路。Mike Piccolo嘅分享提醒我哋:技術選型要服務於業務靈活性,而唔係反過嚟被綁死。
如果你正在整或者優化企業Agent,歡迎喺評論區分享你嘅經驗。我哋一齊交流,推動AI由「行得鬱」到「可靠咁賺錢」。

參考同延伸閲讀:
• 《How to Build Your Own Agent Harness》 https://iii.dev/blog/how-to-build-your-own-agent-harness/ • https://x.com/mfpiccolo/status/2060069083878408689 • iii.dev相關開源項目 • @shao__meng嘅分享帖
(本文係根據公開分享內容整理,觀點盡量客觀理性。如果有更新,以原文為準。)
近年來,AI Agent(智能體)逐漸從概念走向落地,企業越來越關注如何讓Agent在生產環境中穩定、高效、安全地運行。近日Mike Piccolo(iii.dev創始人)分享了一篇深度文章,《How to Build Your Own Agent Harness》,引發了不少討論。
這篇文章不是簡單推銷某個框架,而是系統拆解了生產級Agent Harness(智能體框架)的本質。今天,我們就結合原文內容,分享一些核心觀點和生產建議,幫助大家少走彎路。

什麼是Agent Harness?為什麼它比模型本身更關鍵?
簡單說,Agent = 模型 + Harness。LLM(大語言模型)就像聰明的大腦,但要讓它真正“做事”,需要一個可靠的“身體”,這就是Harness。它負責工具調用、狀態管理、策略控制、預算追蹤、上下文處理等一系列基礎設施工作。
Mike Piccolo指出:大多數團隊不是在構建Harness,而是直接“採用”一個框架(如 LangChain、LangGraph、OpenAI Agents SDK、CrewAI等)。把循環、工具、記憶、編排全部打包成一個決策。一旦某個部分(如策略引擎或審批流程)不匹配,就得分支、繞路或重寫,最終很多團隊還是得從頭搭建自己的Harness。
上面的問題核心,就在於:Harness不是“一個東西”,而是10-15個獨立職責的組合。單一的傳統框架往往把它們綁死,這也限制了靈活性。
生產級Harness必須承擔的15項核心職責
文章中列出了生產環境中Agent Harness需要處理/承擔的典型職責(以下總結略有精簡):
1. 接受並持久化 Turn(單次交互)請求 2. 解析模型提供商憑證 3. 查詢模型能力(視覺、工具、上下文窗口等) 4. 驅動 per-Turn 狀態機(provision、stream、工具執行、steering、tear down) 5. 加載並提供 Skill(工具描述) 6. 組裝 System Prompt(模式、身份、默認技能等) 7. 將 Token 流式返回給客戶端 8. 每個工具調用前的策略檢查 9. 需要人工審批的暫停與恢復 10. 追蹤 LLM 花費與預算控制 11. 工具調用前後的 Hook(日誌、脱敏、自定義副作用) 12. 以分支樹形式持久化 Session,支持 fork 和 resume 13. 上下文窗口滿時進行壓縮 14. 發出 UI 可訂閲的事件流 15. 貫穿全程的 OpenTelemetry Trace,便於調試
這些職責缺一不可,尤其是在企業級場景中,策略、審批、預算和 Trace是避免“翻車”的關鍵。
推薦方法:模塊化為可插拔的Worker
Mike Piccolo的核心建議是不要把Harness當成單一框架,而是構建成一組可安裝、可版本化、可替換的Worker,通過統一的引擎和簡單原語(如 iii.trigger())連接。
在他們的iii系統示例中,默認棧包含約11個Worker(如turn-orchestrator、harness元Worker、approval-gate、llm-budget、各種 provider等)。每個Worker獨立運行、獨立版本,通過總線註冊函數和觸發器。

單次Turn的執行鏈路(簡化版):
• 客戶端觸發 → 持久化 + 狀態機啓動 • Provisioning(沙箱、Skill下載、Prompt組裝) • 模型Streaming • 工具調用 → 策略檢查 → (必要時)人工審批 → 執行 + Hook • Steering(決定繼續或結束)+ 上下文壓縮 + Trace 記錄 • 事件流推送到 UI
這種設計讓“自建”變得簡單:想換策略引擎?寫一個註冊相同函數的Worker替換即可;想加新模型provider提供商?新增一個Worker即可,無需重構整個系統。
薄 vs 厚Harness:不是二選一,而是一種“滑塊”調整。少裝幾個Worker就是輕量版(適合實驗);全裝 + 自定義就是企業級厚版(帶嚴格治理),通過配置調整即可切換。
分析:框架綁定 vs 模塊化,誰更適合企業?
理性看待框架:
• 優勢:上手快、社區成熟,適合MVP或小團隊快速驗證。 • 風險:規模化後,定製成本高、Trace不完整、治理能力弱。一年後往往面臨“要麼忍受,要麼重寫”的困境。
模塊化Worker的優勢:
• 靈活性:語言無關(支持多語言 SDK)、獨立升級、易於集成現有企業系統(Secrets Manager、OPA/Cedar策略等)。 • 可觀測性:統一Trace貫穿所有步驟,調試效率高。 • 安全性與合規:Fail-closed(默認拒絕)、審批路由、預算控制更易實現。 • 成本控制:按需組裝,避免過度工程。
當然,沒有萬能的選擇。搭建Worker體系本身就需要一定的架構投入。如果你的Agent只是內部簡單自動化,成熟框架+少量擴展可能就夠了。但對於長期生產落地、涉及敏感操作或多團隊協作的企業,模塊化思路更可持續。
實用建議:如何選擇?
1. 先評估需求:列出你的Agent需要哪些職責(尤其是策略、預算、審批、Trace)。如果已有框架滿足80%,先優化它;否則考慮模塊化路徑。 2. 強烈推薦直接讀Mike Piccolo的文章(iii.dev博客),裏面有詳細Worker列表、Turn執行流程圖和替換示例。 3. 從小處實踐: ◦ 嘗試開源的iii Harness bundle,clone後本地運行,體驗Worker插拔帶來的靈活性。 ◦ 從核心(如Turn Orchestrator + Provider + Policy)開始搭建,逐步添加。 ◦ 重視FSM(有限狀態機):它是單次Turn可靠執行的基礎。 4. 企業落地Tips: ◦ 把Harness當成“系統的一部分”,而非孤立層。Agent本身也可以是Worker。 ◦ 優先解決觀測性和治理:Trace和審批是生產環境的“保險絲”。 ◦ 多語言支持和版本化:便於不同團隊協作。 ◦ 持續監控成本和性能:預算Worker不是錦上添花,而是必需的模塊。 5. 避免常見坑:不要過度追求“全自動”,Human-in-the-Loop(人工審批)在高風險場景中至關重要;上下文壓縮和Prompt組裝直接影響token消耗和效果。
最後:Harness是基礎設施,更是長期競爭力
Agent的價值最終取決於能否在真實業務中穩定交付成果。選框架是起點,但構建可組合、可演化的Harness才是通往生產級的必經之路。Mike Piccolo的分享提醒我們:技術選型要服務於業務靈活性,而不是反過來被綁定。
如果你正在構建或優化企業Agent,歡迎在評論區分享你的經驗。我們一起交流,推動AI從“能跑”到“可靠賺錢”。

參考與延伸閲讀:
• 《How to Build Your Own Agent Harness》 https://iii.dev/blog/how-to-build-your-own-agent-harness/ • https://x.com/mfpiccolo/status/2060069083878408689 • iii.dev相關開源項目 • @shao__meng的分享帖
(本文基於公開分享內容整理,觀點力求客觀理性。如有更新,以原文為準。)