如果你用過 Claude Code 或 Cursor,你一定遇過這個問題:每次開新對話,你都要重新說一遍「我用 TypeScript」「我偏好繁中說明」「部署用 DigitalOcean」……
2026 年,這個問題有了完美的解法:Agent Skills。
什麼是 Agent Skills?
Agent Skills(技能文件)是一種放在專案或主目錄的 Markdown 文件,用來告訴 AI 助手你的偏好、工作規則、技術棧選擇。
它的概念很簡單:寫一次,AI 永遠記住。
Skills 文件是純 Markdown 格式(.md),放在指定目錄後,AI 工具會在每次對話開始時自動載入,無需你每次重複說明。
為什麼台灣開發者特別需要?
相較於英文開發者,台灣開發者有幾個獨特需求:
- 語言切換痛苦:AI 預設用英文說明,你想要繁中,每次都要說
- 台灣特有技術棧:LINE Bot、台灣主機廠商(DigitalOcean TWD 方案)、繁中 README 格式
- 本地化知識缺失:AI 不懂台灣法規限制、台灣常用 API(如台灣銀行 API、悠遊卡 API)
- 繁中 Skills 資源幾乎為零:GitHub 上 22 萬+ Stars 的 agent-skills 相關倉庫幾乎全是英文
2026 Agent Skills 生態系現況
| 工具 | Skills 支援 | 格式 | 路徑 |
|---|---|---|---|
| Claude Code | ✅ 完整支援 | SKILL.md | .claude/skills/ |
| Cursor | ✅ 完整支援 | .cursorrules | 專案根目錄 |
| Gemini CLI | ✅ 原生支援 | GEMINI.md | 主目錄或專案根 |
| OpenAI Codex | ✅ 透過 AGENTS.md | AGENTS.md | 專案根目錄 |
| GitHub Copilot | 部分支援 | .github/copilot-instructions.md | Repo 根目錄 |
重要數字:截至 2026 年 4 月,GitHub 上 #agent-skills 話題合計超過 22 萬 Stars,Anthropic 官方倉庫 anthropics/skills 和 Addy Osmani 的 agent-skills 倉庫都已進入 GitHub 週榜——但繁中教學幾乎為零。
怎麼寫 Skills 文件
Skills 文件沒有嚴格語法,就是清楚的自然語言。以下是最有效的結構:
# [技能名稱] Skills
## 適用場景
- 什麼時候用這個 skill
- 適合的專案類型
## 核心偏好
- 偏好 A(具體說明)
- 不要做 B(明確禁止)
## 技術規格
- 語言/框架版本
- 命名規則
- 目錄結構
## 輸出格式
- 說明語言:繁體中文
- 程式碼:英文變數名
- 注釋:繁中
好的 Skills 寫法 vs 壞的寫法
| ❌ 模糊(沒效果) | ✅ 具體(有效果) |
|---|---|
| 用好的程式碼風格 | 遵循 Google TypeScript Style Guide,縮排 2 空格,使用 const 優先 |
| 用繁中 | 所有說明文字、程式碼注釋、README 用繁體中文;變數名用英文 camelCase |
| 部署到雲端 | 部署使用 DigitalOcean App Platform,node.js 環境,連線字串放 .env,不 hard-code |
實戰範例:台灣開發者場景
範例 1:LINE Bot 開發 Skills
# LINE Bot 開發 Skills
## 適用場景
開發 LINE Messaging API 相關功能、Webhook 處理、聊天機器人邏輯
## 技術棧
- 語言:Node.js 20 LTS(TypeScript)
- 框架:Express + @line/bot-sdk
- 資料庫:PostgreSQL(LINE User ID 對應本地 userId)
## LINE API 偏好
- 永遠驗證 LINE signature(x-line-signature header)
- Reply Token 有效時間 1 分鐘,超時用 Push Message API
- 文字訊息用 text type,圖片用 image type(不要 template 除非必要)
- Rich Menu 設定放獨立的 menu.json 管理
## 安全規則
- Channel Secret 和 Access Token 放 .env,不可出現在程式碼
- Webhook URL 驗證:回傳 200 OK 給 LINE,不要讓 LINE 重送
## 輸出格式
- 說明和注釋:繁體中文
- 變數命名:camelCase 英文(如 lineUserId,不是 line_user_id)
- 錯誤訊息:繁中(方便台灣用戶理解)
範例 2:全端快部署 Skills
# 部署偏好 Skills
## 適用場景
任何需要部署的 Web 應用、API、Bot 服務
## 主要部署平台(按優先序)
1. Vercel(Next.js / 靜態網站首選)
2. DigitalOcean App Platform(Node.js API / 全端應用)
3. Railway(有資料庫需求的服務)
## DigitalOcean 設定偏好
- 規格:Basic $12/月方案開始(1 vCPU / 1GB RAM)
- 地區:sgp1(新加坡,台灣延遲最低)
- 環境變數:App Platform 的 env vars 介面設定,不用 .env 部署
## 環境變數規則
- .env.example 必須提供(含所有 KEY,但值為空或範例值)
- .env 加入 .gitignore
- 生產環境 SECRET 長度至少 32 字元
## CI/CD 偏好
- 用 GitHub Actions 自動部署(main branch push → deploy)
- 測試環境:PR → preview deploy
各工具安裝步驟
Claude Code 安裝步驟
- 在專案根目錄建立
.claude/skills/目錄 - 把
line-bot.md、deploy.md等文件放進去 - 重新開啟 Claude Code 對話,自動載入
- 驗證:輸入「你知道我用哪個部署平台嗎?」,看 Claude 回答是否符合你的 Skills
Cursor 安裝步驟
- 在專案根目錄建立
.cursorrules(單一文件)或.cursor/rules/(多文件) - 把你的偏好規則貼入
- Cursor 會自動偵測並在下一個 Chat 對話中載入
Gemini CLI 安裝步驟
- 在主目錄(
~/)建立GEMINI.md作為全域 Skills - 或在專案內建立
GEMINI.md作為專案專屬 Skills - 兩個都有時,專案 Skills 優先級高於全域
進階技巧
技巧 1:模組化設計,一個 Skills 文件一個主題
不要把所有設定塞進一個大文件。分開成 language.md、deploy.md、security.md,讓 AI 只在需要時載入對應模組(節省 token)。
技巧 2:用 MUST / NEVER 強調關鍵規則
MUST: 每個函數都要有 JSDoc 注釋
NEVER: 不可在程式碼中 hard-code 任何 API key 或密碼
ALWAYS: 台灣市場的金額單位用新台幣(TWD),顯示格式 $XX,XXX
技巧 3:加入「反面範例」
只說「要這樣」不如同時說「不要那樣」。AI 理解禁止規則的效果往往比正面描述更準確。
技巧 4:定期更新 Skills
你換了框架、換了部署平台、加了新 API——記得同步更新 Skills 文件。把 Skills 版本控制在 Git 裡,方便追蹤變更。
直接用現成包(省時選項)
如果你不想花時間從零寫,可以直接使用我們整理的台灣 AI 開發者 Skills 包:
- 5 個針對台灣場景的 Skills 文件(LINE Bot / n8n / 全端部署 / 繁中文件 / 安全實踐)
- 每個文件附繁中說明,直接複製貼上或客製化
- 免費版:LINE Bot Skills 文件(從 GitHub 下載)
- 完整包:US$15,包含全部 5 個文件 + 說明 PDF
常見問題
Agent Skills 和 AGENTS.md / CLAUDE.md 有什麼不同?
AGENTS.md 是 Codex 的 agent 設定檔,CLAUDE.md 是 Claude Code 的整體規則。Agent Skills(SKILL.md)更聚焦在「特定技能模組」,可以有多個文件各司其職,並支援 lazy loading(用到才載入),節省 token。
Skills 文件會影響 AI 的推理速度嗎?
有輕微影響(多幾十 ms),因為 AI 需要載入並理解 Skills 內容。但相對於每次對話都要重新說明,這個代價微不足道。建議每個 Skills 文件控制在 500 字以內,保持簡潔有效。
寫 Skills 文件需要特殊格式嗎?
不需要。Skills 文件就是普通的 Markdown 文件,用自然語言描述你的偏好和規則。重點是要清晰具體,避免模糊說法。
台灣開發者最需要哪種 Skills 文件?
根據實際使用情況,最有效的是:(1) 語言偏好 Skills(讓 AI 預設輸出繁中說明),(2) 框架偏好 Skills(你用 Next.js 還是 Nuxt 就說清楚),(3) 部署偏好 Skills(DigitalOcean / Vercel / Railway 各有不同指令)。