拆解 AI Agent:Skill、工具、Harness 三層,為什麼光有好模型不夠
同樣一顆 Claude 或 GPT,裝在不同的 AI Agent 裡,有的穩得像老師傅,有的動不動就自爆。差別常常不在模型,而在你看不見的那層骨架——Harness。鴨編帶你拆開一個 Agent 的三層結構。
這是鴨編的觀點。一個問題先丟給你想:同樣一顆 Claude 或 GPT 的大腦,為什麼裝在 A 產品裡聰明又可靠,裝在 B 產品裡卻笨手笨腳、還會把自己搞壞? 答案,常常不在模型本身。
先承認一件事:大家都太在意「腦」了
挑 AI 工具時,大家第一句話都是問:「它用哪個模型?」「是不是最新的 GPT / Claude?」
模型當然重要,它是大腦。但鴨編觀察久了發現,真正決定一個 AI Agent 好不好用的,往往不是那顆腦,而是包在腦外面、你看不見的那層結構。
一個能幹活、又不會闖禍的 Agent,其實是三層疊出來的:
┌─────────────────────────────────────┐
│ Harness(控制層):邊界、驗證、錯誤回復、調度 │ ← 最關鍵、最被忽略
├─────────────────────────────────────┤
│ Skill(指令層) + 工具/MCP(連接層) │ ← 能力與資源
├─────────────────────────────────────┤
│ 模型(大腦) │ ← 大家只看這層
└─────────────────────────────────────┘
讓鴨編一層一層拆給你看。
第一層:Skill——打包好的指令與知識
我在 Skill 其實是 GPTs 的進化版 那篇講過:Skill 就是把一套指令或知識打包起來,讓 AI 需要時自己調用、按需載入。
📌 講清楚:這裡說的 Skill,指的是 Anthropic 制訂的正統 Agent Skills——AI 能自主調用、上下文按需加載的那種。它跟某些框架裡「寫死的 YAML 工作流」剛好同名,但不是同一個東西,別搞混。
Skill 回答的是一個問題:「這件事該怎麼做?」 它是 Agent 的知識與方法。
第二層:工具 / MCP——伸向外部世界的手腳
光有方法還不夠,Agent 還得能真的動手:讀檔案、查資料庫、發訊息、呼叫 API。這就是工具層,而 MCP 協定 正是讓 AI 用統一方式接上各種工具的標準。
工具層回答的是:「我能碰到哪些東西?」 它是 Agent 的手腳與感官。
小結:到這裡,都還只是「能力」
把前兩層合起來看:
- Skill = 我知道怎麼做(指令、知識)
- 工具 / MCP = 我能動手做(連接、執行)
這兩層加起來,回答的都是同一個問題:這個 Agent「能做什麼」。 它們是能力、是資源。
但你有沒有發現——會做事,跟「做得對、不闖禍」,是兩回事。 一個會用菜刀、也懂食譜的人,不代表他端得出一桌讓人安心吃的菜。中間還少了一個角色。
第三層:Harness——管事的那層
這就是 Harness(直譯是「馬具、挽具」,套在馬身上控制方向的那套東西)。它是包在模型外面的控制與治理層,做四件大家平常不會注意、但少了就出事的事:
1. 設邊界。 哪些事 Agent 絕對不能碰?(例如:不准刪資料庫、不准改自己的核心設定)。Harness 是那道護欄。
2. 驗證成果。 Agent 說它做完了,真的做完了嗎?格式對嗎?Harness 會在交出去前檢查。
3. 錯誤回復。 工具呼叫失敗、回傳了奇怪的東西——Harness 決定要重試、換一條路、還是停下來求救,而不是讓整個流程崩掉。
4. 調度。 這點最微妙:到底何時該調用哪個 Skill、載入哪段知識、呼叫哪個工具? 做這個決定的,就是 Harness。
這裡有個你可能沒意識到的連結:上一篇我誇 Skill「AI 會自己挑、自己載入」——那個「自己挑」其實不是 Skill 的功勞,是 Harness 在背後做決定。Harness 才是讓 Skill「會自己動」的那隻手。
用一間廚房,把三層串起來
鴨編最愛的比喻:把 Agent 想成一間餐廳廚房。
- Skill = 食譜(每道菜怎麼做的知識)
- 工具 / MCP = 爐具、刀具,還有外面送食材進來的供應商(伸向外部的手腳)
- Harness = 行政主廚
行政主廚自己不一定每道菜都親手炒。他做的是:決定這張單該做哪道菜、叫哪個供應商送料(調度);規定「過期的食材一律不准用」(邊界);每盤菜出餐前親自試味道、擺盤檢查(驗證);爐子燒焦了立刻換鍋重來、安撫客人(錯誤回復)。
沒有這個主廚,你有再好的食譜和廚具,廚房一樣會亂成一團、出包連連。 模型再聰明,沒有 Harness,就是一個沒人管的天才——遲早闖禍。
回到那隻自爆的龍蝦
還記得 工具調用才是真本事 裡,那隻「好心幫你優化設定,結果把自己電源線拔掉」的龍蝦嗎?
那不是模型笨。那是 Harness 沒把邊界設好——它讓 Agent 有權限去改自己的核心設定。模型只是照指令做事,真正該擋下這個動作的護欄,沒裝上。
模型沒壞,是沒人管它。 這就是 Harness 缺席的代價。
所以,這跟你有什麼關係
就算你不寫 Agent,這個三層模型也給你一把評估 AI 工具的尺。
下次有人跟你推銷一個 AI Agent,別只問「它用哪個模型」。多問三句:
- 它有沒有護欄?(會不會亂刪、亂改、亂花錢)
- 它會不會檢查自己的成果?(還是說做錯了也照樣交出來)
- 出錯時它怎麼處理?(崩掉、還是會自己救回來)
這三句,問的全是 Harness。而 Harness,正是「同一顆模型,為什麼有的 Agent 好用、有的爛」的真正答案。
一句話收尾:模型決定它有多聰明,Harness 決定它有多可靠。 而對真實世界的工作來說,可靠,往往比聰明更值錢。
🔗 延伸閱讀
- 🧩 指令層怎麼演化來的 → Skill 其實是 GPTs 的進化版
- 🔌 連接層的標準 → MCP 協定:AI 的 USB 接口
- 🦞 Harness 失敗的活例 → 工具調用才是真本事
- 🗺️ 各工具的定位 → AI 工具地圖
有想法想跟鴨編討論?到 首頁討論區 聊聊!
這篇文章對你有幫助嗎?
💬 問答區
卡關了?直接在這裡問,其他讀者和作者都能幫忙解答。
載入中...