iT邦幫忙

2026 iThome 鐵人賽

DAY 15
0
Vibe Coding

老闆不會教你的 Vibe Coding 實戰 30 天系列 第 15 篇

老闆不會教你的 Vibe Coding 實戰 30 天|Day 15:Skills 是什麼,就是學會你做事方法

  • 分享至 

  • xImage
  •  

https://ithelp.ithome.com.tw/upload/images/20260925/20119486axHqrc0JYF.png

前言

我們來到 Day15 也是 Week3 的第一天啦~

相信上一週體驗 MVP 開發的過程中,你應該會發現一些問題,像是某些話一直在不停的重複講好幾次,例如:commit 訊息要怎麼寫。

儘管 CLAUDE.md 裡面有寫了一些規則(通用),但有些東西它還是沒有寫進去,更不用說 CLAUDE.md 有一個建議行數上限(約 200~250 行左右),這些東西如果塞進去會太肥,每次重講又太累。

所以今天我們就要來認識一個新的東西,叫做「SKILL」。

SKILL:你的專屬技能

所以 SKILL 是什麼呢?簡單來講,它就只是一個資料夾以及一個 Markdown 檔案(類似於純文字檔案、CLAUDE.md 這類檔案)而已。

「這麼單純?」你可能會這樣想。

對,真的就是這麼單純。

但它帶來的威力可一點都不單純,因為這些 SKILL 裡面會包含這些:

  • 步驟
  • 規則
  • 範例

甚至會有寫好的執行輔助程式碼,讓你在需要的時候可以直接使用。

還是很難理解它的威力如何對吧?這邊我們先切換視角到比較遊戲面一點的概念去形容,或許你會更好懂。

假設你今天正在玩一款 RPG 遊戲,你控制、遊玩的遊戲角色通常會許多技能(Skill),像是「火球術」、「治癒術」、「隱身術」等等,這些就是你在遊戲中可以使用的技能。

所以當我們想要使用這些技能時,只需要大喊一聲:

「我要使用火球術!」

接著遊戲角色就會自動幫你施展這個技能。

那為什麼我們只要說「我要使用火球術!」就可以施展技能呢?正常來講,當我們要施展特定技能,如:「火球術」的時候,遊戲角色需要知道這個技能的施展方式、施展步驟、施展規則等等,如果你事先把這些準備好,那你可能要先畫出魔法陣、準備好魔法材料、唸咒語等等,這樣才能施展技能,但當你封裝成技能後,你可能只需要唸出咒語、準備好魔法材料就可以直接跳過畫出魔法陣這個繁瑣的步驟,直接施展技能。

https://ithelp.ithome.com.tw/upload/images/20260928/2011948633wWBNLrMY.png

理解之後,我們就可以把這些概念拉回到 AI 世界的 SKILL 上(就像是遊戲角色的技能一樣),你只要告訴 Claude 你想要使用某個 SKILL,它就會自動幫你完成這個技能所需要的步驟、規則、範例等等,讓你可以更快速、更有效率地完成任務。

SKILL 是 Claude 專屬功能嗎?不,市面上的 AI 廠商都有提供 SKILL 這個功能,但由於我們是以 Claude Code 為主,所以還是會圍繞在 Claude Code 的 SKILL 來做說明,而其他的 AI 廠商設定基本上你上網查一下都可以找到,而且都很雷同、相似。

那這個 SKILL 它會放在哪裡呢?這邊我們先來看它會長什麼樣子。

首先,你會有一個 .claude 的資料夾,裡面放一個資料夾叫做 skills,然後每一個 SKILL 都是獨立的資料夾,裡面還會有一份 SKILL.md:

.claude/
└── skills/
    └── commit-message/   ← 這個資料夾的名字就是 SKILL 的名字
        └── SKILL.md

那這個 skills 這個資料夾基本上會有兩個地方可以放,分別是:

  • 放在你的專案的: 這個稱為「專案型 SKILL」,主要跟著專案走,團隊拉下這個專案就會一起共享使用(所以也可以拿來限制團隊,例如...commit message 格式)。
  • 放在你電腦的的(也就是 ~/.claude/skills/,~ 代表你的電腦最頂層目錄,Mac 是 /Users/你的名字,Windows 是 C:\Users\你的名字): 這是「個人用的 SKILL」,預設會把你全部開啟的專案都套用,但不會被 commit 進任何專案。

而觸發方式也有兩種:

  • 你打 /資料夾名稱(像上面那個就是 /commit-message)手動叫它出來。
  • AI 自己判斷現在的任務是不是跟某個 SKILL 的描述對得上,對得上就自己翻出來用。

很有趣吧?這邊讓我們繼續認識 SKILL 的威力吧。

SKILL 其實可以分三種

相信你對於 SKILL 應該有基本認識了,接下來我想再更拆分 SKILL 的概念。

因為我認為 SKILL 還可以分成三種類型的 SKILL:

  • 知識型:
    • 這裡面裝的是規則、慣例、風格,例如「這個專案 commit 訊息要怎麼寫」、「Vue3 主要語法有哪些?」 諸如此類。
    • 這種 SKILL 通常不會是要 AI 去做某件事,而是避免 AI 使用過時的資訊或錯誤的資訊,用 RPG 概念來講,它就像 被動技能 一樣是一個常駐技能,你不用喊、呼叫,AI 就會自己判斷並掛入了。
  • 流程型:
    • 裝的會是一步一步的 SOP,例如「修 bug 怎麼跑」、「上線之前要跑哪些流程」,通常你需要他做才呼叫這個 SKILL。
    • 你不會希望 AI 有事沒事就跑這一大票流程,畢竟一個 deploy 一個產品可能要跑很多,套用 RPG 概念,這就是一個 主動技能,你要喊出招式(也就是 /名稱),然後 AI 才會幫你施展這個技能。
  • 工具型:
    • 最後一種比較特別一點,裡面會包含了寫好的程式碼(通常會放在 scripts/ 底下),好處是 AI 不用每次自己重寫一遍,直接跑這一段程式碼就好了,就像...「把 CSV 資料畫成圖表」、「批次壓縮圖片」(我個人就很常跑批次壓縮圖片),一樣套用上 RPG 來講,概念就像 「具備技能的魔法道具」 裝備之後,AI 就可以直接使用這個道具的技能。

為什麼我會這樣拆分呢?其實也是在順便回答觸發方式,畢竟知識類型的 SKILL 你會希望 AI 預設就判斷要不要用(沒事你會想要一直打 /請使用台灣用語 嗎?),流程型的 SKILL 你又不希望 AI 自己亂跑(畢竟一個流程可能要跑很多步驟),所以就有了兩種觸發方式。

當然,上面的拆分方式並不是官方所定義與區分的(官方只區分「參考知識」與「任務流程」兩種),而是我個人認為再細分成三種或許你會更好理解使用時機,也才不會讓一個 SKILL 變成一坨什麼都塞的大雜燴。

SKILL 與斜線指令之間的曖昧關係

接下來聊一下 SKILL 與斜線指令之間的曖昧關係,如果你有自己學 Claude Code 的話,你可能會看過一個東西叫做 commands,它的概念就是「自訂斜線指令」。

前面章節中,我們有嘗試過 /rewind、/clear、/compact 等這類內建斜線指令,這些都是 Claude Code 提供的預設指令,然後這些指令是無法調整的的,因此 Claude Code 為了解決上面的問題(當時還沒推出 SKILL)就開放出你可以自訂這些指令,這些自訂斜線指令的格式是放在 .claude/commands/ 底下,然後也是一個 .md 檔案,內容也是 Markdown 格式...

對,沒錯,就跟 SKILL 87% 像。

所以我們到底該用什麼呢?我個人其實會乾脆建議你用 SKILL 就好,畢竟可以通用於不同的 AI 廠商(如 Codex、Gemini 等)。

這邊我也提供一張表讓你看清楚 Skills、內建斜線指令、自訂斜線指令之間的關係:

內建斜線指令 自訂斜線指令(舊) Skills
例子 /help、/clear、/compact .claude/commands/ 裡的 .md .claude/skills/ 資料夾
性質 寫死在 Claude Code 裡的功能 自訂的 prompt 範本 完整技能包

跟 CLAUDE.md 怎麼分工

接下來聊另一個可能混亂的議題,也就是「我到底要寫在 CLAUDE.md 還是寫在 SKILL 裡面呢?」。

其實很簡單,你記住一句話就好:

一個是絕對最高原則的憲法,一個是需要才用的技能。

這也是為什麼前面會這樣規劃了,畢竟每次 /clear(/new)都會把 CLAUDE.md 重新載入,這就像是「憲法」一樣,而技能只有在你需要的時候才掛載進來(但實際上技能的描述也會掛入,但不會整包技能掛進來,後面我們會再來介紹),所以你只知道這技能叫做「火球術」,但你不會知道它的施展方式、施展步驟、施展規則等等,這些都會在你需要的時候才掛載進來。

而這種設計也是節省 Context 佔用的一種方式。

Skills 可以用裝的之 /plugin 指令初體驗

認識了前面的 SKILL 概念之後,你是不是覺得我們接下來就是寫自己的 SKILL 呢?

當然沒有,自己開始寫 SKILL 這件事情太硬了,所以我們先來體驗另一種方式,也就是「用安裝的」。

「蛤?用安裝的?」

對,其實就是把別人寫好的 SKILL 給你用,不用自己從零開始寫。

所以接下來請你打開終端機,並輸入 claude 進入到 Claude Code 模式,接著輸入 /plugin,接著你可以在 Discover 逛逛看看:

https://ithelp.ithome.com.tw/upload/images/20260925/20119486iErKk3PzMT.png

那這邊我們就舉例安裝 skill-creator 這個 SKILL,找到它之後按下空白鍵,讓它變成選取狀態,就可以按下 Enter:

https://ithelp.ithome.com.tw/upload/images/20260925/20119486PfSs9irKcP.png

接著這邊我個人會建議把這個 SKILL 安裝在「個人」這個層級,因為這個 SKILL 是我個人用的,跟專案沒有關係,所以我會選擇裝給個人用,而不是只裝給這個專案:

https://ithelp.ithome.com.tw/upload/images/20260925/20119486RvBiK1mNNx.png

Note
簡單來講 skill-creator 這個 SKILL 可以幫助你建立新的 SKILL,對於想封裝屬於自己的 SKILL 的人來講,非常方便。

如果懶的自己慢慢找的話,也可以改輸入指令的方式:

/plugin install skill-creator@claude-plugins-official

安裝完畢後,別忘了輸入 /reload-plugins 讓它生效。

那這邊你可能會發現一件奇怪的事,明明我們裝的是 SKILL,它卻不是放在 ~/.claude/skills/ 底下,而是跑去 ~/.claude/plugins/ 了。

其實這兩個資料夾的差異不在「放哪裡」,而是在「誰負責管理」。

~/.claude/skills/ 是你手動管理的區域,你自己把 SKILL 資料夾丟進去、自己更新、自己刪除,Claude Code 只負責讀取,它根本不知道也不在乎這些檔案是從哪裡來的。

可是從 marketplace 安裝的東西就不一樣了,Claude Code 必須幫你「記帳」,也就是記下這一包是從哪個 marketplace 來的、版本是多少、什麼時候裝的,有這些紀錄它之後才有辦法幫你檢查更新跟移除,所以這些帳本跟檔案就會統一收在 ~/.claude/plugins/ 底下,讓它自己管理(有興趣的話可以打開 ~/.claude/plugins/installed_plugins.json,裡面就是一筆一筆的安裝紀錄)。

簡單來講就像手機一樣,你自己傳到手機裡的檔案,系統不會幫你更新,可是從 App Store 裝的 App,因為商店知道它的來源跟版本,所以才有辦法幫你自動更新、一鍵移除,也因此這些 App 會被收在系統自己管理的地方。

另外還有一個更根本的原因...

「plugin 不等於 skill。」

skill 只是 plugin「可能」攜帶的其中一種東西而已,一個 plugin 裡面還可以帶自訂斜線指令(對,就是前面提到的那個)以及其他更進階的功能,所以安裝的單位其實是「一整包 plugin」,自然就是放在 ~/.claude/plugins/ 底下囉。

也因為 plugin 是獨立管理的,它帶進來的 skill 在呼叫時會自己掛上 plugin 的名字,變成 /plugin名稱:skill名稱 這樣的格式,因此不用擔心跟你自己放在 ~/.claude/skills/ 的 SKILL 打架。

那要怎麼知道一個 plugin 會裝哪些東西進來呢?你可以在安裝前點進該 plugin 的細節頁查看它的內容,裡面會有一個 Will install 的欄位,告訴你這個 plugin 會裝哪些東西進來:

https://ithelp.ithome.com.tw/upload/images/20260925/20119486JT7VTI3084.png

Note
如果可以,盡可能 plugin 只裝官方 marketplace 的,因為官方的 plugin 都有經過審核,安全性相對比較高。

結語

那麼這邊 SKILL 章節也差不多了,就讓我們做個最後總結吧?

  • SKILL 其實就只是一個資料夾 + 一份 SKILL.md,放在專案就是專屬於那個專案,放在 ~/.claude/skills/ 就是你自己所有專案通用(也就是你的電腦全吃)。
  • 觸發方式主要有兩種:
    • 你手動打 /名稱 呼叫,
    • 讓 AI 自己依照描述來判斷要不要用跟呼叫。
  • 把 SKILL 區分為三種:
    1. 知識型(被動技能,AI 自己掛上)。
    2. 流程型(主動技能,你喊招式才施展)。
    3. 工具型(具備技能的魔法道具,附程式碼直接跑)。
  • 自訂斜線指令跟 SKILL 有 87% 像,但建議直接用 SKILL 就好,畢竟 SKILL 可以通用於不同的 AI。
  • CLAUDE.md 是每次都會載入的最高「憲法」,SKILL 是需要才掛入的「技能」,需要每次都要遵守的寫進憲法,偶爾才用的封裝成 SKILL。
  • SKILL 可以用安裝的(/plugin ),但裝之前記得看一下 Will install 會裝哪些東西,並盡量以官方 marketplace 為主。
  • 有兩種安裝方式:
    • 自己寫的 SKILL 放在 ~/.claude/skills/。
    • 用裝的則會收在 ~/.claude/plugins/。

那麼如果沒問題的話,就讓我們到這邊結束啦~

我們明天見。


上一篇
老闆不會教你的 Vibe Coding 實戰 30 天|Day 14:Week 2 收尾之 AI 寫的 code 到底要不要看
下一篇
老闆不會教你的 Vibe Coding 實戰 30 天|Day 16:讓畫面變好看(上)之 Frontend Design
系列文
老闆不會教你的 Vibe Coding 實戰 30 天 共 19 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言