← 返回文档广场
全屏预览:【SKILL】源码与模块关联分析文档
预览界面 🌐 公开
作者:loom · 文档ID:note-1780074040450 · 最近更新:2026-07-12 01:23

name: source-doc-analyzer
description: 用于分析单个源码文件或大型功能模块,生成包含统一源码链接、Mermaid图表、费曼通俗解释及问题解答的 Markdown 文档,并默认执行 Git 忽略策略。


源码与模块关联分析文档

目标

把单个源码文件或整个大型功能模块分析成 Markdown 文档。文档必须回答模块的核心职责、设计思路、关键流转过程、风险改造点,并通过一致的链接完美映射回源码。同时,要用费曼学习法进行通俗讲解,并解答用户提出的所有具体疑问。

核心工作流

  1. 确认输入与输出。
    - 目标对象:用户指定的单个文件,或整个文件夹/大功能模块。
    - 输出目录:若未指定,优先在当前工作目录创建 TEMP_MD 文件夹。
    - Git 追踪:默认执行 Git 忽略策略(详见下方规则),确保生成的分析文档绝对不污染项目提交记录。

  2. 读取源码与结构。
    - 宏观把控:优先使用 rg (ripgrep) 或终端工具提取核心类、接口、依赖关系。
    - 微观深挖:绝不只看方法签名,必须分段读取关键实现逻辑。若为大模块,理清模块间的调用拓扑图。

  3. 建立源码链接(严格统一原则)。
    - 必须使用相对路径链接到源码:[显示文本](../path/to/File.cs#锚点)
    - 格式强制统一:全篇必须严格只使用一种锚点定位方式(要么全部使用 #L行号,要么全部使用 #函数名)。绝对不允许在同一个文档或同批次文档中混用。

  4. 动态详细度与文档切分。
    - 默认状态:输出正常长度的内容,覆盖核心流程和主要方法。
    - 深度模式:若检测到用户的提示词中包含“详尽”、“仔细”、“全面”、“深入”等词汇,必须极度扩充内容细节,深挖每一层调用链条、数据结构变化和边缘分支;此时允许并建议将输出拆分成多个 Markdown 文档(例如:按子模块拆分为 <模块名>_核心架构.md<模块名>_数据流转.md)。

  5. 绘制图表与组织内容。
    - 图表化:分析模块或复杂流程时,必须使用 Mermaid 语法生成标准的流程图(Flowchart)或 UML 类图(Class Diagram)。
    - 费曼学习法:在“设计思路”等抽象环节,必须使用生活中的通俗事物作为比喻,把复杂、晦涩的架构讲得连外行也能听懂。
    - 问题响应:若用户调用 Skill 时附带了疑问,必须在专门的“用户疑问解答”章节中提供详尽的针对性回复。

  6. 验证。
    - 确认 Markdown 文件(或文件组)成功生成,图表语法未越界,链接锚点格式全篇绝对统一。
    - 确认 Git 忽略策略已执行。

文档结构模板

(若进入“深度模式”拆分了多文档,请以此模板为基础进行合理变体;单文档严格参考此结构)

# <模块或文件名> 架构分析

分析范围:[`<主目录或核心文件>`](../relative/path/)

## 核心解答

<若用户在调用时提出了具体问题,在此处逐一详尽解答。若无,可略过此节。>

## 一句话概括

<用一句话说明该模块/文件在整个系统中承担的核心职责。>

## 架构与流程图

<必须使用 Mermaid 语法提供系统拓扑、UML类图或核心业务流程图>

## 设计思路 (费曼解析)

<使用费曼学习法,用通俗易懂的生活类比来解释这里的架构为什么这样设计。>

## 核心组件/方法索引

| 分类/组件 | 核心方法/类 | 位置 | 作用 |
|---|---|---:|---|
| <功能分类> | `<名称>` | [统一锚点](../relative/path/File.cs#锚点) | <通俗说明核心逻辑> |

## 核心流程走读

### 1. <流程名称>

代码定位:[`<入口名称>`](../relative/path/File.cs#锚点)

| 步骤 | 代码定位 | 逻辑说明 |
|---|---:|---|
| <执行步骤> | [统一锚点](../relative/path/File.cs#锚点) | <该步骤的数据变化与职责> |

## 风险和注意点

<列出真实的潜在风险、并发问题或性能瓶颈,必须附上代码位置。>

## 后续建议

<给出与用户目标相关的落地建议(如重构点、拓展接口预留等)。>

默认 Git 忽略策略(强制执行)

文档生成前或生成后,必须默认通过以下方式防止文档被 Git 追踪:

  1. 优先方案:如果当前目录是 Git 仓库,自动将输出的目录路径追加写入 .git/info/exclude 中(不污染项目代码库)。
  2. 备选方案:若无法写入 exclude,则在输出目录内创建 .gitignore,内容为:
    gitignore * !.gitignore
  3. 在最终对话回复中,必须向用户简要汇报:“已默认将输出目录加入 Git 忽略规则”。

全局质量要求

  • 除非检测到用户使用其他语言提问,否则默认使用简体中文输出。
  • Mermaid 图表中的连线和节点命名必须清晰,支持在标准 Markdown 预览器中渲染。
  • 绝不编造方法职责;遇到晦涩代码必须查看上下文后再下笔。
  • 最终回复中必须列出:所有生成文档的路径列表统一使用的锚点类型 以及 Git 忽略结果