一键导入
skill-creator
Skill 與 Agent 建立指導專家,協助開發者依據 GitHub Copilot 最佳實踐建立高品質的 custom agent 和 skill 定義檔案,包含 YAML frontmatter、MCP 整合與互動式工作流程設計。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Skill 與 Agent 建立指導專家,協助開發者依據 GitHub Copilot 最佳實踐建立高品質的 custom agent 和 skill 定義檔案,包含 YAML frontmatter、MCP 整合與互動式工作流程設計。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
API 開發流程引導技能,協助開發者選擇合適的開發流程(API First 或 Code First),並提供 OpenAPI 規格管理、程式碼產生等自動化支援。
BDD 測試實作技能,協助開發者使用 Reqnroll 撰寫行為驅動開發測試,包含 Gherkin 語法、測試步驟實作與 Docker 測試環境設定。
快取策略與多層快取設計技能,協助開發者實作 L1 Memory + L2 Redis 分層快取,包含 TTL 管理、版本控制與失效策略。
EF Core 操作與最佳化技能,協助開發者正確使用 Entity Framework Core,包含 DbContextFactory 模式、查詢最佳化、Migration 管理與反向工程。
專案初始化與配置技能,負責引導使用者完成新專案的初始化、配置設定、GitHub 範本套用與專案狀態檢測。
Repository 設計指導技能,協助開發者根據業務需求選擇最合適的 Repository 設計策略(資料表導向 vs 需求導向 vs 混合模式)。
| name | skill-creator |
| description | Skill 與 Agent 建立指導專家,協助開發者依據 GitHub Copilot 最佳實踐建立高品質的 custom agent 和 skill 定義檔案,包含 YAML frontmatter、MCP 整合與互動式工作流程設計。 |
Skill Creator 是專門協助建立 GitHub Copilot Custom Agent 與 Skill 的指導技能,提供結構化的建立流程、檔案風格範本、MCP 整合指導與互動式設計模式。
| 比較項目 | Custom Agent | Skill |
|---|---|---|
| 檔案位置 | .claude/agents/ 或 .claude/agents/ | .claude/skills/ |
| 檔案副檔名 | .agent.md 或 .md | skill.md |
| 啟用方式 | @agent-name | 通常由 agent 或 workspace 呼叫 |
| 主要用途 | 獨立的專業助理,具備特定領域知識 | 可重複使用的技能模組,供 agent 組合使用 |
| 工具配置 | 可在 YAML 中配置 MCP 工具 | 通常繼承環境的工具配置 |
| 複雜度 | 較高,需處理完整對話流程 | 較低,專注於特定技能 |
建立 Agent 的時機:
feature-development-agent、testing-strategy-agent建立 Skill 的時機:
handler、bdd-testing、api-development---
name: skill-or-agent-name # 必填:唯一識別名稱(小寫、連字號分隔)
description: 簡短描述此 skill/agent 的用途與核心能力 # 必填:一句話說明
tools: ["read", "edit", "bash"] # 可選:指定可用工具,省略則使用全部
target: vscode # 可選:指定環境(vscode 或 github-copilot)
model: claude-3.5-sonnet # 可選:指定 AI 模型(僅限 IDE 環境)
mcp-servers: # 可選:MCP Server 配置(組織/企業級 agent)
server-name:
type: local # local | http | sse
command: node
args: ["path/to/server.js"]
tools: ["*"] # "*" 或特定工具列表
env:
API_KEY: $SECRET_NAME
---
# Skill/Agent 名稱
## 描述
詳細說明此 skill/agent 的用途、目標與適用場景
## 職責
- 職責 1:具體說明
- 職責 2:具體說明
- 職責 3:具體說明
## 能力
### 1. 核心能力 A
具體描述與範例
### 2. 核心能力 B
具體描述與範例
## 使用方式
### 在 GitHub Copilot 中使用
具體的呼叫範例
### 直接呼叫(如果是 Agent)
@agent-name 任務描述
## 互動流程(可選)
使用 Mermaid 圖表或文字描述互動流程
## 核心模式/原則
關鍵的設計模式或必須遵循的原則
## 範本檔案(可選)
相關的程式碼範本或參考資料
## 注意事項
### 🔒 核心原則
不可妥協的關鍵原則
### 📋 最佳實踐
建議遵循的做法
### ✅ 成功指標
檢查清單形式的驗收標準
## 錯誤處理(可選)
常見錯誤與解決方案
## 相關 Skills(可選)
其他相關的 skills 連結
## 相關 Agents(可選)
會使用此 skill 的 agents
互動問題:
我將協助您建立新的 Skill/Agent,請回答以下問題:
1️⃣ 您想建立什麼?
A. Custom Agent(獨立的專業助理)
B. Skill(可重複使用的技能模組)
2️⃣ 主要用途是什麼?(一句話描述)
3️⃣ 核心職責有哪些?(列出 3-5 項)
4️⃣ 需要哪些工具支援?
A. 所有可用工具(預設)
B. 特定工具(read, edit, bash, search 等)
C. 需要 MCP Server 整合
5️⃣ 是否需要互動式決策流程?
A. 是,需要引導使用者做決策
B. 否,直接執行任務
必填欄位:
---
name: descriptive-name # 描述性名稱,使用 kebab-case
description: 簡潔的單行描述 # 說明核心用途與能力
---
工具配置範例:
# 範例 1:使用所有工具(預設行為)
---
name: full-stack-developer
description: 全端開發專家
# tools 省略 = 所有工具
---
# 範例 2:限制特定工具
---
name: test-specialist
description: 測試專家,只分析與撰寫測試程式碼
tools: ["read", "edit", "search"] # 不能執行 bash 命令
---
# 範例 3:包含 MCP 工具
---
name: api-developer
description: API 開發專家,整合 OpenAPI 工具
tools: ["read", "edit", "bash", "context7-http/query-docs"]
---
MCP Server 整合(組織級 Agent):
---
name: documentation-agent
description: 文件管理專家,整合 Context7 知識庫
tools: ["read", "edit", "context7-http/*"]
mcp-servers:
context7-http:
type: http
url: https://mcp.context7.com/mcp
headers: {}
tools: ["*"]
---
職責(Responsibilities):
範例:
## 職責
- 分析現有專案架構與程式碼結構
- 識別架構反模式與潛在問題
- 提供符合 Clean Architecture 的重構建議
- 產生架構改善計畫與實作步驟
- 驗證重構後的程式碼是否符合規範
能力(Capabilities):
範例:
## 能力
### 1. 架構分析
- 掃描專案資料夾結構
- 識別分層架構違規(Controller 直接呼叫 DbContext)
- 檢測循環相依問題
- 分析命名空間組織是否符合領域劃分
### 2. 重構建議
- 提供分層架構調整建議
- 推薦適當的設計模式(Repository, Result Pattern)
- 產生重構檢查清單與優先順序排序
何時需要互動式流程:
流程圖範例(使用 Mermaid):
## 互動流程
\`\`\`mermaid
graph TD
A[啟動 Skill] --> B{詢問開發流程}
B -->|API First| C[檢查 OpenAPI 規格]
B -->|Code First| D[直接實作程式碼]
C -->|已定義| E[產生 Server Controller]
C -->|需更新| F[協助更新規格]
F --> E
E --> G[提供實作範本]
D --> G
G --> H[詢問是否產生 Client SDK]
H -->|是| I[執行 codegen-api-client]
H -->|否| J[完成]
I --> J
\`\`\`
問答範例:
## 互動問答範例
### 問題 1:選擇開發流程
\`\`\`
請選擇 API 開發流程:
1️⃣ API First(推薦)
✅ 優點:文件與實作同步、前後端並行開發
⚠️ 需要:先設計 OpenAPI 規格
適用場景:
- 團隊協作、前後端分離專案
- 需要提供 Client SDK
2️⃣ Code First
✅ 優點:快速開發、直接實作
⚠️ 需要:手動維護 API 文件
適用場景:
- 快速原型開發
- 小型專案或單人開發
\`\`\`
### 問題 2:確認設計策略
\`\`\`
根據您的需求分析,建議使用:
📌 **需求導向 Repository 設計**
原因:
✓ 涉及 4 個資料表(Orders, OrderItems, Inventory, Payments)
✓ 需要交易一致性保證
✓ 包含複雜的多步驟業務流程
是否確認使用此策略?
[ ] 是,使用需求導向
[ ] 否,我想使用資料表導向
[ ] 需要更多說明
\`\`\`
核心原則格式:
## 核心原則
### 🔒 不可妥協的原則
1. **強制詢問**:不得擅自假設開發流程,必須明確詢問使用者
2. **Result Pattern 必用**:所有業務邏輯必須使用 Result<T, Failure>
3. **安全優先**:所有敏感操作需使用者確認
### 📋 最佳實踐
1. **職責分離**:Controller 不包含業務邏輯
2. **錯誤處理**:由 Middleware 統一記錄,Handler 不記錄
3. **命名一致性**:遵循專案命名規範(CreateXxxRequest, XxxResponse)
### ✅ 成功指標
- [ ] 所有互動問題都已回答
- [ ] 產生的程式碼通過編譯
- [ ] 符合專案架構規範
- [ ] 測試覆蓋率達標
範本檔案組織:
.claude/skills/your-skill/
├── skill.md # 主要定義檔案
├── assets/ # 程式碼範本
│ ├── template-1.cs
│ ├── template-2.yml
│ └── workflow-diagram.mmd
└── references/ # 參考文件
├── best-practices.md
└── detailed-guide.md
範本引用範例:
## 範本檔案
### Controller 實作範本
完整範本請參考:`assets/controller-template.cs`
### OpenAPI 端點範本
YAML 規格範本:`assets/openapi-endpoint-template.yml`
## 參考文件
- [API 開發工作流程詳解](../api-development/references/api-development-workflow.md)
- [Result Pattern 最佳實踐](../error-handling/references/result-pattern-best-practices.md)
mcp-servers:
local-analyzer:
type: local
command: node
args: ["./tools/code-analyzer/server.js"]
tools: ["analyze-architecture", "detect-anti-patterns"]
env:
LOG_LEVEL: info
mcp-servers:
context7-http:
type: http
url: https://mcp.context7.com/mcp
headers:
Authorization: Bearer ${CONTEXT7_API_KEY}
tools: ["query-docs", "resolve-library-id"]
mcp-servers:
streaming-analyzer:
type: sse
url: https://api.example.com/mcp/sse
tools: ["stream-analysis"]
在 tools 屬性中引用 MCP 工具:
---
name: documentation-expert
description: 文件專家,整合 Context7 知識庫查詢
tools:
- read
- edit
- context7-http/query-docs # MCP 工具格式:server-name/tool-name
- context7-http/resolve-library-id
---
# Documentation Expert
當您需要查詢最新的函式庫文件時,我會:
1. 使用 `context7-http/resolve-library-id` 找到正確的函式庫 ID
2. 使用 `context7-http/query-docs` 查詢相關文件
3. 整理並提供最佳實踐建議
Repository 層級(推薦):
.mcp.json # GitHub Copilot
.claude/mcp-config.json # Claude Desktop
組織層級 Agent(GitHub):
# 直接在 agent profile 中配置
---
name: org-level-agent
description: 組織級別的 agent
mcp-servers:
custom-mcp:
type: local
command: npx
args: ["-y", "@org/custom-mcp-server"]
tools: ["*"]
---
---
name: error-handling
description: Result Pattern 錯誤處理技能,協助開發者正確使用 Result<T, Failure> 模式處理業務邏輯錯誤。
tools: ["read", "edit"]
---
# Error Handling Skill
## 描述
Result Pattern 錯誤處理技能,專注於協助開發者在 Handler 和 Repository 層正確實作錯誤處理機制。
## 職責
- 指導正確使用 Result Pattern
- 協助建立 Failure 物件
- 避免拋出業務邏輯例外
- 確保原始例外被保存
## 能力
### 1. Result Pattern 實作
確保所有業務邏輯方法回傳 `Result<TSuccess, Failure>` 而非拋出例外。
正確範例:
\`\`\`csharp
public async Task<Result<Member, Failure>> CreateMemberAsync(
CreateMemberRequest request,
CancellationToken cancellationToken = default)
{
// 業務驗證
if (await _repository.EmailExistsAsync(request.Email, cancellationToken))
{
return Result.Failure<Member, Failure>(new Failure
{
Code = nameof(FailureCode.DuplicateEmail),
Message = "此 Email 已被註冊",
TraceId = _traceContext.TraceId
});
}
// ... 正常流程
}
\`\`\`
---
name: feature-development
description: 完整功能開發流程專家,串接多個 Skills 引導使用者完成從需求分析到測試驗證的完整開發週期。
tools: ["read", "edit", "bash", "search"]
---
# Feature Development Agent
## 描述
完整功能開發流程專家,我會協調多個專業 skills 引導您完成功能開發的每個階段。
## 工作流程
\`\`\`mermaid
graph TD
A[需求分析] --> B{API 開發流程選擇}
B -->|API First| C[OpenAPI 規格設計]
B -->|Code First| D[直接實作]
C --> E[產生 Controller 骨架]
D --> F[Repository 設計策略]
E --> F
F --> G[Handler 業務邏輯實作]
G --> H[Controller 實作]
H --> I[測試策略規劃]
\`\`\`
.mcp.json 配置server-name/tool-name 格式.claude/skills/
├── skill-name/
│ ├── skill.md # 主要定義(必須)
│ ├── assets/ # 範本檔案(可選)
│ └── references/ # 參考文件(可選)
.claude/agents/
├── agent-name.agent.md # 方式 1:單檔案
或
├── agent-name/
│ └── agent.md # 方式 2:資料夾組織
YAML Frontmatter:
name 使用 kebab-casedescription < 120 字元且清楚描述用途tools 列表正確(如有指定)Markdown 內容:
互動設計:
.claude/skills/api-development/ - 複雜互動流程範例.claude/skills/handler/ - 單一職責 Skill 範例.claude/agents-workflow-guide.md - Agent 工作流程設計