SKILL.md
readonlyread-only
name
project-workflow-analysis-blueprint-generator
description
全方位的技術無關提示詞產生器,用於記錄端到端的應用程式工作流程。自動偵測專案架構模式、技術棧與資料流模式,產生涵蓋進入點、服務層、資料存取、錯誤處理與測試方法(包括 .NET、Java/Spring、React 及微服務架構等多種技術)的詳細實作藍圖。
專案工作流程文件產生器
設定變數
${PROJECT_TYPE="自動偵測|.NET|Java|Spring|Node.js|Python|React|Angular|微服務|其他"}
<!-- 主要技術棧 -->
${ENTRY_POINT="API|GraphQL|前端|CLI|訊息消費者|排程工作|自訂"}
<!-- 流程的起點 -->
${PERSISTENCE_TYPE="自動偵測|SQL 資料庫|NoSQL 資料庫|檔案系統|外部 API|訊息佇列|快取|無"}
<!-- 資料儲存類型 -->
${ARCHITECTURE_PATTERN="自動偵測|分層式|整潔架構|CQRS|微服務|MVC|MVVM|無伺服器|事件驅動|其他"}
<!-- 主要架構模式 -->
${WORKFLOW_COUNT=1-5}
<!-- 要記錄的工作流程數量 -->
${DETAIL_LEVEL="標準|可實作"}
<!-- 包含的實作細節程度 -->
${INCLUDE_SEQUENCE_DIAGRAM=true|false}
<!-- 產生序列圖 -->
${INCLUDE_TEST_PATTERNS=true|false}
<!-- 包含測試方法 -->
產生的提示詞
"分析程式碼庫,並記錄 ${WORKFLOW_COUNT} 個具代表性的端到端工作流程,
作為類似功能的實作範本。請使用以下方法:
初始偵測階段
${PROJECT_TYPE == "自動偵測" ?
"首先檢查程式碼庫結構以識別技術:
- 檢查 .NET 解決方案/專案、Spring 設定、Node.js/Express 檔案等
- 識別使用的主要程式語言與框架
- 根據資料夾結構與關鍵元件判斷架構模式"
: "專注於 ${PROJECT_TYPE} 的模式與慣例"}
${ENTRY_POINT == "自動偵測" ?
"透過尋找以下項目來識別典型的進入點:
- API 控制器或路由定義
- GraphQL 解析器
- 發起網路請求的 UI 元件
- 訊息處理器或事件訂閱者
- 排程工作定義"
: "專注於 ${ENTRY_POINT} 進入點"}
${PERSISTENCE_TYPE == "自動偵測" ?
"透過檢查以下項目來判斷持久化機制:
- 資料庫上下文/連線設定
- Repository 實作
- ORM 對應
- 外部 API 用戶端
- 檔案系統互動"
: "專注於 ${PERSISTENCE_TYPE} 互動"}
工作流程文件說明
針對系統中最具代表性的 ${WORKFLOW_COUNT} 個工作流程:
1. 工作流程概觀
- 提供工作流程的名稱與簡短描述
- 說明其服務的業務目的
- 識別觸發動作或事件
- 列出完整工作流程中涉及的所有檔案/類別
2. 進入點實作
API 進入點:
${ENTRY_POINT == "API" || ENTRY_POINT == "自動偵測" ?
"- 記錄接收請求的 API 控制器類別與方法
- 顯示完整的方法簽章,包含屬性/註解
- 包含完整的請求 DTO/模型類別定義
- 記錄驗證屬性與自訂驗證器
- 顯示驗證/授權屬性與檢查" : ""}
GraphQL 進入點:
${ENTRY_POINT == "GraphQL" || ENTRY_POINT == "自動偵測" ?
"- 記錄 GraphQL 解析器類別與方法
- 顯示查詢/變更的完整綱要定義
- 包含輸入類型定義
- 顯示解析器方法實作與參數處理" : ""}
前端進入點:
${ENTRY_POINT == "前端" || ENTRY_POINT == "自動偵測" ?
"- 記錄發起 API 呼叫的元件
- 顯示觸發請求的事件處理器
- 包含 API 用戶端服務方法
- 顯示與請求相關的狀態管理程式碼" : ""}
訊息消費者進入點:
${ENTRY_POINT == "訊息消費者" || ENTRY_POINT == "自動偵測" ?
"- 記錄訊息處理器類別與方法
- 顯示訊息訂閱設定
- 包含完整的訊息模型定義
- 顯示反序列化與驗證邏輯" : ""}
3. 服務層實作
- 記錄每個涉及的服務類別及其相依性
- 顯示完整的方法簽章,包含參數與回傳型別
- 包含實際的方法實作與關鍵業務邏輯
- 記錄適用的介面定義
- 顯示相依性注入註冊模式
CQRS 模式:
${ARCHITECTURE_PATTERN == "CQRS" || ARCHITECTURE_PATTERN == "自動偵測" ?
"- 包含完整的命令/查詢處理器實作" : ""}
整潔架構模式:
${ARCHITECTURE_PATTERN == "整潔架構" || ARCHITECTURE_PATTERN == "自動偵測" ?
"- 顯示用例/互動器實作" : ""}
4. 資料對應模式
- 記錄 DTO 到領域模型的對應程式碼
- 顯示物件對應器設定或手動對應方法
- 包含對應過程中的驗證邏輯
- 記錄對應過程中建立的任何領域事件
5. 資料存取實作
- 記錄 Repository 介面及其實作
- 顯示完整的方法簽章,包含參數與回傳型別
- 包含實際的查詢實作
- 記錄實體/模型類別定義與所有屬性
- 顯示交易處理模式
SQL 資料庫模式:
${PERSISTENCE_TYPE == "SQL 資料庫" || PERSISTENCE_TYPE == "自動偵測" ?
"- 包含 ORM 設定、註解或 Fluent API 使用
- 顯示實際的 SQL 查詢或 ORM 陳述式" : ""}
NoSQL 資料庫模式:
${PERSISTENCE_TYPE == "NoSQL 資料庫" || PERSISTENCE_TYPE == "自動偵測" ?
"- 顯示文件結構定義
- 包含文件查詢/更新操作" : ""}
6. 回應建構
- 記錄回應 DTO/模型類別定義
- 顯示從領域/實體模型到回應模型的對應
- 包含狀態碼選擇邏輯
- 記錄錯誤回應結構與產生方式
7. 錯誤處理模式
- 記錄工作流程中使用的例外類型
- 顯示各層的 try/catch 模式
- 包含全域例外處理器設定
- 記錄錯誤記錄實作
- 顯示重試策略或斷路器模式
- 包含失敗情境的補償動作
8. 非同步處理模式
- 記錄背景工作排程程式碼
- 顯示事件發布實作
- 包含訊息佇列發送模式
- 記錄回呼或 Webhook 實作
- 顯示非同步操作的追蹤與監控方式
測試方法(選用):
${INCLUDE_TEST_PATTERNS ?
"9. **測試方法**
- 記錄各層的單元測試實作
- 顯示模擬模式與測試固定裝置設定
- 包含整合測試實作
- 記錄測試資料產生方法
- 顯示 API/控制器測試實作" : ""}
序列圖(選用):
${INCLUDE_SEQUENCE_DIAGRAM ?
"10. **序列圖**
- 產生詳細的序列圖,顯示所有元件
- 包含帶有參數型別的方法呼叫
- 顯示元件之間的回傳值
- 記錄條件流程與錯誤路徑" : ""}
11. 命名慣例
記錄一致的模式:
- 控制器命名(例如
EntityNameController) - 服務命名(例如
EntityNameService) - Repository 命名(例如
IEntityNameRepository) - DTO 命名(例如
EntityNameRequest、EntityNameResponse) - CRUD 操作的方法命名模式
- 變數命名慣例
- 檔案組織模式
12. 實作範本
提供可重複使用的程式碼範本:
- 依照模式建立新的 API 端點
- 實作新的服務方法
- 新增 Repository 方法
- 建立新的領域模型類別
- 實作適當的錯誤處理
特定技術的實作模式
.NET 實作模式(若偵測到):
${PROJECT_TYPE == ".NET" || PROJECT_TYPE == "自動偵測" ?
"- 完整的控制器類別,包含屬性、篩選器與相依性注入
- 在 Startup.cs 或 Program.cs 中的服務註冊
- Entity Framework DbContext 設定
- 使用 EF Core 或 Dapper 的 Repository 實作
- AutoMapper Profile 設定
- 跨領域關注點的中介軟體實作
- 擴充方法模式
- 設定的 Options 模式實作
- 使用 ILogger 的記錄實作
- 驗證/授權篩選器或原則實作" : ""}
Spring 實作模式(若偵測到):
${PROJECT_TYPE == "Java" || PROJECT_TYPE == "Spring" || PROJECT_TYPE == "自動偵測" ?
"- 完整的控制器類別,包含註解與相依性注入
- 具有交易邊界的服務實作
- Repository 介面與實作
- 包含關聯的 JPA 實體定義
- DTO 類別實作
- Bean 設定與元件掃描
- 例外處理器實作
- 自訂驗證器實作" : ""}
React 實作模式(若偵測到):
${PROJECT_TYPE == "React" || PROJECT_TYPE == "自動偵測" ?
"- 包含 props 與 state 的元件結構
- Hook 實作模式(useState、useEffect、自訂 Hook)
- API 服務實作
- 狀態管理模式(Context、Redux)
- 表單處理實作
- 路由設定" : ""}
實作指南
根據記錄的工作流程,提供實作新功能的具體指引:
1. 逐步實作流程
- 新增類似功能時從何處開始
- 實作順序(例如 模型 → Repository → 服務 → 控制器)
- 如何與現有的跨領域關注點整合
2. 應避免的常見陷阱
- 識別目前實作中容易出錯的區域
- 注意效能考量
- 列出常見的錯誤或問題
3. 擴充機制
- 記錄如何插入現有的擴充點
- 顯示如何在不修改現有程式碼的情況下新增行為
- 說明設定驅動的功能模式
結論:
總結實作新功能時應遵循的最重要模式,以維持與程式碼庫的一致性。"






