再稍微整理一下 agent skills 使用心得。
原本沒打算再寫一篇關於 agent skills 的筆記,因為它的概念很簡單、很容易上手,而且網路上已經有很多文章和影片介紹了,感覺不是很必要再寫點什麼。因此,剛開始我只是在臉書上面隨便打幾個字,想簡單分享一下而已。後來想想,既然寫了,就還是再稍微整理一下,也發到部落格來。
只是簡單講講「我理解的 skills」的重點。(有些圖片是把上一篇筆記的圖片拿來重複使用)
漸進式揭露 (progressive disclosure)
使用 skills 最大好處之一是可以節省 token,因為它採用了「漸進式揭露」(progressive disclosure)的策略,或者說是 load on demand。
兩段式掃描機制
要做到 load on demand,仰賴的是兩段式的掃描過濾機制:
- 第一段掃描:
掃描 SKILL.md frontmatter 區塊中的 description 屬性。 👉 其目的是讓 agent 判斷當前的提示詞(prompt)是否適合使用這個 skill,因此這個欄位的描述非常重要,不應隨意填寫。 - 第二段過濾:
檢查 SKILL.md 的內文。 如果內容中有定義觸發條件(triggers),agent 也會進行評估。即使通過了第一段掃描,但若 triggers 定義的條件與當前情境不符,agent 仍不會執行該 skill。觸發條件是選用的(optional),不是每個 skill 都要寫。
命名與結構
Skill 資料夾名稱建議採用 kebab-case(烤肉串)方式命名。資料夾內除了 SKILL.md 檔案,還可以包含 scripts 子目錄,用來存放與該技能相關的程式碼。
有趣的是,我曾經遇到 agent 在執行某個我剛寫好的 skill 時,它自動產生了 Python script,而且是把它放在「專案根目錄下的 scripts 目錄」。當我手動將其移至該 skill 目錄下的 scripts 資料夾後,agent 下次執行時又把它移了回去。
後來我明確告知 agent:「為了保持 skill 的自我完整性與獨立性,請將相關腳本與 SKILL.md 放在一起」,它才停止了搬移的行為。(我用的是 Antigravity)
Skills 越多越好?
我看到一個 Youtube 影片有點意思:
頻道主相當幽默,開頭還安排了一個梗,讓人誤以為是全英語的影片。
影片中的建議是盡量蒐集 skills:「寧濫勿缺」,而非「寧缺勿濫」——意思是,多樣化的工具能應對更多場景,而不是擔心太多的工具會造成混亂(只要描述寫得好)。
不過,蒐集了 300 個 skills,還真是挺多的。我自己算了算目前電腦裡面的 skills,自己寫的、加上網路上蒐集來的,也不過 20 個左右。
來挖寶
除了 Anthropics 在 GitHub 上面提供的 Skills,以下表格列出其他可以挖寶的 skills GitHub 倉庫:
| Repo 名稱 | 描述 | 連結 |
|---|---|---|
| heilcheng/awesome-agent-skills | 彙整 Claude、Codex、Copilot 等 agent skills 清單,包含官方與社群技能、教程。 | https://github.com/heilcheng/awesome-agent-skills |
| Prat011/awesome-llm-skills | 蒐集 LLM 和 AI agent skills 資源,支援 Claude Code、Codex 等自訂工作流程。 | https://github.com/Prat011/awesome-llm-skills |
| travisvn/awesome-claude-skills | 專注 Claude skills 清單,包含資源與自訂工具指南。 | https://github.com/travisvn/awesome-claude-skills |
| skillcreatorai/Ai-Agent-Skills | 彙整各大 AI agent skills,提供 CLI 安裝器。 | https://github.com/skillcreatorai/Ai-Agent-Skills |
| vercel-labs/agent-skills | AI coding agents skills 收藏,遵循 Agent Skills 格式。 | https://github.com/vercel-labs/agent-skills |
Keep learning!
沒有留言: