关于 architecture-blueprint-generator
architecture-blueprint-generator 是一项可配置的提示词技能,用于根据代码库生成架构蓝图。它支持自动识别或指定技术栈与架构模式,并可选择图表、实现模式、代码示例和决策记录。
主要功能
- 01项目技术栈与架构模式分析
- 02可配置图表类型和细节级别
- 03生成组件、依赖与数据架构说明
- 04可选实现模式、代码示例和决策记录
适用场景
- 01为现有代码库整理架构文档
- 02分析组件边界与依赖关系
- 03为新功能开发提供架构参考
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ github/ awesome-copilot --skill architecture-blueprint-generator安装后在 Claude Code 中输入/architecture-blueprint-generator确认已加载。
详细介绍
全面的项目架构蓝图生成器
配置变量
${PROJECT_TYPE="自动检测|.NET|Java|React|Angular|Python|Node.js|Flutter|其他"} ${ARCHITECTURE_PATTERN="自动检测|整洁架构|微服务|分层|MVVM|MVC|六边形|事件驱动|无服务器|单体|其他"} ${DIAGRAM_TYPE="C4|UML|流程图|组件图|无"} ${DETAIL_LEVEL="高层级|详细|全面|可落地实现"} ${INCLUDES_CODE_EXAMPLES=true|false} ${INCLUDES_IMPLEMENTATION_PATTERNS=true|false} ${INCLUDES_DECISION_RECORDS=true|false} ${FOCUS_ON_EXTENSIBILITY=true|false}
生成的提示词
"创建一个全面的 'Project_Architecture_Blueprint.md' 文档,深入分析代码库中的架构模式,作为维护架构一致性的权威参考。采用以下方法:
1. 架构检测与分析
-
${PROJECT_TYPE == "Auto-detect" ? "分析项目结构,通过检查以下内容来识别所使用的所有技术栈和框架:
- 项目文件和配置文件
- 包依赖和导入语句
- 框架特定的模式和约定
- 构建和部署配置" : "专注于 ${PROJECT_TYPE} 特定的模式和实践"}
-
${ARCHITECTURE_PATTERN == "Auto-detect" ? "通过分析以下内容确定架构模式:
- 文件夹组织和命名空间
- 依赖流向和组件边界
- 接口隔离和抽象模式
- 组件之间的通信机制" : "记录 ${ARCHITECTURE_PATTERN} 架构是如何实现的"}
2. 架构概览
- 对整体架构方法提供清晰、简洁的说明
- 记录架构选择中体现的指导原则
- 识别架构边界及其执行方式
- 注明任何混合架构模式或对标准模式的调整
3. 架构可视化
${DIAGRAM_TYPE != "None" ? `在多个抽象层级创建 ${DIAGRAM_TYPE} 图:
- 显示主要子系统的高层级架构概览
- 显示关系和依赖的组件交互图
- 显示信息如何在系统中流转的数据流图
- 确保图表准确反映实际实现,而非理论模式` : "根据实际代码依赖关系描述组件关系,提供以下内容的清晰文字说明:
- 子系统组织和边界
- 依赖方向和组件交互
- 数据流和流程顺序"}
4. 核心架构组件
对于代码库中发现的每个架构组件:
-
目的与职责:
- 在架构中的主要功能
- 所涉及的业务领域或技术关注点
- 边界和范围限制
-
内部结构:
- 组件内类/模块的组织方式
- 关键抽象及其实现
- 所使用的设计模式
-
交互模式:
- 组件如何与其他组件通信
- 暴露和消费的接口
- 依赖注入模式
- 事件发布/订阅机制
-
演进模式:
- 组件如何扩展
- 变化点和插件机制
- 配置和自定义方法
5. 架构分层与依赖
- 映射代码库中实现的分层结构
- 记录层之间的依赖规则
- 识别实现层分离的抽象机制
- 注明任何循环依赖或分层违规
- 记录用于保持分离的依赖注入模式
6. 数据架构
- 记录领域模型的结构与组织方式
- 梳理实体关系与聚合模式
- 识别数据访问模式(仓储、数据映射器等)
- 记录数据转换与映射方法
- 说明缓存策略及其实现
- 记录数据校验模式
7. 横切关注点的实现
记录横切关注点的实现模式:
-
认证与授权:
- 安全模型的实现
- 权限强制执行模式
- 身份管理方法
- 安全边界模式
-
错误处理与韧性:
- 异常处理模式
- 重试与熔断器实现
- 降级与优雅降级策略
- 错误上报与监控方法
-
日志与监控:
- 埋点模式
- 可观测性实现
- 诊断信息流转
- 性能监控方法
-
校验:
- 输入校验策略
- 业务规则校验的实现
- 校验职责的分配
- 错误上报模式
-
配置管理:
- 配置来源模式
- 环境特定配置策略
- 密钥管理方法
- 功能开关实现
8. 服务通信模式
- 记录服务边界的定义
- 识别通信协议与格式
- 梳理同步与异步通信模式
- 记录 API 版本管理策略
- 识别服务发现机制
- 说明服务通信中的韧性模式
9. 技术特定的架构模式
${PROJECT_TYPE == "Auto-detect" ? "针对每个检测到的技术栈,记录特定的架构模式:" : 记录 ${PROJECT_TYPE} 特定的架构模式:}
${(PROJECT_TYPE == ".NET" || PROJECT_TYPE == "Auto-detect") ? "#### .NET 架构模式(如检测到)
- 宿主与应用程序模型的实现
- 中间件管道的组织
- 框架服务集成模式
- ORM 与数据访问方法
- API 实现模式(控制器、最小 API 等)
- 依赖注入容器的配置" : ""}
${(PROJECT_TYPE == "Java" || PROJECT_TYPE == "Auto-detect") ? "#### Java 架构模式(如检测到)
- 应用容器与引导过程
- 依赖注入框架的使用(Spring、CDI 等)
- AOP 实现模式
- 事务边界管理
- ORM 配置与使用模式
- 服务实现模式" : ""}
${(PROJECT_TYPE == "React" || PROJECT_TYPE == "Auto-detect") ? "#### React 架构模式(如检测到)
- 组件组合与复用策略
- 状态管理架构
- 副作用处理模式
- 路由与导航方法
- 数据获取与缓存模式
- 渲染优化策略" : ""}
${(PROJECT_TYPE == "Angular" || PROJECT_TYPE == "Auto-detect") ? "#### Angular 架构模式(如检测到)
- 模块组织策略
- 组件层级设计
- 服务与依赖注入模式
- 状态管理方法
- 响应式编程模式
- 路由守卫的实现" : ""}
${(PROJECT_TYPE == "Python" || PROJECT_TYPE == "Auto-detect") ? "#### Python 架构模式(如检测到)
- 模块组织方法
- 依赖管理策略
- 面向对象与函数式实现模式
- 框架集成模式
- 异步编程方法" : ""}
10. 实现模式
${INCLUDES_IMPLEMENTATION_PATTERNS ? "记录关键架构组件的具体实现模式:
-
接口设计模式:
- 接口隔离方法
- 抽象层级决策
- 泛型与特定接口模式
- 默认实现模式
-
服务实现模式:
- 服务生命周期管理
- 服务组合模式
- 操作实现模板
- 服务内的错误处理
-
仓储实现模式:
- 查询模式实现
- 事务管理
- 并发处理
- 批量操作模式
-
控制器/API 实现模式:
- 请求处理模式
- 响应格式化方法
- 参数校验
- API 版本控制实现
-
领域模型实现:
- 实体实现模式
- 值对象模式
- 领域事件实现
- 业务规则执行" : "说明详细的实现模式因代码库而异。"}
11. 测试架构
- 记录与架构一致的测试策略
- 识别测试边界模式(单元、集成、系统)
- 映射测试替身和 mocking 方法
- 记录测试数据策略
- 注明测试工具和框架的集成
12. 部署架构
- 记录从配置中得出的部署拓扑
- 识别特定环境的架构适配
- 映射运行时依赖解析模式
- 记录跨环境的配置管理
- 识别容器化和编排方法
- 注明云服务集成模式
13. 扩展与演进模式
${FOCUS_ON_EXTENSIBILITY ? "提供扩展架构的详细指导:
-
功能新增模式:
- 如何在保持架构完整性的同时添加新功能
- 按类型放置新组件的位置
- 依赖引入准则
- 配置扩展模式
-
修改模式:
- 如何安全地修改现有组件
- 保持向后兼容的策略
- 弃用模式
- 迁移方式
-
集成模式:
- 如何集成新的外部系统
- 适配器实现模式
- 防腐层模式
- 服务门面实现" : "记录架构中的关键扩展点。"}
${INCLUDES_CODE_EXAMPLES ? "### 14. 架构模式示例 提取能够说明关键架构模式的代表性代码示例:
-
分层分离示例:
- 接口定义与实现分离
- 跨层通信模式
- 依赖注入示例
-
组件通信示例:
- 服务调用模式
- 事件发布与处理
- 消息传递实现
-
扩展点示例:
- 插件注册与发现
- 扩展接口实现
- 配置驱动的扩展模式
为每个示例提供足够的上下文以清晰展示模式,但保持示例简洁并聚焦于架构概念。" : ""}
${INCLUDES_DECISION_RECORDS ? "### 15. 架构决策记录 记录代码库中明显体现的关键架构决策:
-
架构风格决策:
- 为何选择当前架构模式
- 考虑过的替代方案(基于代码演进)
- 影响该决策的约束条件
-
技术选型决策:
- 关键技术选择及其架构影响
- 框架选择理由
- 自定义组件与现成组件的选择决策
-
实现方式决策:
- 所选择的具体实现模式
- 标准模式的适配
- 性能与可维护性之间的权衡
对于每项决策,注明:
- 使该决策成为必要的背景
- 决策时考虑的因素
- 产生的后果(正面和负面)
- 引入的未来灵活性或限制" : ""}
${INCLUDES_DECISION_RECORDS ? "16" : INCLUDES_CODE_EXAMPLES ? "15" : "14"}. 架构治理
- 记录如何维护架构一致性
- 识别架构合规性的自动化检查
- 注明代码库中体现的架构评审流程
- 记录架构文档实践
${INCLUDES_DECISION_RECORDS ? "17" : INCLUDES_CODE_EXAMPLES ? "16" : "15"}. 新开发蓝图
创建用于实现新功能的清晰架构指南:
-
开发工作流:
- 不同类型功能的起点
- 组件创建顺序
- 与现有架构的集成步骤
- 按架构层次划分的测试方式
-
实现模板:
- 关键架构组件的基础类/接口模板
- 新组件的标准文件组织
- 依赖声明模式
- 文档要求
-
常见陷阱:
- 需要避免的架构违规
- 常见架构错误
- 性能考量
- 测试盲点
包含此蓝图的生成时间信息,以及随着架构演进保持其更新的建议。"