跳到主要內容
AI 與工具

AI 相關紀錄 v7|Skills:把重複工作流程整理起來

介紹 Claude Code 與 Codex Skills,整理適合保存成 Skill 的重複流程、基本結構與使用方式。

W

前面整理過:

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 CodeCodex
專案 Skill.claude/skills/.agents/skills/
使用者 Skill~/.claude/skills/~/.agents/skills/
主要文件SKILL.mdSKILL.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 或進階設定時,再另外研究即可。

分享這篇