🚀 快速安装

复制以下命令并运行,立即安装此 Skill:

npx @anthropic-ai/skills install github/awesome-copilot/project-workflow-analysis-blueprint-generator

💡 提示:需要 Node.js 和 NPM

项目工作流文档生成器

配置变量

${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 == “自动检测” ? 
  “通过检查以下内容确定持久化机制:
   - 数据库上下文/连接配置
   - 仓库实现
   - 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. 数据访问实现

  • 记录仓库接口及其实现
  • 显示带有参数和返回类型的完整方法签名
  • 包含实际的查询实现
  • 记录包含所有属性的实体/模型类定义
  • 展示事务处理模式

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. 命名约定

记录以下内容的一致模式:

  • 控制器命名(例如,实体名Controller
  • 服务命名(例如,实体名Service
  • 仓库命名(例如,I实体名Repository
  • DTO 命名(例如,实体名Request实体名Response
  • CRUD 操作的方法命名模式
  • 变量命名约定
  • 文件组织模式

12. 实现模板

为以下内容提供可重用的代码模板:

  • 按照该模式创建新的 API 端点
  • 实现新的服务方法
  • 添加新的仓库方法
  • 创建新的领域模型类
  • 实现正确的错误处理

特定于技术的实现模式

.NET 实现模式(如果检测到):

${PROJECT_TYPE == “.NET” || PROJECT_TYPE == “自动检测” ? 
  “- 包含属性、过滤器和依赖注入的完整控制器类
   - Startup.cs 或 Program.cs 中的服务注册
   - Entity Framework DbContext 配置
   - 使用 EF Core 或 Dapper 的仓库实现
   - AutoMapper 配置文件配置
   - 用于横切关注点的中间件实现
   - 扩展方法模式
   - 用于配置的选项模式实现
   - 使用 ILogger 的日志记录实现
   - 身份验证/授权过滤器或策略实现” : “”}

Spring 实现模式(如果检测到):

${PROJECT_TYPE == “Java” || PROJECT_TYPE == “Spring” || PROJECT_TYPE == “自动检测” ? 
  “- 包含注解和依赖注入的完整控制器类
   - 具有事务边界的服务实现
   - 仓库接口和实现
   - 带有关联关系的 JPA 实体定义
   - DTO 类实现
   - Bean 配置和组件扫描
   - 异常处理器实现
   - 自定义验证器实现” : “”}

React 实现模式(如果检测到):

${PROJECT_TYPE == “React” || PROJECT_TYPE == “自动检测” ? 
  “- 带有 props 和 state 的组件结构
   - Hook 实现模式(useState, useEffect, 自定义 hooks)
   - API 服务实现
   - 状态管理模式(Context, Redux)
   - 表单处理实现
   - 路由配置” : “”}

实施指南

基于已记录的工作流,为实施新功能提供具体指导:

1. 分步实施流程

  • 添加类似功能时应从何处开始
  • 实施顺序(例如,模型 → 仓库 → 服务 → 控制器)
  • 如何与现有的横切关注点集成

2. 应避免的常见陷阱

  • 识别当前实现中容易出错的区域
  • 注意性能考量
  • 列出常见的错误或已遇到的问题

3. 扩展机制

  • 记录如何接入现有的扩展点
  • 展示如何在不修改现有代码的情况下添加新行为
  • 解释配置驱动的特性模式

结论:
总结在实现新功能时应遵循的最重要模式,以保持与代码库的一致性。”

📄 原始文档

完整文档(英文):

https://skills.sh/github/awesome-copilot/project-workflow-analysis-blueprint-generator

💡 提示:点击上方链接查看 skills.sh 原始英文文档,方便对照翻译。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。