在 AI 代理(Agent)發展的早期,開發者總是試圖讓模型變得「無所不能」。我們塞給它長達數千行的 System Prompt,或是串接幾十個 API 工具。然而,這種做法很快就遇到了瓶頸:模型開始變得混亂、指令遵循度下降,且 Token 成本居高不下。Agent Skill 機制因此應運而生。
什麼是 Agent Skill?
簡單來說,Agent Skill 是一種封裝好的、模組化的能力包。它不單純只是一個「功能(Function)」,而是一個包含特定指令(Instructions)、專業知識(References)與自動化腳本(Scripts)的完整單元。
如果把大模型比喻成一個具備極高智商但不具備專業經驗的「社會新鮮人」,那麼:
- 傳統 Tools、MCP 像是給他一隻扳手或一台電腦,但他不一定知道該怎麼用。
- Agent Skills 則是給他一套「高級技工培訓手冊」加「專用工具箱」,讓他能瞬間變身成特定領域的專家。
為什麼 Agent Skill 的重要性在今日大幅增加?
隨著 Claude 與 OpenAI 相繼推出標準化的技能規格,我們可以看到這項技術正成為 AI 應用的核心,主要源於以下四個痛點的突破:
1. 破解「上下文(Context)膨脹」的詛咒
目前的模型雖然上下文視窗越來越大,但隨之而來的是「資訊迷失(Lost in the middle)」的問題。將所有專業指令都塞在系統提示詞中,會導致模型反應遲鈍且精準度下降。
解決方案:Skill 機制採用 「漸進式揭露(Progressive Disclosure)」。只有當 Agent 識別出任務需求時,才會動態載入該技能的完整指令。這讓 Agent 保持輕巧,同時在關鍵時刻具備深度。
2. 從「通用行為」轉向「專家決策」
通用的模型往往只能給出中規中矩的回答。但在專業應用(如程式碼審查、法律分析)中,需要的是極度精確的作業規範。
解決方案:Skill 允許開發者定義嚴格的
SKILL.md,引導 Agent 在特定場景下遵循專業的邏輯鏈條,從而大幅提升輸出的品質與專業度。
3. 安全與權限的「最小化原則」
給予 Agent 永久的 Bash 權限或檔案寫入權限是非常危險的。
解決方案:透過 Skill 的 執行上下文修改(Execution Context Modification),權限可以被限制在技能啟動的當下。例如:只有在「部署專案技能」被啟動時,Agent 才能獲得執行伺服器指令的權限,任務結束即收回。
4. 跨平台的標準化生態
OpenAI 與 Claude 在 SKILL.md 的格式上展現了高度共識,這意味著:
- 資產化:開發者撰寫一次技能,就能在不同的 Agent 環境中無縫遷移。
- 社群共享:未來將會出現類似
npm的 Skill Hub,開發者可以直接下載「專業會計技能」或「資安稽核技能」裝載到自己的系統中。
實作機制比對:Claude vs. OpenAI
當我們深入剖析 Han Lee 對 Claude 的底層拆解以及 OpenAI Codex PR #7412 的程式碼變動時,我們會發現兩家巨頭正試圖解決同一個問題:如何在不讓系統提示詞(System Prompt)爆炸的前提下,賦予 Agent 專家級的處理能力。
以下是針對兩者實作細節的深度強化比對:
1. 技能觸發機制:LLM 推理 vs. 指令安裝
這是兩者在「如何啟動技能」上的根本差異。
Claude 的「元工具(Meta-tool)」派發: Claude 實作了一個名為 Skill(大寫 S)的虛擬工具。系統會將所有可用技能的名稱與簡短描述,動態地塞進這個 Skill 工具的 description 中。這裡沒有傳統的關鍵字比對或向量搜尋。系統是直接利用 LLM 的推理能力,讓 Claude 自己從工具清單中判斷:「現在的情況適合調用 pdf 技能」。這是一種推理驅動的觸發方式。

OpenAI 的「套件管理」模式: OpenAI 在 PR #7412 中展現了更接近開發者習慣的作法。他們引入了 $skill-installer 的概念,類似於 npm install。OpenAI 傾向於讓技能成為系統環境的一部分。透過明確的安裝機制,將技能與 MCP(模型上下文協定)連結。這讓技能的啟動更具預測性,且更容易在不同的 CLI 環境中進行靜態管理。

2. 訊息流與 UI 透明度:雙軌通訊的精妙設計
如何讓 Agent 讀取五千字的「技能說明」,卻又不讓用戶的聊天視窗被洗版?
- Claude 的
isMeta: true隱藏層: 根據 Han Lee 的拆解,Claude 在啟用技能時會發送兩條 User 訊息:- 訊息 A (Visible): 包含
<command-message>標籤,顯示給用戶看(例如:「正在載入 PDF 處理技能」)。 - 訊息 B (Hidden): 標記為
isMeta: true。這條訊息包含完整的SKILL.md指令內容。它會被送往 API 讓模型閱讀,但在用戶端會被前端完全過濾掉。這解決了「專業指令冗長」與「介面簡潔」之間的衝突。
- 訊息 A (Visible): 包含
- OpenAI 的系統級整合: OpenAI 則傾向於將技能內容直接整合進系統對話的上下文。雖然其 PR 中對隱藏訊息的實作細節較少提及,但其重點在於如何透過**標準化的腳本(scripts/)**來產出確定性的結果,而非單純依賴長篇大論的提示詞。
3. 執行上下文(Execution Context)的動態修改
這是實作中最高階的部分:Agent 在使用技能時,它的「權限」會改變嗎?
- Claude 的權限限時放寬: 當 Claude 呼叫某個技能時,
Skill工具會回傳一個contextModifier。這個修改器會暫時改變 Agent 的運作參數。例如,原本禁用的Bash工具,在執行code-review技能期間,會被暫時允許調用特定目錄下的腳本。任務一旦結束,權限即刻收回。這落實了權限最小化的安全原則。 - OpenAI 的環境邊界定義: OpenAI 在 YAML 前言(Frontmatter)中定義權限邊界,並與 MCP server 聯動。它的實作更強調環境的隔離性,確保技能在執行腳本時,是在一個預先定義好的、受控的沙盒環境中運作。
4. 品質保證:提示詞工程 vs. 自動化評測 (Evals)
當技能更新後,如何確保 Agent 不會變笨?
- Claude:依賴高品質的引導指令。 Claude 的風格是透過極其細膩的 Markdown 結構(如
Purpose,Instructions,Error Handling段落)來約束模型行為。它信任模型的強大理解力。 - OpenAI:強調
evals/測試框架。 OpenAI 的 PR 中最醒目的細節在於強制性或建議性的測試目錄。他們提倡為每個技能撰寫評測腳本(輕量級端到端測試)。當開發者修改了技能提示詞,系統會自動跑過一遍測試案例,驗證 Agent 的輸出 JSON 或行為是否依然符合預期。這是將 AI 開發軟體工程化的極致展現。
兩家公司實作 Agent Skills 的系統運作方式比較
這兩家公司雖然都採用 SKILL.md 作為標準規範,但其系統架構的「核心驅動方式」有顯著差異。以下為你將兩者的運作邏輯做詳細說明。
Claude (Anthropic) 的架構:元工具與動態注入
Claude 的設計核心在於「元工具(Meta-tool)」機制。它將所有的技能視為一個巨大的工具箱,並透過對話過程中的推理來決定加載哪一個專家模組。
運作流程解析:
- Skill Tool (Meta-tool): 在 API 請求中,系統會帶入一個名為
Skill的工具。其描述(Description)會動態生成一份所有可用技能的簡短清單。 - LLM 推理決策: 模型閱讀「清單」後,判斷用戶意圖,並決定呼叫
Skill工具(例如:command: "pdf")。 - 雙軌訊息注入:
- User Message (Visible): 告知用戶技能加載狀態。
- User Message (Hidden/isMeta): 將數千字的
SKILL.md指令注入對話。
- 執行上下文修改(Context Modifier): 暫時放寬工具權限(如 Bash 權限),讓 Agent 具備執行技能腳本的能力。
OpenAI (Codex) 的架構:可以被安裝、管理的軟體包
OpenAI 的設計更強調「生命週期管理(Lifecycle Management)」。它將技能視為可以被安裝、管理且必須通過自動化測試的軟體包。
運作流程解析:
- Skill Installer: 透過類似套件管理(npm)的機制將技能安裝到系統環境中。
- MCP Bridge: 技能與模型上下文協定(Model Context Protocol)連結,使技能能跨代理伺服器(Agent Servers)共享。
- 標準化目錄執行: 嚴格遵循
scripts/、references/目錄執行確定性任務。 - Evals 測試框架: 每個技能修改後,必須通過
evals/目錄中的自動化測試案例,確保指令變更後行為依然正確。
總結比對表:實作細節一覽
| 技術維度 | Claude (Anthropic Style) | OpenAI (Codex Style) |
| 分配者架構 | 透過 Skill 元工具動態分配 | 透過 installer 進行靜態安裝 |
| 訊息注入 | 雙訊息機制 (isMeta 隱藏層) | 系統提示詞動態組裝 |
| 環境控制 | 執行時動態修改權限 (Runtime Modifier) | 預定義的沙盒與 MCP 節點 |
| 維護重點 | Markdown 指令的細膩度與引導 | 自動化評測架構 (evals/) 的嚴謹度 |
| 跨平台標準 | SKILL.md 規格發起者 | agentskills.io 規格推動者 |

參考資料:





