Favicon02

Harness Engineering是什麼?AI駕馭工程新手教學

Harness Engineering(AI 駕馭工程)是什麼、跟 Prompt Engineering 差在哪、Harness 包含哪些元件、AGENTS.md 與 MCP 的關係,以及新手如何從低風險任務開始,一次看懂。

Harness Engineering 可以翻成「AI 駕馭工程」或「代理支架工程」,它不是單純把 Prompt 寫得更漂亮,而是幫 AI Agent 設計一套能真正工作的環境。

以前我們常說 Prompt Engineering,重點是「怎麼問 AI」。但當 AI 不只是回答問題,而是要幫你寫程式、查資料、改檔案、跑測試、使用工具、甚至完成多步驟任務時,光靠一句指令就不太夠了。

更準確地說,Harness Engineering 關心的是:我們要怎麼安排文件、工具、權限、測試、流程、紀錄與人工確認,讓 AI 不只是「看起來很會回答」,而是真的能可靠地完成任務。

如果你正在使用 ChatGPT、Claude、Codex、Claude Code、Cursor、Cline、GitHub Copilot 或各種 AI Agent 工具,Harness Engineering 會是未來很重要的概念。


Harness Engineering 是什麼?

Harness 原本有「馬具、繫具、控制裝備」的意思。你可以想像 AI 模型像一匹很有力量的馬,但如果沒有韁繩、馬鞍、路線、規則與騎手,再強的馬也可能亂跑。

LangChain 在〈The Anatomy of an Agent Harness〉中用一句話概括:Agent = Model + Harness。模型提供智慧,Harness 則讓這個智慧可以被安全、穩定、可追蹤地使用。

所以 Harness Engineering 不是訓練模型本身,而是設計模型外面的工作系統。例如:

  • 要給 AI 哪些背景資料?
  • AI 可以使用哪些工具?
  • AI 可以讀哪些檔案、改哪些檔案?
  • AI 做完後要怎麼驗證?
  • AI 失敗時要怎麼回報、修正、讓人接手?

你可以把它理解成:Prompt 是你對 AI 說的話,Harness 是你幫 AI 建好的工作環境。

Harness Engineering 是什麼:Agent 等於模型加上 Harness 工作環境

參考資料:LangChain:The Anatomy of an Agent Harness


為什麼現在大家開始談 Harness Engineering?

因為 AI 正在從「聊天工具」變成「能做事的代理人」。

過去我們主要請 AI 回答問題、摘要文章、改寫文案,這類任務通常是一問一答。但現在 AI Agent 可以操作檔案、執行程式、呼叫 API、使用瀏覽器、修改專案,甚至連續處理好幾個小時的任務。

問題是,AI 一旦能做事,錯誤也會變得更真實。

它可能會改錯檔案、幻想不存在的程式、跳過測試、讀到不該讀的資料,或是很有自信地說「完成了」,但其實根本沒完成。

台大李宏毅教授在課程中曾用 Gemma 小模型做過一個很直覺的例子:同一個模型、同一個修 bug 任務,只是多加了一段引導 AI 如何查看檔案、執行指令、驗證結果的說明,結果就可能從失敗變成成功。

這個例子要傳達的重點不是「那 80 個字很神奇」,而是 AI 的表現不只取決於模型本身,也取決於人類有沒有提供正確的工作方式。

參考資料:李宏毅課程 PDF:Harness Engineering


Harness Engineering 跟 Prompt Engineering 差在哪?

很多人第一次聽到 Harness Engineering,會以為這只是 Prompt Engineering 的新名字,但兩者其實不太一樣。

Prompt、Context、Harness Engineering 三個概念差異比較

概念 重點 例子
Prompt Engineering 怎麼下指令 請 AI 用專業語氣寫一篇文章
Context Engineering 給 AI 什麼背景資料 把產品文件、程式碼、錯誤訊息提供給 AI
Harness Engineering 設計 AI 完成任務的整套環境 讓 AI 讀檔、改檔、跑測試、留下紀錄,最後由人審核

Prompt 比較像「一句指令」,Context 比較像「提供資料」,Harness 則更像「整個工作流程」。

舉例來說,你叫 AI:「幫我修 parser.py 的 bug」,這是 Prompt。

你再把錯誤訊息、檔案內容、測試規格貼給它,這是 Context。

但如果你讓 AI 能進入專案、查看檔案、修改程式、執行 verify.py、回報測試結果,並限制它不能碰其他檔案,這才比較接近 Harness Engineering。


Harness 通常包含哪些東西?

一個完整的 Harness 不一定很複雜,但通常會有幾個核心組件。

1. 任務說明

AI 需要知道自己要完成什麼任務,以及什麼情況才算成功。模糊的任務會讓 AI 自己猜,猜錯了還可能很有自信地回報完成。

比較好的寫法是:「請修復 parser.py 中 extract_emails 的 bug,讓 verify.py 測試全部通過,不要修改公開 API,完成後列出你執行過的測試指令。」

2. 背景資料

AI 需要知道相關檔案、專案架構、錯誤訊息、文件與限制條件。給太少,它容易亂猜;給太多,它可能被不相關資訊干擾。

所以 Harness Engineering 不是把所有資料塞給 AI,而是要讓 AI 拿到剛好有用的資訊。

3. 工具與權限

AI Agent 常見工具包含讀檔、寫檔、搜尋、執行程式、呼叫 API、使用資料庫、連接 GitHub 或 Google Drive 等。

這也是最需要小心的地方。AI 可以使用工具之後,就不只是回答錯誤而已,而是可能真的做出錯誤操作。

4. 測試與驗證

AI 說「完成了」不代表真的完成。最好要有測試、lint、typecheck、CI、人工審查或其他可重現的檢查方式。

Martin Fowler 的文章把這類機制分成 Guides 與 Sensors。Guides 是事前引導,例如規格、文件、規則;Sensors 是事後檢查,例如測試、log、review。

參考資料:Martin Fowler:Harness engineering for coding agent users

5. 紀錄與人工接手

一個好的 Harness 會留下 AI 做過什麼、改了哪些檔案、跑了哪些指令、哪裡失敗、哪裡需要人判斷。

這點在企業導入時尤其重要,因為你不能只看最後答案,而是要能追蹤整個過程。


AGENTS.md 是最容易入門的 Harness 元件

如果你是工程師,或正在使用像 Claude Code 這類 coding agent,AGENTS.md 是最容易開始的地方。

AGENTS.md 是一種給 AI coding agent 閱讀的專案說明文件。它通常放在專案根目錄,內容可以包含:

  • 專案是做什麼的
  • 如何安裝、啟動、測試
  • 程式碼風格與命名規則
  • 哪些檔案不要修改
  • 修改後要跑哪些檢查
  • 安全與隱私注意事項

不過 AGENTS.md 不是越長越好。OpenAI 在 Codex 的案例中也提到,太龐大的 AGENTS.md 一開始反而不好用,後來改成更精簡、像索引一樣的文件,效果才比較好。

我會建議新手先寫 50~150 行左右就好,重點是清楚、可維護、能讓 AI 少猜一點。

參考資料:AGENTS.md 官方網站OpenAI:Harness engineering


MCP 跟 Harness Engineering 有什麼關係?

MCP 是 Model Context Protocol 的縮寫,是一種讓 AI 應用連接外部工具與資料來源的開放標準。

你可以把 MCP 想成 AI 工具世界的連接器。透過 MCP,AI 可以連接本地檔案、資料庫、搜尋工具、工作流程、GitHub、Slack 或其他外部系統。

但請注意:MCP 不是 Harness Engineering 的全部。

MCP 解決的是「AI 怎麼連到工具與資料」,Harness Engineering 則還包含任務設計、權限控管、測試、紀錄、人機協作與失敗處理。

也就是說,MCP 可以是 Harness 的一部分,但有 MCP 不代表你的 AI Agent 就安全可靠。

參考資料:Model Context Protocol 官方文件



Harness Engineering 常見使用情境

1. AI 寫程式與修 Bug

這是目前最常見的場景。你可以讓 AI 讀取程式碼、理解錯誤、修改檔案、執行測試,再把結果回報給你。

但務必要求它列出實際執行過的指令與測試結果,不要只接受「我已經修好了」這種回覆。

2. AI 幫你整理文件

你可以讓 AI 更新 README、整理 API 文件、補充註解、統一文件格式。這類任務風險比改核心程式低,很適合新手練習。

不過文件內容仍要人工確認,因為 AI 可能把看似合理但其實不存在的功能寫進文件裡。

3. AI 做資料查詢與報告

如果 AI 需要查資料庫或內部文件,建議先給 read-only 權限,避免它直接修改資料。

比較安全的做法是:AI 先產生查詢語句、整理結果與建議,最後由人決定要不要採用。

4. AI Agent 自動化工作流程

更進階的做法,是讓 AI 連接多個工具,幫你完成研究、整理、填表、寄信、建立任務或更新專案。

這種情境很有威力,但也最需要權限、紀錄與人工確認。尤其涉及付款、刪除資料、寄出正式信件、修改正式文件時,不要讓 AI 自己完成最後一步。


新手如何開始做 Harness Engineering?

如果你是新手,不需要一開始就做很複雜的 AI Agent 系統。可以從一個低風險、小範圍、可驗證的任務開始。

新手開始 Harness Engineering 的五個步驟

步驟一:選一個簡單任務

例如修一個小 bug、更新一段文件、整理一份資料、檢查一段程式碼。

不要一開始就叫 AI 改整個系統,也不要讓它碰正式資料庫、客戶個資、付款流程或重要帳號。

步驟二:寫清楚成功標準

請明確告訴 AI 什麼叫完成。例如:

  • 所有測試要通過
  • 只能修改指定檔案
  • 不能改 public API
  • 完成後要列出修改內容
  • 要貼出測試指令與結果

步驟三:限制 AI 的權限

只給 AI 完成任務需要的工具與資料。能讀就不要先給寫,能用測試環境就不要用正式環境。

權限越大,出錯成本越高。

步驟四:建立檢查機制

最基本的檢查機制包括測試、lint、人工 review、版本控制與差異比對。

如果 AI 修改了程式,你至少要看 diff;如果 AI 整理了資料,你至少要抽查來源;如果 AI 寫了文章,你至少要查證關鍵事實。

步驟五:記錄失敗,更新規則

如果 AI 一直犯同樣的錯,不要只怪模型笨。你應該把錯誤轉成更明確的文件、規則、測試或流程。

這就是 Harness Engineering 很重要的精神:不是每次都重新下咒語,而是把經驗沉澱成系統。


Harness Engineering 的風險與限制

Harness Engineering 很有用,但不代表可以完全放心交給 AI。

常見風險包含:

  • AI 以為自己完成任務,但實際上沒有完成
  • AI 修改錯誤檔案,或改太多不相關內容
  • AI 讀到不該讀的資料,例如金鑰、個資、商業機密
  • AI 連接外部工具後,被惡意內容或 Prompt Injection 影響
  • AI 為了通過測試,採取投機取巧的修改方式
  • 長任務中途失去脈絡,後面開始胡亂接續

Anthropic 在長任務 Agent 的研究中也提到,Agent 需要處理 context window、任務交接、進度紀錄與自我評估不可靠等問題。

OWASP 也已經開始針對 Agentic Applications 整理安全風險,這代表 AI Agent 的安全問題不能只用傳統聊天機器人的角度看待。

參考資料:Anthropic:Effective harnesses for long-running agentsOWASP Top 10 for Agentic Applications


哪些情境不適合新手直接使用 AI Agent?

如果一個任務「錯了很難回復」,就不適合新手直接交給 AI。

例如:

  • 刪除大量資料
  • 修改正式資料庫
  • 寄出正式法律文件或商業合約
  • 處理醫療、法律、投資建議
  • 登入重要帳號並執行不可逆操作
  • 處理客戶個資、公司機密或未公開財務資料

這些情境不是完全不能用 AI,而是應該把 AI 放在輔助位置:讓它整理、草擬、檢查、提出建議,最後由人確認與執行。


新手最容易犯的錯誤

錯誤一:以為模型越強,就不需要 Harness

模型變強當然有幫助,但真正的工作任務通常需要資料、工具、流程、測試與責任分工。

越重要的任務,越不能只靠模型自己發揮。

錯誤二:把 AGENTS.md 寫成百科全書

很多人會想把所有規則都塞進去,但太長的文件會增加閱讀負擔,也可能讓 AI 被不重要的資訊干擾。

好的 AGENTS.md 應該像清楚的工作指南,而不是一本沒人維護的說明書。

錯誤三:相信 AI 說「已完成」

AI 的語氣很有自信,不代表它真的做對。

新手一定要養成一個習慣:看證據,不看語氣。

錯誤四:給 AI 太大權限

剛開始使用 AI Agent 時,請從最小權限開始。能在測試環境做,就不要在正式環境做;能先讓它提出建議,就不要直接讓它執行。



Harness Engineering 新手檢查清單

每次你想讓 AI 做一個比較複雜的任務時,可以先用這份清單檢查:

  • 這個任務是否可以安全失敗?
  • 我是否清楚定義完成標準?
  • AI 是否只拿到必要資料?
  • AI 是否只擁有必要權限?
  • 是否有測試、檢查或人工審核?
  • AI 是否需要留下操作紀錄?
  • 如果結果錯了,是否可以回復?
  • 涉及重要資料時,是否有隱私與合規考量?
  • 這次失敗是否可以轉成下一次的規則?

如果這些問題你都回答不出來,代表你現在可能不是缺少更好的 Prompt,而是缺少更好的 Harness。


總結:AI 變強後,更需要會駕馭 AI 的人

Harness Engineering 最重要的觀念是:AI 的能力不是只看模型本身,而是看模型、工具、資料、流程、測試與人類判斷如何組合起來。

對新手來說,你不需要一開始就理解所有技術細節。先記住一件事就好:不要只問「我要怎麼下 Prompt」,而是要問「我要怎麼設計一個讓 AI 比較不容易做錯事的工作環境」。

未來 AI Agent 會越來越能做事,但越能做事,就越需要界線、檢查、權限與責任分工。

Prompt Engineering 讓我們學會怎麼跟 AI 溝通;Harness Engineering 則讓我們開始學會怎麼真正使用 AI 完成工作。

Frank Chiu
Frank Chiu

SEO/GEO 顧問、行銷顧問。協助本地企業與跨國企業導入 SEO、GEO 跟行銷方案,包括:雀巢、凱基銀行、大人學、居家先生、IKEA、vocus 等。

訂閱電子報