---
# System prepended metadata

title: Agent Skill 概念
tags: [AI_Agent]

---

# Agent Skill 深度解析：從概念到開放標準的通用設計模式

本筆記深入探討了 Anthropic 推出的 **Agent Skill** 核心概念。從其發展背景（2025 年 10 月發佈至 12 月轉為開放標準）出發，詳細解析了 **Agent Skill** 的運作機制、階層式架構，以及它與 **MCP (Model Context Protocol)** 之間的差異與協作關係，旨在幫助開發者建立更高效、精確的 **AI Agent**。

---

## 1. 💡 什麼是 Agent Skill？

**Agent Skill** 本質上是大模型可以隨時翻閱的「**說明文檔**」或「**操作手冊**」。它解決了過去需要不斷重複貼上冗長 Prompt 的痛點。

* **核心功能**：明確規範大模型在特定任務中的行為準則（如：會議總結的格式、智能客服的應對禁忌）。
* **發展演進**：起初為 Claude 特定功能，現已成為 **VS Code**、**Cursor** 等工具支持的 **AI Agent** 通用設計模式。
* **優勢**：不需要在每次對話中重複指令，大模型會根據需求自動查閱對應的 Skill 說明。

> **Agent Skill** 就像是賦予 AI 一本「標準作業程序 (SOP)」，讓模型知道在特定情境下「該如何幹活」。

---

## 2. 🛠️ 基礎用法：建立你的第一個 Skill

以 **Claude Code** 為例，創建一個 **Agent Skill** 的步驟非常直覺。

### 建立結構

* **儲存路徑**：通常位於用戶目錄下的 `.claude/skill/` 文件夾中。
* **文件夾命名**：文件夾名稱即為該 **Skill** 的名稱（例如：`會議總結助手`）。
* **核心文件**：每個 Skill 目錄下必須包含一個 `skill.md`。

### skill.md 的組成部分

1. **元數據 (Metadata)**：由兩段短橫線包圍的頂部區域。
* `name`: 必須與文件夾名稱一致。
* `description`: 向模型描述此 Skill 的用途，作為模型選擇時的依據。


2. **指令 (Instruction)**：詳細描述模型需要遵循的規則、步驟與輸出範例（Few-shot）。

---

## 3. 🌊 核心機制：漸進式披露 (Progressive Disclosure)

**Agent Skill** 採用精密的「三層架構」來節省 **Token** 並提升效率，避免模型被過多無關訊息淹沒。

* **第一層：元數據層 (Metadata Layer)**
    * 始終加載：大模型只會先看到所有 Skill 的**名稱**與**描述**（輕量級目錄）。


* **第二層：指令層 (Instruction Layer)**
    * **按需加載**：當模型判定用戶請求符合某個 Skill 時，才會讀取該 Skill 的 `skill.md` 完整正文。


* **第三層：資源層 (Resource Layer)**
    * **按需中的按需**：包含更深層的 **Reference** 與 **Script**，僅在指令執行過程中判斷有必要時才觸發。



---

## 4. 🚀 高級用法：Reference 與 Script

為了處理更複雜的邏輯，**Agent Skill** 提供了兩種擴展資源的方式：

### Reference (參考資料)

* **行為**：被模型「讀取」。
* **觸發條件**：在 `skill.md` 中設定規則（如：提到「錢」時才讀取《財務手冊.md》）。
* **特點**：會消耗 **Token** 上下文，但只有在必要時才佔用。

### Script (腳本工具)

* **行為**：被「執行」。
* **觸發條件**：用戶提到特定操作（如：上傳、同步）時運行指定的腳本（如：`upload.py`）。
* **特點**：模型只關心執行方法與結果，**不讀取代碼內容**，因此幾乎不消耗上下文 **Token**。

---

## 5. ⚖️ Agent Skill vs. MCP：該選哪一個？

許多開發者會混淆 **Agent Skill** 與 **MCP (Model Context Protocol)**，其核心差異在於「數據」與「處理邏輯」的分工。

| 特性 | MCP | Agent Skill |
| --- | --- | --- |
| **本質** | 獨立運行的程序 | 說明文檔與輕量腳本 |
| **核心功能** | 連接數據源 (Connects to data) | 教會模型如何處理數據 (Teaches what to do) |
| **安全穩定性** | 較高，適合複雜業務 | 較低，適合輕量邏輯 |

> **官方定義差異：**
> "MCP connects Claude to data; Skills teach Claude what to do with that data."
> (MCP 將模型連接至數據，而 Skill 教導模型如何處理這些數據。)

### 總結建議

* **MCP**：適合用於查詢大型數據庫、讀取即時訂單狀態等「資料供給」任務。
* **Agent Skill**：適合定義格式規範、執行輕量自動化腳本或定義特定的「思考框架」。
* **最佳實踐**：在複雜場景中，通常會將兩者**結合使用**。

---
