「我把 Skills 放進去了,但為什麼 Claude 沒有觸發?」
「~/ 這個符號是什麼意思?」
「專案和全局到底要怎麼選?」
如果你剛開始用 Claude Code 的 Skills 功能,這篇一定要看完!這決定了你的 AI 員工到底「聽不聽話」。
先搞懂 ~ 這個神秘符號
很多新手看到 ~/.claude/skills/ 就懵了——這個波浪號是什麼?
其實 ~ 就是「你的個人家目錄」的縮寫:
- 在 Mac 上 =
/Users/你的名字/ - 在 Windows 上 =
C:\Users\你的名字\
所以當你看到 ~/.claude/skills/,它其實指的是:
- Mac:
/Users/你的名字/.claude/skills/ - Windows:
C:\Users\你的名字\.claude\skills\
一句話記住: ~ = 你電腦的「家」,所有專案都能碰到的地方!
兩種存放位置的真正區別
A. 專案級別:.claude/skills/
這個路徑前面「沒有」波浪號。它代表 Skill 放在你現有的程式專案資料夾裡面。
這不是說你要在 Claude 裡面開一個新檔案夾叫「專案」!而是直接在你正在寫的 Code 專案根目錄下,新增一個 .claude 資料夾。
B. 全局級別:~/.claude/skills/
這個路徑前面「有」波浪號。它代表 Skill 放在你的個人電腦系統層級。
不管你現在開啟哪一個專案工作,放在這裡的「全局 Skills」都會自動被 Claude 讀取到!
什麼時候該用哪個?
請放全局 ~/.claude/skills/ 的情況
通用型工具,不管寫什麼 Code 都會用到:
- skill-creator:寫 Skill 時隨時需要
- code-reviewer:任何專案都需要審查代碼
- commit-helper:每個專案都要寫 commit message
- social-media-post:跨專案都可能要發貼文
請放專案 .claude/skills/ 的情況
針對「這個專案」特有的規範:
- 公司特定 coding style:只有這間公司的專案要遵守
- 專案 API 文檔生成器:只適用於這個專案的格式
- 團隊特殊工作流:只有這個團隊在用的流程
我踩過的坑:skill-creator 放錯位置
分享一個我的慘痛經驗。我之前把 skill-creator(一個幫助寫 Skills 的工具)放在了「專案級別」。
結果?當我切換到另一個新專案,想讓 Claude 幫我寫新 Skill 時,它完全不知道有這個工具存在!
❌ 錯誤做法:
把通用工具放在 我的專案A/.claude/skills/
→ 只有在專案 A 才會觸發
✅ 正確做法:
把通用工具放在 ~/.claude/skills/
→ 不管在哪個專案,想寫 Skill 時都能自動觸發!
如果一個 Skill 你會在「兩個以上的專案」用到,就毫不猶豫放全局!
新手常見問題 QA
Q: 兩個地方都有同名 Skill 怎麼辦?
A: 優先順序是【企業級 > 個人全局 > 專案級】。如果全局和專案都有 my-skill,通常會優先使用全局設定(視版本而定,建議不要取同名)。
Q: 子資料夾的 Skills 會被讀取嗎?
A: 會!支援 Monorepo 結構。如果你在 packages/frontend/ 工作,Claude 也會讀取該目錄下 .claude/skills/ 裡的 Skill。
Q: 為什麼我的 Skill 放對了卻沒觸發?
A: 檢查你的 SKILL.md 裡的 description。Claude 是靠「閱讀描述」來決定何時啟用,描述寫得越具體,觸發越準確!
結論:從「放哪都行」升級為「策略性部署」
- ❌ 新手思維:隨便放,反正能跑就好
- ✅ 進階思維:通用工具放全局、專案專用放專案
搞懂這個區別,你的 Claude Code 工作流效率會大幅提升!