Skip to content

15.1 Skills的工作原理概述

Skills執行的基本流程

Skills 的工作原理基於一個精心設計的執行流程,確保 AI 代理能夠高效、準確地利用封裝的專業知識。

核心執行階段

Skills 的工作原理可以分為三個主要階段:

1. 發現階段(Discovery)

  • 時機:AI 代理啟動時
  • 內容:掃描指定目錄,讀取所有可用 Skills 的元資料
  • 目的:建立 Skills 可用性索引,為後續匹配做準備

2. 啟動階段(Activation)

  • 時機:使用者請求與 Skill 描述匹配時
  • 內容:載入完整的 SKILL.md 檔案到上下文
  • 目的:取得詳細的使用指令和指導

3. 執行階段(Execution)

  • 時機:Skill 被選中執行任務時
  • 內容:根據指令執行操作,必要時載入額外資源
  • 目的:完成具體的任務執行

漸進式揭露的核心機制

為什麼需要漸進式揭露

AI 模型的上下文視窗是有限的資源。Skills 透過漸進式揭露機制,在保證功能完整性的同時,最大限度地最佳化上下文使用效率。

三層揭露架構

第一層:元資料層

yaml
---
name: pdf-processing
description: Extract text and tables from PDF files, fill forms, merge documents.
---
  • 內容:僅包含 name 和 description
  • 大小:約 50-100 tokens
  • 用途:快速判斷 Skill 相關性

第二層:指令層

markdown
# PDF Processing

## When to use this skill
Use this skill when the user needs to work with PDF files...

## How to extract text
1. Use pdfplumber for text extraction...
  • 內容:完整的 SKILL.md 檔案
  • 大小:通常 < 5000 tokens
  • 用途:提供詳細的使用指導

第三層:資源層

skill-directory/
├── SKILL.md
├── scripts/extract.py
├── references/API.md
└── assets/template.pdf
  • 內容:指令碼、文件、範本等資源檔案
  • 大小:按需載入,無固定限制
  • 用途:提供執行所需的實際資源

揭露機制的優勢

  1. 效能最佳化:初始載入僅佔用少量上下文
  2. 精確匹配:基於元資料快速篩選相關 Skills
  3. 彈性擴充:支援任意大小的知識庫
  4. 按需載入:只載入實際需要的資源

Skills的生命週期

1. 建立階段

  • 作者編寫 SKILL.md 檔案
  • 組織相關資源和指令碼
  • 測試 Skill 功能

2. 部署階段

  • 將 Skill 資料夾放置到指定目錄
  • 確保檔案權限和路徑正確
  • 更新版本控制(如需要)

3. 發現階段

  • AI 代理啟動時自動發現
  • 解析元資料並建立索引
  • 驗證 Skill 格式正確性

4. 啟動階段

  • 根據使用者請求匹配相關 Skills
  • 載入完整指令到上下文
  • 準備執行環境

5. 執行階段

  • 按照指令執行任務
  • 按需載入額外資源
  • 處理執行結果

6. 維護階段

  • 監控 Skill 使用效果
  • 根據回饋更新內容
  • 版本管理和相容性處理

Skills執行的上下文管理

上下文視窗最佳化

Skills 透過智慧的上下文管理,確保在有限的上下文視窗內提供最大價值:

選擇性載入

  • 只載入相關的 Skill 內容
  • 避免載入無關的 Skills
  • 優先載入高頻使用的部分

內容壓縮

  • 使用結構化的 YAML 元資料
  • 編寫簡潔的 Markdown 指令
  • 引用外部資源而非內嵌

快取機制

  • 快取已載入的 Skills
  • 重複使用相同任務的執行結果
  • 智慧預載入常用 Skills

總結

Skills 的工作原理建立在漸進式揭露和智慧上下文管理的基礎之上。這種設計既保證了功能的強大和彈性,又確保了執行的效能和擴充性。透過標準化的生命週期管理,Skills 能夠在 Claude Code 生態系統中發揮最大效能。