【高級】Superpowers 高級技巧:如何自定義你的專屬 Skill

作者:H先生出品
日期:2026年4月30日 上午1:14
來源:WeChat 原文

整理版優先睇

速讀 5 個重點 高亮

自定義 Superpowers Skill,將重複工作流程變成一鍵命令,提升開發效率

整理版摘要

呢篇文章係 Superpowers 系列嘅第五篇,由專注 AI 工具嘅 H 先生撰寫。作者發現用咗一段時間 Superpowers 之後,好多重複嘅工作流程(例如 Code Review)每次都要手動描述,而且團隊嘅代碼規範同內置 Skills 唔完全適配。為咗解決呢個問題,佢介紹咗點樣自定義一個專屬 Skill,將自己嘅開發經驗固化成可複用嘅「技能包」。整體結論係:Skill 就係「提示詞 + 流程」嘅封裝,你平時點樣叫 Claude Code 做嘢,就將佢寫成 Skill。

文章首先解釋咗自定義 Skill 嘅價值:節省時間、確保一致性、將私有經驗標準化。然後詳細拆解咗 Superpowers Skill 嘅結構,包括必須嘅 SKILL.md(身份證)同 prompt.md(大腦),同埋可選嘅 examples 同 references 目錄。作者用一個 Code Review Skill 做實戰示範,由零開始建立目錄、編寫 SKILL.md 同 prompt.md,仲有具體嘅測試例子同預期輸出。

最後分享咗進階技巧,例如添加參考文檔、支持多種編程語言、集成 CI/CD,同埋點樣打包分享畀團隊或開源社區。文章仲列舉咗好多實用嘅 Skill 創意,例如 API 文檔生成器、數據庫遷移工具、組件腳手架等,鼓勵讀者將自己嘅日常工作流程變成 Skill。

  • 自定義 Skill 嘅核心價值係將重複工作流程固化成一鍵命令,避免每次手動描述,提升效率同一致性。
  • Skill 嘅基本結構包括 SKILL.md(定義名稱、描述、使用方式)同 prompt.md(核心指令,定義行為同輸出格式),可選 examples 同 references。
  • 實戰示範:從零建立 Code Review Skill,涵蓋安全性、性能、可維護性、最佳實踐四個維度,輸出結構化 Markdown 報告。
  • 進階技巧包括添加參考文檔(如團隊規範)、支持多種編程語言嘅審查重點,同埋整合 CI/CD 自動執行。
  • 日常開發中嘅常見流程(如生成 API 文檔、數據庫遷移、部署檢查)都可以改造成 Skill,鼓勵讀者即時嘗試。
結構示例

內容結構

內容結構 bash
ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
skills/
└── code-review/
    ├── SKILL.md          # Skill 描述文件(必需)
    ├── prompt.md         # 主提示詞文件(必需)
    ├── examples/         # 示例目錄(可選)
    │   └── sample-review.md
    └── references/       # 參考文件(可選)
        └── company-style-guide.md
整理重點

點解要自定義 Skill?將經驗變成「技能包」

用咗一段時間 Superpowers,你可能會發現:有些重複嘅工作流程每次都要手動描述,例如 Code Review 你要講「幫我審查安全性、性能、可維護性,輸出 Markdown」,講多咗就會煩。仲有團隊代碼規範、私有框架適配呢啲問題,內置 Skills 未必啱用。

  • 重複工作流程每次手動描述,浪費時間
  • 團隊有特定代碼規範,內置 Skills 唔完全適配
  • 想將自己嘅開發經驗「固化」成可複用流程
  • 公司私有框架需要專門嘅開發 Skill
整理重點

Superpowers Skill 結構解析

一個標準 Skill 嘅目錄結構係:skills/code-review/ 下面有 SKILL.md(必需)、prompt.md(必需)、examples/(可選)、references/(可選)。

SKILL.md 例子:name: code-review,description: 自動化代碼審查,使用方式係 /superpowers.code-review <文件路徑>。prompt.md 就詳細講明審查維度、輸出格式同執行步驟。

整理重點

實戰:由零寫一個「代碼審查」Skill

  1. 1 建立目錄:mkdir -p ~/.claude/skills/code-review
  2. 2 編寫 SKILL.md:填入 name、description、使用方式同審查維度
  3. 3 編寫 prompt.md:定義審查清單(安全性、性能、可維護性、最佳實踐)同輸出格式(Markdown 報告,包括嚴重問題同修復建議)
  4. 4 重啟 Claude Code 或重新加載 Skills,然後測試命令 /superpowers.code-review

prompt.md 入面嘅審查清單好詳細,例如安全性要 check SQL 注入、XSSIDOR、硬編碼密碼等;性能要 check N+1 問題、循環嵌套、緩存策略等。輸出格式包含摘要表格、嚴重問題、改進建議同總結。

整理重點

進階技巧:令 Skill 更強大

  • 添加參考文檔:喺 references/ 目錄放團隊規範,prompt.md 入面引用,例如「請參考 團隊 JavaScript 規範
  • 支持多種語言:按語言自動應用對應標準,例如 JavaScript 睇回調地獄、Python 睇 with 語句、Go 睇 goroutine 泄漏
  • 集成 CI/CD:寫一個 GitHub Action 步驟,每次 PR 自動執行 /superpowers.code-review

學識呢啲技巧之後,你可以將 Skill 打包做 tar.gz 分享畀同事,甚至提交到 Superpowers 倉庫嘅 Skill 市場,等全世界都用得。

整理重點

更多創意同總結

作者仲列舉咗好多實用 Skill 創意:api-doc-generator、db-migration、component-generator、test-generator、deployment-checklist、refactor-helper、performance-profiler。每一個都可以幫你慳唔少時間。


之前四篇文我哋分別講咗 Superpowers 係乜、點用、同埋用 Skills 開發完整項目。今日,我哋嚟啲更進階嘅:自己鬱手,寫一個專屬 Skill,令 Claude Code 真正變成你嘅「私人開發助手」。


一、點解需要自訂 Skill?

用咗一段時間 Superpowers,你可能會發現:

  • 有啲重複嘅工作流程,每次都用手動描述
  • 團隊有特定嘅代碼規範,內置嘅 Skills 唔完全啱用
  • 想將自己嘅開發經驗「固化」成可以重用嘅流程
  • 公司私有框架,需要專門嘅開發 Skill

舉個例:

每次做代碼審查(Code Review),你都要講一次:

「幫我審查呢段代碼,重點睇:1. 安全性 2. 性能 3. 可維護性,輸出 Markdown 格式嘅審查報告」

講得多就煩。如果有個 /superpowers.code-review 命令,一撳就觸發,咁咪好正?

呢個就係自訂 Skill 嘅價值:將你嘅經驗變成可以重用嘅「技能包」


二、Superpowers Skill 結構分析

喺鬱手之前,先睇嚇一個標準嘅 Superpowers Skill 係點樣。

2.1 目錄結構

ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
skills/
└── code-review/
    ├── SKILL.md          # Skill 描述文件(必需)
    ├── prompt.md         # 主提示詞文件(必需)
    ├── examples/         # 示例目錄(可選)
    │   └── sample-review.md
    └── references/       # 參考文件(可選)
        └── company-style-guide.md

2.2 SKILL.md —— Skill 嘅「身份證」

ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
---
name: code-review
description: 代碼審查 Skill,自動審查代碼的安全性、性能和可維護性,輸出 Markdown 報告。
---

# Code Review Skill

這個 Skill 用於自動化代碼審查流程...

## 使用方式

> /superpowers.code-review <文件路徑或代碼塊>

關鍵點:

  • name:Skill 嘅唯一標識符,決定命令個名
  • description:簡短描述,會出現喺 /superpowers 命令列表入面
  • 正文:詳細說明點樣用呢個 Skill

2.3 prompt.md —— Skill 嘅「大腦」

呢個係 Skill 嘅核心,定義咗 Claude Code 執行呢個 Skill 時嘅行為同輸出格式。

ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
# Code Review 提示詞

你是一個資深的代碼審查工程師。當用戶提供代碼時,你需要從以下維度進行審查:

## 審查維度

1. **安全性**:SQL 注入、XSS、權限驗證等
2. **性能**:時間複雜度、數據庫查詢優化、緩存使用等
3. **可維護性**:命名規範、註釋、模塊化等
4. **最佳實踐**:是否符合團隊規範

## 輸出格式

輸出 Markdown 格式的報告:

```markdown
# 代碼審查報告

## 概述
- 文件:xxx
- 審查時間:xxx
- 整體評分:⭐⭐⭐⭐ (4/5)

## 問題列表

### 🔴 嚴重問題
1. [問題標題]
   - 位置:第 XX 行
   - 描述:...
   - 建議:...

### 🟡 改進建議
...

## 總結
...

審查流程

  1. 讀取用戶提供嘅代碼
  2. 逐個維度分析
  3. 生成結構化報告
  4. 畀出具體嘅修復建議
ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
---

## 三、實戰:從零編寫一個"代碼審查" Skill

好了,理論講完,動手寫!

### 步驟 1:創建 Skill 目錄

在 Claude Code 的 skills 目錄下創建新 Skill:

```bash
mkdir -p ~/.claude/skills/code-review
cd ~/.claude/skills/code-review

步驟 2:編寫 SKILL.md

創建 SKILL.md 文件:

ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
---
name: code-review
description: 自動化代碼審查,檢查安全性、性能和可維護性,輸出 Markdown 報告。
---

# Code Review Skill

一鍵觸發代碼審查,生成專業的審查報告。

## 使用方式

\```
/superpowers.code-review <文件路徑>
\```

或

\```
/superpowers.code-review
# 然後粘貼代碼塊
\```

## 審查維度

- 🔐 安全性(SQL注入、XSS、權限等)
- ⚡ 性能(時間複雜度、數據庫優化等)
- 🛠️ 可維護性(命名、註釋、模塊化等)
- ✅ 最佳實踐(團隊規範等)

## 輸出

Markdown 格式的審查報告,包含問題列表、嚴重等級、修復建議。

步驟 3:編寫 prompt.md

呢個係 Skill 嘅核心,話畀 Claude Code 點執行審查:

ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
# Code Review 執行指令

你是一個有 10 年經驗的技術負責人,負責代碼審查。

## 任務

審查用戶提供的代碼,輸出結構化報告。

## 審查清單

### 1. 安全性審查
- [ ] SQL 注入風險
- [ ] XSS 攻擊風險
- [ ] 不安全的直接對象引用(IDOR)
- [ ] 敏感信息泄露(硬編碼密碼、API Key 等)
- [ ] 權限驗證是否完善
- [ ] CSRF 防護

### 2. 性能審查
- [ ] 時間複雜度是否合理
- [ ] 數據庫查詢是否優化(N+1 問題、索引使用)
- [ ] 是否有不必要的循環嵌套
- [ ] 大文件/大對象處理是否高效
- [ ] 緩存策略是否合理

### 3. 可維護性審查
- [ ] 變量/函數命名是否語義化
- [ ] 函數是否過長(建議 < 50 行)
- [ ] 是否有足夠的註釋(關鍵邏輯)
- [ ] 代碼重複率是否過高
- [ ] 模塊化是否合理

### 4. 最佳實踐
- [ ] 是否符合團隊代碼規範
- [ ] 錯誤處理是否完善
- [ ] 是否有單元測試
- [ ] 日誌輸出是否合理
- [ ] API 設計是否 RESTful

## 輸出格式

嚴格按照以下格式輸出:

```markdown
# 🔍 代碼審查報告

**文件**:{{文件路徑}}
**審查時間**:{{當前時間}}
**整體評分**:{{⭐ 1-5 星}}

---

## 📊 審查摘要

| 維度 | 問題數 | 狀態 |
|------|--------|------|
| 安全性 | X 個 | ✅/⚠️/❌ |
| 性能 | X 個 | ✅/⚠️/❌ |
| 可維護性 | X 個 | ✅/⚠️/❌ |
| 最佳實踐 | X 個 | ✅/⚠️/❌ |

---

## 🔴 嚴重問題

### 1. [問題標題]
- **位置**:第 XX 行
- **風險等級**:高/中/低
- **描述**:詳細說明...
- **代碼示例**:
  \```語言
  // 有問題的代碼
  \```
- **修復建議**:
  \```語言
  // 修復後的代碼
  \```

---

## 🟡 改進建議

(類似格式,列出改進點)

---

## 💡 總結

(給出整體評價,指出最需要優先修復的問題)

---

## ✅ 驗證方式

建議通過以下方式驗證修復效果:
1. 運行單元測試
2. 手動測試相關功能
3. 再次運行代碼審查

執行步驟

  1. 如果用戶提供咗檔案路徑,先讀取檔案內容
  2. 如果用戶貼咗代碼塊,直接使用
  3. 按照審查清單逐項檢查
  4. 輸出結構化報告
  5. 如果發現問題,畀出具體嘅修復代碼示例
ounter(lineounter(lineounter(lineounter(line
### 步驟 4:測試你的 Skill

重啓 Claude Code(或重新加載 Skills),然後測試:

/superpowers.code-review src/app.js

ounter(lineounter(line
或者:

/superpowers.code-review

ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
然後粘貼一段代碼:

```javascript
app.post('/login', (req, res) => {
  const { username, password } = req.body;
  db.query(`SELECT * FROM users WHERE username='${username}' AND password='${password}'`, (err, rows) => {
    if (rows.length > 0) {
      res.json({ token: 'abc123' });
    } else {
      res.status(401).json({ error: '登錄失敗' });
    }
  });
});

預期輸出:

ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
# 🔍 代碼審查報告

**文件**:src/app.js
**審查時間**:2026-04-29 10:53
**整體評分**:⭐⭐ (2/5)

---

## 📊 審查摘要

| 維度 | 問題數 | 狀態 |
|------|--------|------|
| 安全性 | 2 個 | ❌ |
| 性能 | 0 個 | ✅ |
| 可維護性 | 1 個 | ⚠️ |
| 最佳實踐 | 1 個 | ⚠️ |

---

## 🔴 嚴重問題

### 1. SQL 注入漏洞
- **位置**:第 3 行
- **風險等級**:高
- **描述**:直接拼接用戶輸入到 SQL 查詢中,存在嚴重的 SQL 注入風險。攻擊者可以通過構造特殊的 username 或 password 繞過登錄驗證,甚至竊取數據庫數據。
- **代碼示例**:
  ```javascript
  db.query(`SELECT * FROM users WHERE username='${username}' AND password='${password}'`, ...)
  • 修復建議

    // 使用參數化查詢
    db.query('SELECT * FROM users WHERE username = ? AND password = ?', [username, password], (err, rows) => {
      // ...
    });

    2. 密碼明文儲存

    • 位置:第 3 行(password 字段)

    • 風險等級:高

    • 描述:密碼以明文形式儲存喺數據庫入面,一旦數據庫洩漏,所有用戶密碼暴露。

    • 修復建議

      // 使用 bcrypt 等庫對密碼進行哈希存儲
      const hashedPassword = await bcrypt.hash(password, 10);
      // 驗證時使用 bcrypt.compare

      (後續內容省略...)

      ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
      ---
      
      ## 四、進階技巧:讓 Skill 更強大
      
      ### 4.1 添加參考文檔
      
      在 `references/` 目錄下添加團隊的代碼規範文檔,`prompt.md` 中可以引用:
      
      ```markdown
      ## 參考規範
      
      請參考以下文檔進行代碼審查:
      - [團隊 JavaScript 規範](references/js-style-guide.md)
      - [安全編碼指南](references/security-guide.md)

      4.2 支援多種程式語言

      修改 prompt.md,令 Skill 支援多種語言:

      ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
      ## 語言適配
      
      根據用戶提供的代碼,自動識別編程語言(JavaScript/Python/Java/Go 等),應用對應語言的審查標準。
      
      ### JavaScript 審查重點
      - 回調地獄、Promise 使用、async/await 錯誤處理
      
      ### Python 審查重點
      - GIL 影響、 with 語句使用、類型註解
      
      ### Go 審查重點
      - goroutine 泄漏、error 處理、defer 使用

      4.3 整合到 CI/CD

      你可以將呢個 Skill 整合到 CI/CD 流程入面,每次提交代碼就自動審查:

      ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
      # .github/workflows/code-review.yml
      name: Code Review
      on: [pull_request]
      
      jobs:
        review:
          runs-on: ubuntu-latest
          steps:
            - uses: actions/checkout@v3
            - name: Run Code Review
              run: |
                claude -p "/superpowers.code-review $(git diff --name-only origin/main...HEAD)"

      五、分享你嘅 Skill

      寫好 Skill 之後,可以分享畀團隊或開源社區:

      5.1 打包分享

      ounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
      # 打包 Skill
      cd ~/.claude/skills
      tar -czf code-review-skill.tar.gz code-review/
      
      # 分享給同事
      scp code-review-skill.tar.gz colleague@server:~/

      5.2 發佈到 Skill 市場

      Superpowers 社區正在建設 Skill 市場,你可以提交自己嘅 Skill:

      1. Fork Superpowers 倉庫
      2. 在 skills/ 目錄下添加你嘅 Skill
      3. 提交 Pull Request
      4. 審核通過後,所有人都可以用到你嘅 Skill

      六、更多創意:你可以創建嘅 Skills

      靈感唔夠?呢度有啲實用嘅 Skill 創意:

      Skill 名稱
      功能描述
      api-doc-generator
      根據代碼自動生成 API 文檔
      db-migration
      數據庫遷移流程(生成 SQL、執行、回滾)
      component-generator
      生成 React/Vue 組件腳手架
      test-generator
      根據代碼自動生成單元測試
      deployment-checklist
      部署前檢查清單(環境變數、配置、備份等)
      refactor-helper
      重構建議(識別壞味道、畀出重構方案)
      performance-profiler
      性能分析(找出瓶頸、畀出優化建議)

      七、總結

      1. 點解需要自訂 Skill:固化經驗、提高效率
      2. Skill 嘅結構:SKILL.md + prompt.md + 可選目錄
      3. 點樣編寫 Skill:從零寫一個 code-review Skill
      4. 進階技巧:添加參考文檔、支援多語言、整合 CI/CD
      5. 分享發佈:打包分享或提交到社區

      核心思想:Skill 就係「提示詞 + 流程」嘅封裝。你平時點樣令 Claude Code 做嘢,就將佢寫成 Skill。

      而家,輪到你喇。諗嚇你每日重複嘅開發流程,可唔可以將佢變成一個 Skill?


      👨‍💻 H先生出品 | 專注 AI 工具同效率提升


      前四篇文章我們分別講了 Superpowers 是什麼、怎麼用、以及用 Skills 開發完整項目。今天,我們來點更進階的:自己動手,寫一個專屬 Skill,讓 Claude Code 真正變成你的"私人開發助手"。


      一、為什麼需要自定義 Skill?

      用了一段時間 Superpowers,你可能會發現:

      • 有些重複的工作流程,每次都要手動描述
      • 團隊有特定的代碼規範,內置 Skills 不完全適配
      • 想把自己的開發經驗"固化"成可複用的流程
      • 公司私有框架,需要專門的開發 Skill

      舉個例子:

      每次做代碼審查(Code Review),你都要說一遍:

      "幫我審查這段代碼,重點看:1. 安全性 2. 性能 3. 可維護性,輸出 Markdown 格式的審查報告"

      說多了就煩。如果有個 /superpowers.code-review 命令,一鍵觸發,豈不美哉?

      這就是自定義 Skill 的價值:把你的經驗變成可複用的"技能包"


      二、Superpowers Skill 結構解析

      在動手之前,先看看一個標準的 Superpowers Skill 長什麼樣。

      2.1 目錄結構

      ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
      skills/
      └── code-review/
          ├── SKILL.md          # Skill 描述文件(必需)
          ├── prompt.md         # 主提示詞文件(必需)
          ├── examples/         # 示例目錄(可選)
          │   └── sample-review.md
          └── references/       # 參考文件(可選)
              └── company-style-guide.md

      2.2 SKILL.md —— Skill 的"身份證"

      ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
      ---
      name: code-review
      description: 代碼審查 Skill,自動審查代碼的安全性、性能和可維護性,輸出 Markdown 報告。
      ---
      
      # Code Review Skill
      
      這個 Skill 用於自動化代碼審查流程...
      
      ## 使用方式
      
      > /superpowers.code-review <文件路徑或代碼塊>

      關鍵點:

      • name:Skill 的唯一標識符,決定命令名
      • description:簡短描述,會出現在 /superpowers 命令列表中
      • 正文:詳細說明如何使用這個 Skill

      2.3 prompt.md —— Skill 的"大腦"

      這是 Skill 的核心,定義了 Claude Code 執行這個 Skill 時的行為和輸出格式。

      ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
      # Code Review 提示詞
      
      你是一個資深的代碼審查工程師。當用戶提供代碼時,你需要從以下維度進行審查:
      
      ## 審查維度
      
      1. **安全性**:SQL 注入、XSS、權限驗證等
      2. **性能**:時間複雜度、數據庫查詢優化、緩存使用等
      3. **可維護性**:命名規範、註釋、模塊化等
      4. **最佳實踐**:是否符合團隊規範
      
      ## 輸出格式
      
      輸出 Markdown 格式的報告:
      
      ```markdown
      # 代碼審查報告
      
      ## 概述
      - 文件:xxx
      - 審查時間:xxx
      - 整體評分:⭐⭐⭐⭐ (4/5)
      
      ## 問題列表
      
      ### 🔴 嚴重問題
      1. [問題標題]
         - 位置:第 XX 行
         - 描述:...
         - 建議:...
      
      ### 🟡 改進建議
      ...
      
      ## 總結
      ...

      審查流程

      1. 讀取用戶提供的代碼
      2. 逐個維度分析
      3. 生成結構化報告
      4. 給出具體的修復建議
      ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
      ---
      
      ## 三、實戰:從零編寫一個"代碼審查" Skill
      
      好了,理論講完,動手寫!
      
      ### 步驟 1:創建 Skill 目錄
      
      在 Claude Code 的 skills 目錄下創建新 Skill:
      
      ```bash
      mkdir -p ~/.claude/skills/code-review
      cd ~/.claude/skills/code-review

      步驟 2:編寫 SKILL.md

      創建 SKILL.md 文件:

      ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
      ---
      name: code-review
      description: 自動化代碼審查,檢查安全性、性能和可維護性,輸出 Markdown 報告。
      ---
      
      # Code Review Skill
      
      一鍵觸發代碼審查,生成專業的審查報告。
      
      ## 使用方式
      
      \```
      /superpowers.code-review <文件路徑>
      \```
      
      或
      
      \```
      /superpowers.code-review
      # 然後粘貼代碼塊
      \```
      
      ## 審查維度
      
      - 🔐 安全性(SQL注入、XSS、權限等)
      - ⚡ 性能(時間複雜度、數據庫優化等)
      - 🛠️ 可維護性(命名、註釋、模塊化等)
      - ✅ 最佳實踐(團隊規範等)
      
      ## 輸出
      
      Markdown 格式的審查報告,包含問題列表、嚴重等級、修復建議。

      步驟 3:編寫 prompt.md

      這是 Skill 的核心,告訴 Claude Code 怎麼執行審查:

      ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
      # Code Review 執行指令
      
      你是一個有 10 年經驗的技術負責人,負責代碼審查。
      
      ## 任務
      
      審查用戶提供的代碼,輸出結構化報告。
      
      ## 審查清單
      
      ### 1. 安全性審查
      - [ ] SQL 注入風險
      - [ ] XSS 攻擊風險
      - [ ] 不安全的直接對象引用(IDOR)
      - [ ] 敏感信息泄露(硬編碼密碼、API Key 等)
      - [ ] 權限驗證是否完善
      - [ ] CSRF 防護
      
      ### 2. 性能審查
      - [ ] 時間複雜度是否合理
      - [ ] 數據庫查詢是否優化(N+1 問題、索引使用)
      - [ ] 是否有不必要的循環嵌套
      - [ ] 大文件/大對象處理是否高效
      - [ ] 緩存策略是否合理
      
      ### 3. 可維護性審查
      - [ ] 變量/函數命名是否語義化
      - [ ] 函數是否過長(建議 < 50 行)
      - [ ] 是否有足夠的註釋(關鍵邏輯)
      - [ ] 代碼重複率是否過高
      - [ ] 模塊化是否合理
      
      ### 4. 最佳實踐
      - [ ] 是否符合團隊代碼規範
      - [ ] 錯誤處理是否完善
      - [ ] 是否有單元測試
      - [ ] 日誌輸出是否合理
      - [ ] API 設計是否 RESTful
      
      ## 輸出格式
      
      嚴格按照以下格式輸出:
      
      ```markdown
      # 🔍 代碼審查報告
      
      **文件**:{{文件路徑}}
      **審查時間**:{{當前時間}}
      **整體評分**:{{⭐ 1-5 星}}
      
      ---
      
      ## 📊 審查摘要
      
      | 維度 | 問題數 | 狀態 |
      |------|--------|------|
      | 安全性 | X 個 | ✅/⚠️/❌ |
      | 性能 | X 個 | ✅/⚠️/❌ |
      | 可維護性 | X 個 | ✅/⚠️/❌ |
      | 最佳實踐 | X 個 | ✅/⚠️/❌ |
      
      ---
      
      ## 🔴 嚴重問題
      
      ### 1. [問題標題]
      - **位置**:第 XX 行
      - **風險等級**:高/中/低
      - **描述**:詳細說明...
      - **代碼示例**:
        \```語言
        // 有問題的代碼
        \```
      - **修復建議**:
        \```語言
        // 修復後的代碼
        \```
      
      ---
      
      ## 🟡 改進建議
      
      (類似格式,列出改進點)
      
      ---
      
      ## 💡 總結
      
      (給出整體評價,指出最需要優先修復的問題)
      
      ---
      
      ## ✅ 驗證方式
      
      建議通過以下方式驗證修復效果:
      1. 運行單元測試
      2. 手動測試相關功能
      3. 再次運行代碼審查

      執行步驟

      1. 如果用戶提供了文件路徑,先讀取文件內容
      2. 如果用戶粘貼了代碼塊,直接使用
      3. 按照審查清單逐項檢查
      4. 輸出結構化報告
      5. 如果發現問題,給出具體的修復代碼示例
      ounter(lineounter(lineounter(lineounter(line
      ### 步驟 4:測試你的 Skill
      
      重啓 Claude Code(或重新加載 Skills),然後測試:

      /superpowers.code-review src/app.js

      ounter(lineounter(line
      或者:

      /superpowers.code-review

      ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
      然後粘貼一段代碼:
      
      ```javascript
      app.post('/login', (req, res) => {
        const { username, password } = req.body;
        db.query(`SELECT * FROM users WHERE username='${username}' AND password='${password}'`, (err, rows) => {
          if (rows.length > 0) {
            res.json({ token: 'abc123' });
          } else {
            res.status(401).json({ error: '登錄失敗' });
          }
        });
      });

      預期輸出:

      ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
      # 🔍 代碼審查報告
      
      **文件**:src/app.js
      **審查時間**:2026-04-29 10:53
      **整體評分**:⭐⭐ (2/5)
      
      ---
      
      ## 📊 審查摘要
      
      | 維度 | 問題數 | 狀態 |
      |------|--------|------|
      | 安全性 | 2 個 | ❌ |
      | 性能 | 0 個 | ✅ |
      | 可維護性 | 1 個 | ⚠️ |
      | 最佳實踐 | 1 個 | ⚠️ |
      
      ---
      
      ## 🔴 嚴重問題
      
      ### 1. SQL 注入漏洞
      - **位置**:第 3 行
      - **風險等級**:高
      - **描述**:直接拼接用戶輸入到 SQL 查詢中,存在嚴重的 SQL 注入風險。攻擊者可以通過構造特殊的 username 或 password 繞過登錄驗證,甚至竊取數據庫數據。
      - **代碼示例**:
        ```javascript
        db.query(`SELECT * FROM users WHERE username='${username}' AND password='${password}'`, ...)
      • 修復建議

        // 使用參數化查詢
        db.query('SELECT * FROM users WHERE username = ? AND password = ?', [username, password], (err, rows) => {
          // ...
        });

        2. 密碼明文存儲

        • 位置:第 3 行(password 字段)

        • 風險等級:高

        • 描述:密碼以明文形式存儲在數據庫中,一旦數據庫泄露,所有用戶密碼暴露。

        • 修復建議

          // 使用 bcrypt 等庫對密碼進行哈希存儲
          const hashedPassword = await bcrypt.hash(password, 10);
          // 驗證時使用 bcrypt.compare

          (後續內容省略...)

          ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
          ---
          
          ## 四、進階技巧:讓 Skill 更強大
          
          ### 4.1 添加參考文檔
          
          在 `references/` 目錄下添加團隊的代碼規範文檔,`prompt.md` 中可以引用:
          
          ```markdown
          ## 參考規範
          
          請參考以下文檔進行代碼審查:
          - [團隊 JavaScript 規範](references/js-style-guide.md)
          - [安全編碼指南](references/security-guide.md)

          4.2 支持多種編程語言

          修改 prompt.md,讓 Skill 支持多種語言:

          ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
          ## 語言適配
          
          根據用戶提供的代碼,自動識別編程語言(JavaScript/Python/Java/Go 等),應用對應語言的審查標準。
          
          ### JavaScript 審查重點
          - 回調地獄、Promise 使用、async/await 錯誤處理
          
          ### Python 審查重點
          - GIL 影響、 with 語句使用、類型註解
          
          ### Go 審查重點
          - goroutine 泄漏、error 處理、defer 使用

          4.3 集成到 CI/CD

          你可以把這個 Skill 集成到 CI/CD 流程中,每次提交代碼自動審查:

          ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
          # .github/workflows/code-review.yml
          name: Code Review
          on: [pull_request]
          
          jobs:
            review:
              runs-on: ubuntu-latest
              steps:
                - uses: actions/checkout@v3
                - name: Run Code Review
                  run: |
                    claude -p "/superpowers.code-review $(git diff --name-only origin/main...HEAD)"

          五、分享你的 Skill

          寫好 Skill 之後,可以分享給團隊或開源社區:

          5.1 打包分享

          ounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
          # 打包 Skill
          cd ~/.claude/skills
          tar -czf code-review-skill.tar.gz code-review/
          
          # 分享給同事
          scp code-review-skill.tar.gz colleague@server:~/

          5.2 發佈到 Skill 市場

          Superpowers 社區正在建設 Skill 市場,你可以提交自己的 Skill:

          1. Fork Superpowers 倉庫
          2. 在 skills/ 目錄下添加你的 Skill
          3. 提交 Pull Request
          4. 審核通過後,所有人都能用到你的 Skill

          六、更多創意:你可以創建的 Skills

          靈感不夠?這裏有一些實用的 Skill 創意:

          Skill 名稱
          功能描述
          api-doc-generator
          根據代碼自動生成 API 文檔
          db-migration
          數據庫遷移流程(生成 SQL、執行、回滾)
          component-generator
          生成 React/Vue 組件腳手架
          test-generator
          根據代碼自動生成單元測試
          deployment-checklist
          部署前檢查清單(環境變量、配置、備份等)
          refactor-helper
          重構建議(識別壞味道、給出重構方案)
          performance-profiler
          性能分析(找出瓶頸、給出優化建議)

          七、總結

          1. 為什麼需要自定義 Skill:固化經驗、提高效率
          2. Skill 的結構:SKILL.md + prompt.md + 可選目錄
          3. 如何編寫 Skill:從零寫一個 code-review Skill
          4. 進階技巧:添加參考文檔、支持多語言、集成 CI/CD
          5. 分享發佈:打包分享或提交到社區

          核心思想:Skill 就是"提示詞 + 流程"的封裝。你平時怎麼讓 Claude Code 做事,就把它寫成 Skill。

          現在,輪到你了。想想你每天重複的開發流程,能不能把它變成一個 Skill?


          👨‍💻 H先生出品 | 專注 AI 工具與效率提升