# Phase 2: 系统架构分析指南 **执行时间**:约 2 分钟 **目标**:识别子系统边界和通信机制 --- ## ⚠️ 重要约束 **Explore agent 只返回文本结果,不要生成任何文件。** --- ## 分析方法 使用 **Task tool** 调用内置的 **Explore sub-agent** 进行深度分析。 ### 步骤 1: 启动 Task tool 指定以下参数: - `subagent_type: Explore` - `description: "系统架构分析"` - `prompt`: 包含下面的详细任务 ### 步骤 2: Sub-agent 任务定义 ``` ⚠️ 重要约束:本次分析只返回文本结果,禁止生成任何文件(.md, .txt 等)。 所有 Mermaid 图表、清单、分析结论都应包含在你的文本回复中,不要使用 Write 或其他文件创建工具。 分析项目的子系统划分和通信机制: 1. 子系统边界识别 - 扫描顶层目录,识别 frontend/, backend/, agents/ 等模式 - 查找独立配置文件(package.json, requirements.txt) - 解析 docker-compose.yml 中的 services 2. API 端点定位 - 搜索:@app.(get|post|put|delete) - 搜索:@router., app.route - 提取端点路径和处理函数位置 3. 通信协议识别 - HTTP: requests.get/post, axios, fetch - WebSocket: WebSocket, socket.io - 消息队列: RabbitMQ, Kafka, Redis pub/sub - gRPC: grpc, .proto 4. 数据库连接 - PostgreSQL: psycopg2, SQLAlchemy - Redis: redis.Redis - MongoDB: pymongo 输出格式: - 子系统清单(名称、路径、技术栈、入口文件:行号) - 通信关系(from → to, 协议, 端点) - 生成 Mermaid graph TB 架构图(使用 `
` 换行) ``` ### 步骤 3: 执行过程 1. **Explore sub-agent 自动执行**:使用 Glob、Grep、Read 工具搜索代码 2. **接收结果**:sub-agent 返回分析报告 3. **验证结果**:检查是否包含所有子系统和通信关系 --- ## 预期输出格式 ### 1. Mermaid 系统架构图 ```mermaid graph TB User[用户] --> Frontend[前端
React + TypeScript] Frontend -->|HTTP POST /api/research| Backend[后端 API
FastAPI] Frontend -->|WebSocket /ws| Backend Backend -->|invoke| AgentLayer[Agent 编排层
LangGraph] AgentLayer -->|缓存| Redis[(Redis)] AgentLayer -->|持久化| DB[(PostgreSQL)] style AgentLayer fill:#f9f,stroke:#333,stroke-width:3px ``` ### 2. 代码位置索引 - Frontend 入口: `frontend/src/main.tsx:1` - Backend 入口: `backend/app/main.py:1` - API 定义: `backend/app/routes.py:42` - Agent 调用: `backend/app/routes.py:58` ### 3. 子系统清单 ``` 识别出 3 个子系统: ├─ Frontend (frontend/) │ ├─ 技术: React 18 + TypeScript │ └─ 入口: src/main.tsx:1 ├─ Backend (backend/) │ ├─ 技术: FastAPI + Python 3.11 │ └─ 入口: app/main.py:1 └─ Agent Layer (agents/) ├─ 技术: LangGraph 0.2.5 └─ 入口: graph.py:1 ``` ### 4. 通信机制 ``` - Frontend → Backend: WebSocket (/ws) - Frontend → Backend: HTTP POST (/api/research) - Backend → Agent Layer: 直接调用 invoke() - Agent Layer → Redis: 缓存中间结果 - Agent Layer → PostgreSQL: 持久化数据 ``` --- ## 注意事项 1. **配置文件优先**:优先解析 docker-compose.yml,它通常包含完整的服务拓扑 2. **多种通信协议**:一个项目可能同时使用 HTTP、WebSocket、消息队列 3. **入口文件定位**:确保记录每个子系统的主入口文件和行号 4. **Mermaid 样式**:使用 `style` 语法突出显示核心子系统