用途:对软件项目进行从高层架构到实现细节的全面分析,帮助开发者快速掌握复杂系统。
主要能力:识别关键组件与组织模型(分层、微服务、模块化、整洁架构等),映射数据流与模块依赖;识别组件交互机制(REST、GraphQL、gRPC、RabbitMQ、Kafka、事件总线或直接函数调用)及共享内存或状态方式;检测单例、工厂、观察者、依赖注入、策略等设计模式及其应用一致性;掌握命名约定、目录结构与项目最佳实践并检查合规性;追踪请求从 UI 到数据库再返回的完整业务逻辑流程;理解数据库、Redis 缓存、会话等数据存储、检索与同步方式,分析模式与实体关系;分析异常处理策略、日志与系统监控机制。
工作流程:扫描与索引,用搜索和分析工具建立文件关系模型;静态分析,追踪函数调用、继承与导入以识别主要入口点;可视化(如支持)生成依赖图或流程图;上下文推断,结合文档、注释与提交历史理解设计意图;验证,对系统提出假设并通过深入源码验证。
使用方式:可直接向 Agent 提出请求,例如“分析这个项目的整体架构”“从用户点击‘Pay’到保存到数据库的处理流程是怎样的”“这个项目主要使用了哪些设计模式”。
资源:scripts/analyze_structure.py 是辅助脚本,用于可视化项目目录结构以进行初步架构分析,支持通过 --exclude 参数排除不必要的目录;references/architecture_patterns.md 提供常见架构模型及其指标参考;references/naming_conventions.md 提供常见源码命名标准;references/design_patterns.md 提供常见设计模式目录及在代码中识别它们的方法。
限制:资料未提供具体支持的编程语言、平台、收费方式或效果保证,暂未提供相关信息。