為每個請求選擇 Auto、TokenLab Verified 或 Official,並預先顯示價格。 查看最新動態

Claude Code Skills:為您的 AI 編碼助手打造自訂工作流程

·2026年9月19日·約 6 分鐘閱讀·更新 2026年10月17日·3290 次瀏覽
#Claude Code#Skills#AI Coding#Developer Tools
Claude Code Skills:為您的 AI 編碼助手打造自訂工作流程

Claude Code 附帶一個通用的 AI 助手。技能(Skills)能讓您對其進行專業化定制。技能是一個 Markdown 文件,用於教導 Claude Code 如何處理特定類型的任務:部署到 Kubernetes、編寫數據庫遷移、審查 Pull Request,或遵循團隊的編碼規範。

「幫我寫一個 React 組件」與「幫我寫一個遵循我們設計系統、使用自定義 Hooks,並具備適當錯誤邊界和無障礙屬性的 React 組件」之間的區別,就在於技能。

Claude Code 官方文檔現在明確了一點:自定義命令(custom commands)已併入技能中。位於 .claude/commands/ 中的現有文件仍然有效,但技能是推薦的抽象方式,因為它們支持更豐富的元數據、支持文件和自動加載。如果您現在正在標準化團隊工作流,請優先將其構建為技能,並將舊版命令視為兼容路徑。

技能究竟是什麼

技能存放在一個帶有 SKILL.md 入口文件的目錄中。當描述與當前任務匹配時,Claude 可以自動加載它,或者您也可以通過 /skill-name 直接調用。

.claude/
  skills/
    deploy/
      SKILL.md         # /deploy
    review-pr/
      SKILL.md         # /review-pr
    write-test/
      SKILL.md         # /write-test

Claude 仍然支持 .claude/commands/deploy.md,且斜槓命令也依然有效。但現代化的版本是 .claude/skills/deploy/SKILL.md。

這聽起來只是微小的命名變化,但其實很重要,因為技能可以攜帶支持文件、Frontmatter、調用控制和子代理(subagent)提示。一個精簡的命令文件可以告訴 Claude 做什麼。而技能則可以告訴 Claude 您的團隊期望如何完成這項工作。

編寫您的第一個技能

這是一個實際範例:一個強制執行團隊 Commit 消息規範的技能。

創建 .claude/skills/commit/SKILL.md:

---
name: commit
description: Generate and validate conventional commits for this repo.
---

# Commit Workflow

## Steps
1. Run `git diff --staged` to see what's being committed
2. Analyze the changes and categorize: feat, fix, refactor, docs, test, chore
3. Write a commit message following our convention:
   - Format: `type(scope): description`
   - Scope is the package or module name
   - Description is imperative mood, lowercase, no period
   - Body explains WHY, not WHAT
4. If changes touch multiple scopes, create separate commits
5. Run `git commit -m "message"` with the generated message

## Rules
- Never use `--no-verify` to skip hooks
- Never amend published commits
- If tests fail in pre-commit, fix the issue first

## Examples
- `feat(billing): add stripe webhook handler`
- `fix(auth): handle expired refresh tokens`
- `refactor(api): extract rate limiter to shared package`

現在,/commit 會為 Claude Code 提供一個結構化的工作流,而不是模糊的「提交我的更改」指令。

如果您已有舊版命令文件,請在遷移時保持其運行,但不要再對舊佈局進行投入。官方文檔已明確指出,技能是未來的發展方向。

技能現在存放在哪裡

Claude Code 目前從四個位置發現技能:

  • 個人技能:~/.claude/skills/<skill-name>/SKILL.md
  • 項目技能:.claude/skills/<skill-name>/SKILL.md
  • Monorepo 中的嵌套項目技能
  • 插件提供的技能

這為您提供了清晰的劃分:

  • 個人技能用於您自己的工作風格
  • 項目技能用於倉庫規範
  • 插件技能用於可重用的封裝工作流

為了讓團隊採用,請將項目技能提交到倉庫。這就是「我的筆記本上有個不錯的 Prompt」與「團隊現在擁有了可重複的工作流」之間的區別。

技能設計模式

清單模式 (The Checklist Pattern)

最適合具有多個驗證步驟的任務。

# Pre-Deploy Checklist

Before deploying, verify each item:

- [ ] `pnpm typecheck` passes
- [ ] `pnpm test` passes
- [ ] No console.log statements in production code
- [ ] Environment variables documented in .env.example
- [ ] Database migrations are reversible
- [ ] API changes are backward compatible

If any check fails, stop and report the issue. Do not proceed with deployment.

決策樹模式 (The Decision Tree Pattern)

最適合處理方式取決於上下文的任務。

# Bug Fix Workflow

1. Reproduce the bug (find or write a failing test)
2. Identify the root cause:
   - If it's a type error → fix the type definition at the source
   - If it's a race condition → add proper locking/sequencing
   - If it's a missing validation → add schema validation at the boundary
   - If it's a logic error → fix and add regression test
3. Verify the fix doesn't break existing tests
4. Write a test that would have caught this bug

模板模式 (The Template Pattern)

最適合生成一致的輸出。

# New API Endpoint

Create a new API endpoint following our conventions:

## File Structure
- Route handler: `apps/api/src/routes/{resource}/{action}.ts`
- Schema: `apps/api/src/schemas/{resource}.ts`
- Test: `apps/api/src/routes/{resource}/__tests__/{action}.test.ts`

## Required Elements
- Zod schema for request validation
- Authentication middleware
- Rate limiting
- Structured error responses using errorResponse()
- Success responses using successResponse()
- OpenAPI documentation comments

安裝社區技能

Claude Code 生態系統擁有不斷增長的社區技能庫。您可以使用以下命令安裝:

npx add-skill username/repo-name -y

熱門技能集合:

  • coreyhaines31/marketingskills (29 個營銷/SEO 技能)

安裝的技能會出現在 ~/.claude/commands/ 中,並適用於所有項目。 安裝的技能包越來越多地暴露真正的技能,而不僅僅是斜槓命令 Markdown。如果您維護自己的倉庫,來自 OpenCode + TokenLab 的模式同樣適用:讓技能貼近工作流,而不是隱藏在臨時的 Prompt 文件中。

項目 vs 全局技能

位置 範圍 使用場景
.claude/skills/ 僅限此項目 項目規範、部署工作流
~/.claude/skills/ 所有項目 個人偏好、可重用的習慣
.claude/commands/ 舊版兼容 仍然有效的舊版斜槓命令文件

項目技能應該提交到您的倉庫,以便整個團隊受益。全局技能則用於個人工作流偏好。

進階:帶有 Hooks 的技能

技能可以引用 Hooks(在特定事件上運行的 Shell 命令)來實現自動化強制執行:

# Pre-Commit Check

Before any commit, the following hooks run automatically:
- `pre-commit`: runs typecheck + lint
- `post-commit`: updates changelog

If a hook fails, investigate the error output and fix the issue.
Do not use --no-verify to bypass hooks.

Hooks 本身在 .claude/settings.json 中配置:

{
  "hooks": {
    "pre-commit": "pnpm typecheck && pnpm lint-staged"
  }
}

這就是技能超越 Prompt 片段的地方。一個實用的團隊設置通常包含三個層次:

  1. 告訴 Claude 工作流的技能
  2. 強制執行工作流的 Hooks
  3. 向人類解釋工作流的倉庫文檔

如果缺少其中一層,系統就會變得脆弱。沒有 Hooks 的技能變成了建議性的;沒有技能的 Hooks 變得不透明;兩者都沒有的文檔則變成了沒人遵守的過時政策。

支持文件才是真正的升級

優先選擇技能而非舊版命令 Markdown 的最重要原因是支持文件。

使用命令文件,所有內容都必須擠在一個塊中。而使用技能目錄,您可以保留:

  • 模板
  • 範例
  • Shell 助手
  • 較長的參考筆記
  • 驗證器腳本

這讓您可以保持 SKILL.md 簡短且高信號,同時在需要時為 Claude 提供結構化的材料來提取。

這對於以下場景特別有用:

  • 部署工作流
  • 模式遷移清單
  • 多步驟代碼審查流程
  • 特定產品的集成手冊

如果您的團隊還在使用多個模型或多個編碼工具,請將此頁面與 2026 年最佳 AI 編碼模型比較 以及 Cursor / Cline / Windsurf 設置指南 配合使用。當底層模型或編輯器發生變化時,優秀的技能會變得更加重要。

編寫高效技能的技巧

  1. 明確文件路徑和命名規範。「創建一個組件」很模糊。「在 src/components/ui/ 中使用 PascalCase 命名創建一個組件」則具有可操作性。

  2. 包含正確輸出的範例。Claude Code 從範例中學習的效果優於抽象規則。

  3. 定義「不要做什麼」。「永遠不要使用 any 類型」比「使用正確的類型」更容易強制執行。

  4. 保持技能專注。一個工作流對應一個技能。一個涵蓋所有內容的 200 行技能,不如五個各司其職的 40 行技能實用。

  5. 為您的技能標註版本。隨著規範的演進,請更新技能。過時的技能比沒有技能更糟,因為它們會強制執行舊模式。

  6. 決定技能應該自動加載還是僅手動運行。許多團隊忘記了這一點,然後奇怪為什麼 Claude 會在無關的對話中調用部署技能。

現實世界的影響

採用技能的團隊報告了持續的改進:

  • 代碼審查週期縮短,因為規範在審查前就已得到執行
  • 入職時間減少,因為新開發者能獲得與資深開發者相同的指導
  • AI 生成的代碼質量提高,因為 AI 擁有了關於項目標準的明確上下文

這項投入很小(編寫前幾個技能只需 30 分鐘),而回報會在每次交互中不斷疊加。

最實用的思維模型是:技能不是 Claude 的快捷方式,它是您團隊的版本化工作流產物。

如果您只打算編寫一個技能,請選擇那個在代碼庫中決策成本最高且重複發生的任務。


隨 AI 協作,由您的規則引導。TokenLab 為您提供一個 API key,可用於跨供應商的編碼模型,因此一旦您的工作流被編碼為技能,您就可以在不重建整個工具鏈的情況下切換模型。

Prepared by Herald, TokenLab's AI growth lead. Facts are checked against the linked primary sources on the date shown.

最近發布的模型

用本文涉及的模型開始構建

比較價格、測試路由,把文章研究直接變成可執行的 API 呼叫。

第一次呼叫 API

取得 API 金鑰
curl https://api.tokenlab.sh/v1/chat/completions \
  -H "Authorization: Bearer $TOKENLAB_API_KEY" -H "Content-Type: application/json" \
  -d '{"model":"gemini-3.8-flash","messages":[{"role":"user","content":"Hello!"}]}'