ワンクリックで
skill-agent-design
GitHub Copilot Skill 與 Agent 設計指導技能,協助開發者設計與實作高品質的 Skill 和 Agent,包含架構設計、最佳實踐、工作流程規劃與常見反模式識別。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
GitHub Copilot Skill 與 Agent 設計指導技能,協助開發者設計與實作高品質的 Skill 和 Agent,包含架構設計、最佳實踐、工作流程規劃與常見反模式識別。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
API 開發流程引導技能,協助開發者選擇合適的開發流程(API First 或 Code First),並提供 OpenAPI 規格管理、程式碼產生等自動化支援。
Cucumber/Gherkin BDD 最佳實踐指導技能,提供 Gherkin 撰寫規範、情境設計原則、Discovery Workshop 引導與常見反模式識別,協助團隊撰寫高品質的行為驅動開發規格。
BDD 測試實作技能,協助開發者使用 Reqnroll 撰寫行為驅動開發測試,包含 Gherkin 語法、測試步驟實作與 Docker 測試環境設定。
EF Core 操作與最佳化技能,協助開發者正確使用 Entity Framework Core,包含 DbContextFactory 模式、查詢最佳化、Migration 管理與反向工程。
錯誤處理與 Result Pattern 技能,協助開發者實作統一的錯誤處理機制,包含 Result Pattern 應用、Failure 物件建立與分層錯誤處理策略。
Handler 業務邏輯層實作技能,協助開發者實作符合專案規範的 Handler,包含業務邏輯處理、流程協調、Result Pattern 錯誤處理與跨 Repository 操作。
| name | skill-agent-design |
| description | GitHub Copilot Skill 與 Agent 設計指導技能,協助開發者設計與實作高品質的 Skill 和 Agent,包含架構設計、最佳實踐、工作流程規劃與常見反模式識別。 |
GitHub Copilot Skill 與 Agent 設計指導技能,協助開發者設計與實作高品質的 Skill 和 Agent。
| 類型 | 位置 | 用途 | 呼叫方式 |
|---|---|---|---|
| Skill | .github/skills/ | 專業化功能模組 | skill 工具 |
| Agent | .github/agents/ | 具角色的 AI 助手 | @agent-name 或 task 工具 |
| MCP | .copilot/mcp-config.json | 外部工具/服務連接 | 自動整合 |
詢問開發者以下問題:
確保 Skill 遵循單一職責原則:
✅ 推薦: 一個 Skill 專注一個領域
bdd-testing → 專注 BDD 測試實作
handler → 專注 Handler 業務邏輯
repository-design → 專注 Repository 設計策略
❌ 避免: 職責過度廣泛
fullstack-development → 涵蓋前端、後端、測試、部署...
標準 Skill 檔案結構:
.github/skills/
└── my-skill/
├── skill.md # 主要 Skill 定義
├── references/ # 參考文件 (可選)
│ └── guide.md
└── assets/ # 範本檔案 (可選)
└── template.cs
skill.md frontmatter:
---
name: my-skill
description: 簡短描述 (一句話說明 Skill 用途)
---
標準 Skill 內容結構:
# My Skill
## 描述
詳細描述 Skill 的用途與適用情境
## 職責
- 職責 1
- 職責 2
- 職責 3
## 核心原則
列出核心設計原則與最佳實踐
## 工作流程
### 步驟 1: XXX
### 步驟 2: YYY
## 實作範例
提供程式碼範例
## 參考文件
- [相關文件](./references/xxx.md)
## 相關 Skills
- `other-skill` - 關聯說明
## 相關 Agents
- `feature-development` - 使用情境說明
確定 Agent 的專業角色:
範例:
architecture-review → 架構檢視專家testing-strategy → 測試策略規劃師feature-development → 功能開發協調者根據角色選擇最小化工具集:
| 角色類型 | 建議工具 | 範例 |
|---|---|---|
| 規劃/分析 | view, grep, glob | testing-strategy |
| 實作 | view, grep, create, edit | feature-development |
| 檢視 | view, grep, glob, task | architecture-review |
| 協調 | view, grep, skill, task | feature-development |
❌ 避免: 給所有 Agent 完整工具集
設計 Agent 之間的協作流程:
---
description: 完整功能開發流程專家
tools: ['view', 'grep', 'create', 'edit', 'skill']
handoffs:
- label: 選擇 API 開發流程
agent: api-development
prompt: 協助選擇 API First 或 Code First 流程
send: false
- label: 規劃測試策略
agent: testing-strategy
prompt: 為這個功能規劃測試策略
send: false
---
單向工作流程原則:
需求分析 → API 設計 → 實作 → 測試 → 架構檢視
(避免循環參照)
確保 Agent 在關鍵決策點等待使用者確認:
## 互動式決策點
### 決策點 1: 技術選擇
> 請選擇資料庫類型:
> 1. SQL Server
> 2. PostgreSQL
> 3. MySQL
**等待使用者回應後才繼續**
### 決策點 2: 確認配置
顯示配置摘要:
即將套用以下配置:
> 確認無誤請輸入 'yes' 繼續
位置: .copilot/mcp-config.json
{
"mcpServers": {
"context7-http": {
"type": "http",
"url": "https://mcp.context7.com/mcp",
"headers": {},
"tools": ["*"]
}
}
}
使用 Context7 查詢最新文件:
# EF Core 操作技能
## 查詢最新文件
1. 呼叫 `context7-http-resolve-library-id` 解析庫 ID
- libraryName: "Entity Framework Core"
- query: "EF Core best practices"
2. 呼叫 `context7-http-query-docs` 查詢文件
- libraryId: `/microsoft/efcore`
- query: "DbContext lifecycle management"
## 呼叫次數限制
⚠️ 每個問題最多呼叫 MCP 工具 **3 次**
name 和 description@CLAUDE.md, @docs/...)description)tools)resolve-library-id 再 query-docs症狀:
# 全能開發 Skill
涵蓋 API、測試、部署、監控、安全...
解決方案: 拆分為多個專業化 Skill:
api-developmentbdd-testingdeploymentmonitoringsecurity-review症狀:
---
description: 測試專家
# ❌ 未定義 tools
---
解決方案:
---
description: 測試專家
tools: ['view', 'grep', 'create', 'edit']
---
症狀: 單一問題呼叫 MCP 超過 5 次
解決方案: 限制為最多 3 次:
context7-http-resolve-library-idcontext7-http-query-docs (第一次)context7-http-query-docs (第二次,若需要)症狀:
# Agent A → Agent B → Agent A (循環)
解決方案: 設計單向工作流程:
需求 → 設計 → 實作 → 測試 → 檢視
症狀: Agent 自動執行敏感操作,無使用者確認
解決方案: 在關鍵決策點加入確認機制:
> 即將執行資料庫遷移...
> 確認無誤請輸入 'yes' 繼續
結構:
.github/skills/
└── error-handling/
└── skill.md
skill.md:
---
name: error-handling
description: 錯誤處理與 Result Pattern 技能
---
# Error Handling Skill
## 描述
協助開發者實作統一的錯誤處理機制...
## 職責
- Result Pattern 應用
- Failure 物件建立
- 錯誤碼映射
## 核心原則
1. 業務邏輯不拋出例外
2. 使用 Result<T, Failure> 回傳
3. 保存原始例外到 Failure.Exception
結構:
.github/skills/
└── api-development/
├── skill.md
├── references/
│ └── api-development-workflow.md
└── assets/
├── controller-template.cs
└── openapi-endpoint-template.yml
skill.md:
---
name: api-development
description: API 開發流程引導技能
---
# API Development Skill
## 描述
協助開發者選擇合適的 API 開發流程...
## 職責
- API First vs Code First 流程選擇
- OpenAPI 規格管理
- Controller 程式碼生成
## 參考文件
- [API 開發工作流程](./references/api-development-workflow.md)
## 範本檔案
- [Controller 範本](./assets/controller-template.cs)
- [OpenAPI 端點範本](./assets/openapi-endpoint-template.yml)
檔案: .github/agents/architecture-review.agent.md
---
description: 架構檢視與建議專家
tools: ['grep', 'glob', 'view', 'task']
---
# Architecture Review Agent
我是架構檢視與建議專家,分析現有程式碼架構。
## 專業領域
- Repository Pattern 設計評估
- Result Pattern 應用審查
- EF Core 最佳實踐驗證
## 審查流程
### 1. 規範檢查
檢查是否遵循 `@CLAUDE.md` 規範:
- [ ] 使用 Primary Constructor?
- [ ] Repository 使用 `IDbContextFactory<T>`?
- [ ] 讀取查詢使用 `AsNoTracking()`?
### 2. 反模式識別
識別常見反模式:
- Controller 包含業務邏輯
- 直接注入 DbContext
- 未使用 AsNoTracking
### 3. 輸出報告
產生優先級分類的改善建議:
## 架構審查報告
### 🔴 高優先級 (Critical)
1. **問題描述**
- 位置: `檔案路徑:行號`
- 影響: 影響描述
- 建議: 改善建議
### 🟡 中優先級 (Important)
...
### 🟢 低優先級 (Nice to Have)
...
我需要設計一個處理 XXX 的 Skill
本 Skill 會引導您:
我需要設計一個 XXX 專家的 Agent
本 Skill 會引導您:
請檢視 @.github/skills/my-skill/skill.md 的設計品質
本 Skill 會:
project-init - 專案初始化時可能需要建立 Skillbdd-practices - BDD 實踐參考project-setup - 專案初始化協調feature-development - 功能開發協調# ❌ 錯誤
檔案名: my-skill/skill.md
frontmatter name: mySkill # 不一致
# ✅ 正確
檔案名: my-skill/skill.md
frontmatter name: my-skill # 一致
# ❌ 錯誤
---
tools: ['view', 'grep']
# 缺少 description
---
# ✅ 正確
---
description: 清晰的角色描述
tools: ['view', 'grep']
---