AI 知識

Harness 決定 Agent 能不能被信任

AI Agent 最吸引人的地方,是它不只回答問題,還能自己呼叫工具、修改檔案、執行命令,甚至一路把多步驟任務做完。

但也正因如此,判斷一個 Agent 能不能被信任,不能只看模型有多聰明。

一個模型可能很會推理,也可能在 benchmark 上拿到漂亮成績;可是一旦它被接上檔案系統、Shell、資料庫、付款或發布 API,真正決定風險的,往往是模型外面的執行環境。

這一層環境,現在愈來愈常被稱為 Agent Harness。

Harness 不是模型,而是模型外面的執行系統

Microsoft 將 Agent harness 描述為把語言模型變成可執行 Agent 的外圍系統:它負責工具呼叫迴圈、context 與 history、approval、安全政策、可觀測性,以及任務何時完成。

OpenAI 在分享 Agent-first 軟體開發經驗時,也把重點放在環境設計、repository knowledge、工具、規則與 feedback loops。官方公開的實驗中,三位工程師驅動 Codex,在約五個月內建立約百萬行 repository 內容,而且人類沒有直接手寫程式碼。

這個數字很吸睛,但真正值得注意的是方法:人類不是消失,而是把工作從每一行都自己寫,轉成設計 Agent 能可靠工作的環境。

模型像引擎,Harness 則同時扮演方向盤、煞車、安全帶與行車紀錄器。只有引擎更強,車子不會因此自動變安全。

第一層:最小權限,不讓任務半徑無限擴大

Agent 要整理一個專案,不代表它需要讀取整台電腦;要更新一份文件,也不代表它應該擁有刪除所有檔案的能力。

最小權限的核心很簡單:每個任務只提供完成任務所需的最小存取範圍。

實務上要問的不是 Agent 有沒有檔案工具,而是:

  • 它能讀哪些目錄?
  • 它能寫哪些檔案?
  • 刪除是否被禁止或另行審批?
  • API token 是否只含這次任務需要的 scope?
  • 子 Agent 是否會繼承不必要的權限?

Prompt 裡寫不要碰其他檔案,只是行為要求,不是安全邊界。真正的限制必須落在作業系統、容器、工具註冊、API scope 或 policy 層。

第二層:隔離執行,讓錯誤停在可控範圍

Agent 會犯錯,工具也可能回傳非預期結果。可靠系統不應建立在這次一定不會出錯的假設上,而是先設計出錯時的爆炸半徑。

隔離工作區、暫存資料、測試帳號與非正式環境的目的,就是讓 Agent 可以嘗試、失敗與重做,而不直接改到真實系統。

一個好的隔離層通常包含:

  • 任務專屬工作目錄
  • 與個人家目錄、共享磁碟和正式資料分離
  • 網路與外部服務採 allowlist
  • 測試與正式 credential 分開
  • 任務結束後能清除或回收環境

隔離不是讓 Agent 變笨,而是讓它有安全的犯錯空間。

第三層:高風險動作要有真正的審批點

不是每一個 tool call 都值得打斷人類,但也不能把所有動作都交給同一套自動批准規則。

刪除資料、付款、發布公開內容、修改權限、碰正式環境與不可逆操作,應該被明確分類為高風險動作。系統必須在執行前停下來,顯示具體影響並取得授權。

關鍵不是跳出一句模糊的是否繼續,而是讓人看得懂:

  • 會修改哪個環境?
  • 會碰哪些資料?
  • 影響是否可逆?
  • 使用的是哪組權限?
  • 失敗時如何回復?

審批點愈具體,人類愈能做真正的判斷,而不是反射性按下同意。

第四層:完成要靠證據,失敗要能回復

Agent 說已完成,不等於任務真的完成。

公開研究對 Harness Engineering 的一個重要主張,是把完成綁定在 verification evidence,而不是自然語言自我宣告。這些證據可以是針對需求的 deterministic checks、測試、回歸驗證、差異檢查、平台讀回或部署後 smoke test。

同時,驗證不能只確認有產出,還要確認:

  • 產出是不是正確版本?
  • 是否修改到不該碰的地方?
  • 原有功能有沒有退化?
  • 真實平台是否已生效?
  • 如果錯了,能不能 rollback?

可追蹤紀錄也很重要。沒有 action log、tool trace、candidate identity 與驗證結果,就很難在失敗後判斷問題發生在哪一步,更無法讓另一個人或 Agent 接手修復。

四個問題,快速判斷一個 Agent 能不能放手執行

當你看到一個新的 Agent 產品,不妨先別只問它用了哪個模型,而是問:

  1. 它能碰哪些資料與工具?
  2. 它是在隔離環境,還是直接操作真實系統?
  3. 哪些高風險動作一定會停下來等人確認?
  4. 它如何證明完成,錯誤又如何撤回?

如果這四個問題沒有清楚答案,再強的模型也只是把不確定性執行得更快。

AI Agent 的下一場競爭,不只在模型

模型能力仍然重要,但真正能進入長時間、自動化與正式工作流程的 Agent,競爭焦點會愈來愈往外移。

誰能提供更清楚的 context、更穩定的工具、更小的權限半徑、更可靠的驗證、更完整的追蹤與回復,誰才能把模型能力轉成可被信任的結果。

可靠的 AI Agent,不是保證永遠不犯錯。它真正的標準是:犯錯時碰不到不該碰的地方、影響範圍有限、每一步看得見,而且結果驗得過、回得去。

查證摘要

  • OpenAI 說明 Agent-first 開發的重點不在要求模型再努力,而是環境、工具、repository knowledge、規則與 feedback loops 是否設計得可讀、可執行。
  • Microsoft 將 Agent harness 定義為包住模型的執行層,負責 tool calling loop、context/history、approval 與 safety policy。
  • Harness engineering 研究把 Agent 能力看成 model、harness 與 environment 的組合結果,並把完成綁定在 deterministic checks、測試與 verification evidence,而不是自然語言自我宣告。
  • 本文不宣稱任何 sandbox、approval 或 verification 能消除所有風險;重點是把錯誤限制在可控範圍,並留下可驗證、可回復的路徑。
  • 主要資料:https://openai.com/index/harness-engineering/
  • https://learn.microsoft.com/en-us/agent-framework/agents/harness
  • https://arxiv.org/abs/2605.13357
回文章列表