前面整理過:
CLAUDE.md / AGENTS.md
Rules
Commands / Slash Commands
接下來是:
Skills
可以先把 Skill 理解成:
把經常重複使用的工作流程整理起來,之後讓 AI 再次使用。
例如每次做某件事情,都會重複告訴 AI:
先檢查目前修改
↓
執行測試
↓
確認有沒有問題
↓
最後整理結果
如果這套流程之後還會一直使用,就可以考慮做成 Skill。
Skill 適合放什麼?
Skill 比較適合:
會重複使用
+
有固定步驟
+
之後仍然有價值
的工作方式。
例如:
建立 Commit
功能完成後的收尾
建立 Release
文件整理
測試流程
Security Check
以我目前使用的初始化流程來說,也會規劃像:
/commit
/wrap-up
/release
這類重複流程。
目的不是一開始建立很多 Skills,而是把之後可能反覆執行的工作整理起來。
為什麼不全部寫進 CLAUDE.md / AGENTS.md?
因為用途不太一樣。
可以先這樣理解:
CLAUDE.md / AGENTS.md
↓
AI 平常工作時一直需要知道的規則
Skill
↓
執行某件特定工作時
才需要的一套流程
例如:
這個專案統一使用 npm
這是整個專案都需要知道的資訊,比較適合:
CLAUDE.md
AGENTS.md
但假設功能完成後,每次都需要:
1. 檢查目前修改
2. 執行相關測試
3. 更新需要同步的文件
4. 整理尚未完成的事項
這種固定流程就比較適合整理成 Skill。
Skill 不需要一開始建立很多
Skill 跟 Rules 一樣,不是:
建立專案時一定要先準備完整的一套。
如果現在還沒有任何重複流程,其實完全可以不建立 Skill。
比較自然的方式是:
先正常跟 AI 工作
↓
發現某件事情一直重複
↓
每次都要重新說明流程
↓
再考慮整理成 Skill
所以 Skill 比較像:
用到之後才慢慢累積的工作流程。
Claude Code Skills
Claude Code 的專案 Skill 可以放在:
my-project/
└─ .claude/
└─ skills/
└─ wrap-up/
└─ SKILL.md
例如:
.claude/skills/wrap-up/SKILL.md
就代表一個叫做:
wrap-up
的 Skill。
最基本可以只有一份:
SKILL.md
裡面寫這個 Skill 的用途與執行步驟。
一個簡單的 Skill
例如功能完成後,希望 AI 幫忙檢查收尾:
---
description: 功能完成後使用,確認測試、文件與剩餘工作是否都已處理。
---
# 功能收尾
確認目前修改內容。
依序檢查:
1. 相關測試是否通過。
2. 是否有需要同步更新的文件。
3. 是否存在尚未處理的 TODO。
4. 整理本次修改內容與剩餘事項。
先做到這樣其實就已經可以了。
不需要一開始就加入很多:
scripts/
references/
assets/
Skill 之後確實還能再搭配 Script、參考文件或其他資源,但如果只是保存固定工作流程,一份 SKILL.md 就足夠。
Claude Code 怎麼使用?
例如 Skill 放在:
.claude/skills/wrap-up/SKILL.md
可以直接使用:
/wrap-up
呼叫。
Claude Code 也可以根據 Skill 的 description 判斷目前工作是否符合,在需要時自動載入 Skill。Skill 的完整內容不是每次 Session 一開始就全部載入,而是在真的使用時才讀取。
所以 description 最好簡單寫清楚:
這個 Skill 是做什麼,以及什麼情況適合使用。
不用一開始研究很多複雜設定。
Claude Code 的 Skill 放哪裡?
可以先記兩個位置:
.claude/skills/
↓
目前專案使用
以及:
~/.claude/skills/
↓
自己的多個專案都能使用
例如只有這個專案特有的:
功能完成收尾流程
可以放:
.claude/skills/
如果是不管做哪個專案都想使用的工作方式,才考慮:
~/.claude/skills/
Claude Code 官方目前也是以 Project 與 Personal Skill 區分這兩種使用範圍。
Codex 也支援 Skills
Codex 的概念很接近。
專案 Skill 主要放在:
my-project/
└─ .agents/
└─ skills/
└─ wrap-up/
└─ SKILL.md
所以要注意:
Claude Code
↓
.claude/skills/
Codex
↓
.agents/skills/
Codex 不是:
.codex/skills/
這一點比較容易搞混。
使用者自己的跨專案 Skill 則可以放:
~/.agents/skills/
Codex 官方目前會從 Repository 中的 .agents/skills/ 與使用者 $HOME/.agents/skills/ 尋找 Skills。
Codex 怎麼使用 Skill?
Codex 可以使用:
/skills
查看或選擇 Skill。
也可以在 Prompt 裡輸入:
$skill-name
例如:
$wrap-up 幫我整理目前功能的收尾工作
Codex 也可以根據 Skill 的 description 自動判斷目前任務是否適合使用。
所以 Claude Code 與 Codex 的核心概念其實很接近,只是目錄與手動呼叫方式不同。
Claude Code / Codex 簡單對照
| 項目 | Claude Code | Codex |
|---|---|---|
| 專案 Skill | .claude/skills/ | .agents/skills/ |
| 使用者 Skill | ~/.claude/skills/ | ~/.agents/skills/ |
| 主要文件 | SKILL.md | SKILL.md |
| 手動使用 | /skill-name | /skills 或 $skill-name |
| 可依任務自動選擇 | 可以 | 可以 |
如果目前只想先理解 Skill,其實先知道這些就夠了。
Skill 跟 Rules 差在哪?
這是我覺得比較重要的差別。
可以先簡單記:
Rules
↓
平常工作時需要遵守什麼
Skills
↓
遇到某件事情時應該怎麼做
例如:
新增 Production Dependency 前需要確認
比較像:
Rule
因為不管正在處理什麼工作,都希望 AI 遵守。
但是:
功能完成後:
1. 執行測試
2. 檢查文件
3. 整理 TODO
4. 輸出收尾摘要
比較像:
Skill
因為只有進行「功能收尾」時才需要執行這套流程。
不知道該不該做成 Skill,也可以問 AI
如果已經發現某些 Prompt 一直重複,但不知道:
這到底值不值得做成 Skill?
也可以直接請 AI 幫忙判斷:
請檢查我們最近重複使用的工作流程。
哪些內容適合整理成 Skill?
哪些應該留在 CLAUDE.md / AGENTS.md?
先提出建議,不要直接建立檔案。
如果確定某一套流程值得留下,也可以再請 AI:
請把這套流程整理成一個最簡單的 Skill。
先只建立 SKILL.md,
不要額外加入 Script 或其他複雜設定。
這樣不用一開始就自己研究完整 Skill 規格。
什麼時候才值得建立 Skill?
我目前會先用一個很簡單的方法判斷:
這套工作方式,我是不是已經重複講過很多次?
如果只是:
幫我修改首頁按鈕
這種一次性工作,就沒有必要建立 Skill。
但如果每次都會出現:
先做 A
↓
再檢查 B
↓
執行 C
↓
最後按照固定格式整理
而且之後還會再做,就可以考慮整理起來。
最後簡單整理
可以先把前面的概念整理成:
CLAUDE.md / AGENTS.md
↓
專案平常需要知道的規則
Rules
↓
規則變多後再分類整理
Commands
↓
快速控制 CLI / Session
Skills
↓
保存會重複使用的工作流程
Skill 不需要一開始建立很多。
比較自然的方式是:
正常跟 AI 工作
↓
發現某個流程一直重複
↓
請 AI 協助整理
↓
確認真的值得保留
↓
再建立 Skill
對我來說,先知道:
「重複工作流程可以整理成 Skill」
就已經足夠。
等真的開始需要 Script、Reference、更多 Frontmatter 或進階設定時,再另外研究即可。