从项目代码中提取特定功能的完整实现链路,生成含业务逻辑、数据流、异常处理等要素的技术开发文档,附 Mermaid 流程图/时序图。
---
name: function-extraction
description: 从项目代码中提取特定功能的完整实现链路,生成含业务逻辑、数据流、异常处理等要素的技术开发文档,附 Mermaid 流程图/时序图。
---
# 功能文档提取
从项目代码中提取特定功能的完整实现流程,生成可供其他开发人员独立实现相同功能的技术开发文档。
## 核心指令
1. **确认目标功能** → 用户提供功能名称
2. **定位入口点** → 用户提供直接使用;未提供则搜索后展示结果,由用户确认或手动指定
3. **追踪完整链路** → 从入口到流程结束
4. **生成文档** → 使用 [template.md](template.md) 模板
5. **输出 Mermaid 图表** → 流程图 + 时序图
---
## 第一步:需求确认
**必须获取**:
- 目标功能名称
- 入口位置:
- 用户已提供 → 直接使用
- 用户未提供 → 搜索定位后展示结果,等待用户选择:
- ✅ 确认 AI 找到的入口,开始执行
- 🔄 不满意,让 AI 重新搜索
- ✏️ 不满意,用户手动指定入口后再执行
---
## 第二步:代码分析
**分析深度标准**:
- 入口点:触发功能的第一行代码
- 调用链:追踪到功能执行流程结束为止
- 关键代码:影响功能逻辑走向或数据状态的代码
**遇到问题时的处理**:
| 问题 | 处理方式 |
|------|----------|
| 找不到入口 | 询问用户提供更多线索(页面名、按钮文字等) |
| 代码过于复杂 | 默认展开分支,输出完整流程 |
| 代码缺少注释 | 基于代码行为推断,标注"推断"字样 |
---
## 第三步:生成文档
使用 [template.md](template.md) 模板,根据功能实际情况选择适用章节。
---
## 输出要求
**核心原则**:
1. **完整性**:覆盖功能执行的完整链路
2. **准确性**:代码路径和行号必须准确,可直接定位
3. **可操作性**:包含足够细节,使不熟悉项目的开发人员能独立实现
4. **闭环性**:形成完整的功能闭环,确保从触发入口→处理链路→最终输出(含正常结果和异常分支)的每条路径都有始有终,无遗漏节点
**Mermaid 图表(默认必须输出)**:
| 内容 | 图表类型 |
|------|----------|
| 业务逻辑流程 | `flowchart` |
| 数据/调用流程 | `sequenceDiagram` |
| 模块依赖关系 | `graph` |
**以下情况先询问用户再决定是否输出**:
- 功能仅有单一线性流程(无分支),图表可能冗余
- 流程超过 15 个节点,可能需要拆分为多图
- 用户明确表示不需要图表
don't have the plugin yet? install it then click "run inline in claude" again.