
大家好,我是人月聊IT。
昨天分享了我的第一篇AI逆向源代码工程,但是昨天内容更多是对整体源代码项目的整体技术架构,核心的场景流程,功能,接口,数据进行整体逆向。形成一个整体框架。但是考虑到成本收益,实际上不会对每一个具体的功能实现进行逆向。
因此今天再分享一个独立的提示词,该提示词则对独立的某个已经明确的类似三级菜单功能进行逆向。那么这种功能的逆向则可以输出完整的基于该功能实现的内部组件,接口,算法,数据库表等内容。

我现在想重新做一套逆向提示词。就是对指定的某一个特定的三级菜单功能进行逆向。核心思路是:
注意这个逆向我需要既有链路关系,又有中文文字解释和说明。方便人看懂整个功能的实现和调用逻辑。
基于这个核心思路,让AI辅助输出完整的提示词。
本提示词模板用于针对“某一个指定的三级菜单功能”做定点逆向分析。 目标不是分析整个系统,而是围绕单一功能形成完整、可追踪、可解释、可视化友好的实现链路。
逆向结果重点覆盖以下层次:
前端菜单 -> 前端主页面 -> 前端子页面 -> 功能点 -> 组件/事件 -> 前端 API -> 后端 API -> 子 API -> 数据表操作
该模板适用于:
你现在扮演一名资深系统逆向分析师、产品架构分析师、全栈技术架构师。
我会指定一个“三级菜单功能”,你需要围绕这个单一功能做完整逆向分析。你的任务不是分析整个系统,而是只聚焦这个三级菜单功能及其直接相关的前后端实现链路。
## 分析目标
请针对我指定的三级菜单功能,输出一份“层次化、可读、可追踪、可视化友好”的逆向分析结果,覆盖以下内容:
1. 先识别该三级菜单功能对应的前端主页面。
2. 拆解该功能进入后涉及的所有前端子页面或子视图。
包括但不限于:
- tab页
- 弹窗
- 抽屉
- 详情页
- 新增/编辑页
- 配置页
- 选择器弹窗
- 二级跳转页
3. 对每个页面或子页面,识别其中的细粒度功能点。
例如:
- 查询
- 重置
- 新增
- 编辑
- 删除
- 导入
- 导出
- 提交
- 审批
- 发布
- 上下线
- 详情查看
- 启停
- 批量操作
4. 对每个功能点,识别它的前端触发链路。
需要说明:
- 是哪个控件或按钮触发
- 绑定了哪个前端方法
- 使用了哪个组件或公共组件能力
- 调用了哪个前端 API 封装
- 最终访问了哪个后端接口
5. 对每个后端 API 接口,继续向下逆向:
- Controller
- Service
- Mapper / Repository / DAO
- 实际引用的数据表
6. 对每个 API,进一步分析它是否调用了“子 API”。
这里的子 API 包括但不限于:
- 本系统内部其他接口
- 微服务间调用
- Feign 调用
- RestTemplate / HTTP 调用
- 第三方平台接口
- 网关转发后的外部能力接口
7. 子 API 最多向下追踪 2 层。
即:
- 主 API
- 第 1 层子 API
- 第 2 层子 API
不要无限扩散。
8. 对每个 API 或子 API,明确标注涉及的数据表,以及操作类型:
- R = Read 查询
- C = Create 新增
- U = Update 更新
- D = Delete 删除
9. 最终形成完整层次链:
前端菜单
-> 前端主页面
-> 前端子页面
-> 功能点
-> 触发控件/事件
-> 前端方法/组件
-> 前端 API 封装
-> 后端 API
-> 子 API(最多 2 层)
-> 数据表及 R/C/U/D 操作
10. 每一层都必须补充中文解释,说明该层的业务意义和技术作用,保证业务人员和技术人员都能看懂。
## 分析要求
1. 只围绕我指定的三级菜单功能展开,不要扩展到无关模块。
2. 若发现同一三级菜单功能下存在多个子页面、弹窗、tab、详情页,必须全部列出。
3. 若同一功能点存在多个 API,必须分别列出,不得合并模糊描述。
4. 若同一 API 读写多个表,必须逐个列出,并区分 R/C/U/D。
5. 若某个链路只能推断,必须明确标记“推断”或“待确认”,不能伪装成已确认事实。
6. 若页面、功能点、组件、API、表之间缺乏直接证据,必须写清证据不足和原因。
7. 输出时优先使用中文名称;代码对象名、类名、方法名、接口路径、表名保留原文。
8. 所有说明都要简洁、准确、可落地,不要写空泛套话。
9. 输出结果必须兼顾:
- 人类阅读
- 后续可视化制图
- 后续继续补充完善
## 输出结构
请严格按以下结构输出,不要省略:
# 1. 功能定位
- 三级菜单功能名称
- 对应前端入口
- 对应业务域
- 功能目标概述
# 2. 页面层次拆解
按“主页面 -> 子页面/弹窗/抽屉/tab/跳转页”展开,列出页面层次树,并说明每个页面的职责。
# 3. 功能点清单
对每个页面列出功能点,说明:
- 功能点名称
- 所在页面
- 触发方式
- 功能说明
# 4. 前端触发与组件链路
对每个功能点列出:
- 触发控件
- 事件/方法名
- 所属 Vue/React 页面文件
- 使用的组件
- 调用的前端 API 文件和方法
- 中文解释
# 5. 后端 API 深度分析
对每个 API 列出:
- API 名称
- 请求路径
- 请求方式
- 前端来源功能点
- Controller
- Service
- Mapper/DAO
- 是否调用子 API
- 中文说明
# 6. 子 API 追踪
按主 API -> 第1层子 API -> 第2层子 API展开,列出:
- 调用关系
- 调用目的
- 调用类型(内部接口 / Feign / HTTP / 第三方)
- 中文说明
# 7. 数据表引用与操作
对每个 API / 子 API 列出:
- 涉及数据表
- 操作类型(R/C/U/D)
- 操作说明
- 关联业务对象
# 8. 完整层次链表
按链表形式输出完整链路:
前端菜单 -> 页面 -> 子页面 -> 功能点 -> 组件/事件 -> 前端API -> 后端API -> 子API -> DB表操作
要求一条链路一行,便于后续画图。
# 9. 可视化关系边清单
请额外输出适合画图的关系边,格式如下:
源节点 | 关系 | 目标节点 | 说明
例如:
业务系统管理页 | 包含 | 新增业务系统弹窗 | 新增业务系统操作入口
新增按钮 | 触发 | handleAdd | 点击后打开新增弹窗
handleAdd | 调用 | saveBusinessSystem | 前端封装API
saveBusinessSystem | 请求 | POST /sys/businessSystem/add | 保存业务系统
POST /sys/businessSystem/add | 写入 | tb_business_system | 新增业务系统主档
# 10. 中文总结
总结该三级菜单功能的:
- 页面结构
- 核心功能点
- 关键调用链
- 关键数据表
- 风险点/待确认点
## 输入信息
本次需要逆向的三级菜单功能是:
【在这里替换成具体三级菜单功能名称】
如果我补充了前端路径、菜单路径、截图、页面文件、接口路径等上下文,请你优先结合这些上下文分析。
你要执行的是“单个三级菜单功能的定点逆向分析”。
注意:
- 只分析我指定的三级菜单功能。
- 目标是形成“页面 -> 功能点 -> 组件 -> API -> 子API -> DB”的完整链路。
- 结果既要有结构化内容,也要有中文解释。
- 结果必须可以直接服务于后续绘制逻辑关系图。
## 必须完成的分析任务
### A. 页面拆解
先识别该三级菜单功能的:
- 主页面
- 子页面
- tab页
- 弹窗
- 抽屉
- 详情页
- 配置页
- 跳转页
### B. 功能点拆解
在每个页面中识别所有用户可操作功能点:
- 按钮
- 表单操作
- 表格操作列
- 开关
- 下拉触发动作
- 批量操作
- 详情跳转
- 弹窗确认动作
### C. 前端链路识别
针对每个功能点,识别:
- 触发控件名称
- 事件名
- 方法名
- 页面文件
- 组件文件
- API封装文件
- API封装方法
### D. 后端链路识别
针对每个 API,识别:
- 接口路径
- 请求方式
- 控制器类
- 服务类
- Mapper/DAO
- 实际涉及的数据表
### E. 子 API 追踪
如果后端 API 内部还调用了别的接口,需要继续追踪:
- 第1层子 API
- 第2层子 API
超过2层停止,并标注“超过本次追踪深度”。
### F. 数据表操作
必须明确每个接口对数据表的操作类型:
- R 查询
- C 新增
- U 更新
- D 删除
若同一个接口同时有多种操作,要分别列出。
## 输出要求
### 1. 所有层次都要有中文解释
不仅要列技术对象,还要说明:
- 这个节点在业务上干什么
- 它在整条链路中起什么作用
### 2. 所有证据都要尽量落到代码对象
优先给出:
- 文件路径
- 类名
- 方法名
- API路径
- 表名
### 3. 不确定的内容必须显式标注
使用以下标签:
- 已确认
- 高概率推断
- 待确认
### 4. 严禁泛泛而谈
不要只写“该页面调用后端接口完成增删改查”,必须拆开到具体功能点和具体接口。
## 最终输出格式
请严格输出以下五部分:
### 第一部分:功能总览
用 5-10 行说明该三级菜单功能的业务定位、主页面、关键子页面、核心能力。
### 第二部分:页面与功能点树
用树状结构输出:
三级菜单
├─ 主页面
│ ├─ 子页面A
│ │ ├─ 功能点1
│ │ ├─ 功能点2
│ ├─ 子页面B
│ │ ├─ 功能点3
### 第三部分:详细链路表
表头固定为:
| 一级入口 | 页面/子页面 | 功能点 | 触发控件/事件 | 前端组件/方法 | 前端API | 后端API | 子API链路 | 数据表及操作 | 中文说明 | 证据状态 |
### 第四部分:关系边清单
格式固定为:
源节点 | 关系 | 目标节点 | 中文说明 | 证据状态
### 第五部分:综合结论
总结:
- 功能闭环
- 关键接口
- 关键数据表
- 主要耦合点
- 待确认问题
本次指定的三级菜单功能:
【在这里替换】
请只做第一阶段逆向,不要展开到后端。
目标:分析指定三级菜单功能的前端页面结构,识别主页面、tab页、弹窗、抽屉、详情页、跳转页,并列出每个页面下的功能点。
输出要求:
1. 页面层次树
2. 每个页面的职责说明
3. 每个页面的功能点清单
4. 对每个功能点标注可能的触发控件
5. 不要进入后端 API 分析
本次指定的三级菜单功能:
【在这里替换】
请基于已经识别出的页面和功能点,继续做第二阶段逆向。
目标:分析每个功能点的前端触发链路,识别:
- 触发控件
- 事件名
- 方法名
- 页面文件
- 组件文件
- 前端 API 封装文件
- 前端 API 方法
输出要求:
1. 每个功能点一条链路
2. 必须说明对应前端代码对象
3. 必须写中文解释
4. 只到前端 API 封装为止,暂不进入后端服务层
本次指定的三级菜单功能:
【在这里替换】
请基于已经识别出的前端 API 调用,继续做第三阶段逆向。
目标:对每个后端 API 展开分析,识别:
- 请求路径
- 请求方式
- Controller
- Service
- Mapper/DAO
- 是否调用子 API
- 若存在子 API,则最多追踪 2 层
输出要求:
1. 每个 API 单独展开
2. 子 API 用分层结构表示
3. 区分内部调用、微服务调用、第三方调用
4. 所有内容都要附中文说明
本次指定的三级菜单功能:
【在这里替换】
请基于前面识别出的 API 和子 API,继续做第四阶段逆向。
目标:识别每个 API/子API涉及的数据表,以及具体操作类型,并最终汇总成完整链表和关系边清单。
必须标注:
- 数据表名
- R/C/U/D 操作类型
- 操作说明
- 对应业务对象
最终输出:
1. API -> 数据表操作明细表
2. 完整层次链表
3. 可视化关系边清单
4. 中文总结
本次指定的三级菜单功能:
【在这里替换】
请按以下 Markdown 模板输出:
# 指定三级菜单功能逆向分析
## 1. 功能定位
- 三级菜单功能:
- 所属业务域:
- 前端入口:
- 功能概述:
## 2. 页面层次树
```text
三级菜单功能
├─ 主页面:
│ ├─ 子页面/Tab:
│ │ ├─ 功能点:
│ │ ├─ 功能点:
│ ├─ 弹窗/抽屉:
│ │ ├─ 功能点:
页面/子页面 | 类型 | 功能点 | 触发方式 | 中文说明 | 证据状态 |
|---|
页面 | 功能点 | 触发控件/事件 | 页面文件 | 组件文件 | 方法名 | 前端API文件 | 前端API方法 | 中文说明 | 证据状态 |
|---|
功能点 | 后端API | 方法 | Controller | Service | Mapper/DAO | 子API情况 | 中文说明 | 证据状态 |
|---|
主API | 第1层子API | 第2层子API | 调用类型 | 调用目的 | 中文说明 | 证据状态 |
|---|
API/子API | 数据表 | 操作类型(R/C/U/D) | 业务对象 | 操作说明 | 证据状态 |
|---|
链路编号 | 完整链路 | 中文说明 | 证据状态 |
|---|
完整链路格式统一为: 前端菜单 -> 主页面 -> 子页面 -> 功能点 -> 触发控件/事件 -> 前端组件/方法 -> 前端API -> 后端API -> 子API -> 数据表(操作类型)
源节点 | 关系 | 目标节点 | 中文说明 | 证据状态 |
|---|
---
## 6. 面向画图的专用输出补充提示词
```text
在正常分析结果后,请额外补充一份“可视化建图数据”,要求如下:
## A. 节点清单
格式:
节点ID | 节点名称 | 节点类型 | 父节点ID | 中文说明
节点类型限定为:
- menu
- page
- subpage
- function
- event
- component
- frontend_api
- backend_api
- sub_api
- db_table
## B. 边清单
格式:
源节点ID | 关系类型 | 目标节点ID | 中文说明
关系类型限定为:
- 包含
- 触发
- 调用
- 依赖
- 读取
- 新增
- 更新
- 删除
## C. Mermaid流程图
请基于识别出的主链路,输出一份 Mermaid `flowchart TD` 示例代码。
要求:
1. 只保留最关键主链路,避免过度冗长
2. 节点名称优先用中文,括号中可补接口/表名
3. 数据库表节点要单独显示
建议每次实际执行时,按以下顺序拼装提示词:
示例:
请按上述要求,对以下三级菜单功能做逆向分析:
三级菜单功能名称:业务系统管理
菜单路径:数据分发 -> 业务系统管理
补充上下文:
- 前端疑似页面:xxx
- 后端疑似接口前缀:/sys/businessSystem
- 需要重点关注新增、编辑、授权、API Token
为了让分析更聚焦,建议每次使用时尽量补充 1-3 个上下文:
这样可以显著降低分析发散风险,提高逆向结果的准确度和完整度。
下面这段提示词建议在正式执行时固定追加。 作用是强制模型在完成逆向分析后,同时输出:
在完成三级菜单功能逆向分析后,你必须继续完成第二阶段交付:
## 第一阶段:输出 Markdown 文件
请先生成一个独立的 Markdown 文件,作为正式逆向分析结果。
要求:
1. Markdown 内容必须完整包含前面约定的逆向分析结构。
2. Markdown 文件必须适合人类直接阅读,也适合作为 HTML 渲染的数据来源。
3. Markdown 文件内容必须优先完整、准确、结构清晰,不要为了 HTML 展示而压缩掉信息。
4. Markdown 文件名建议格式:
`三级菜单功能名_目标功能点_逆向分析.md`
## 第二阶段:基于 Markdown 再生成静态 HTML 文件
在 Markdown 文件生成完成后,你必须继续输出一个静态 HTML 文件。
HTML 文件不是简单把 Markdown 原样包在 `<pre>` 里,而是要转成适合阅读、汇报、评审、逻辑梳理的可视化页面。
HTML 文件名建议格式:
`三级菜单功能名_目标功能点_逆向分析.html`
## HTML 页面总体要求
1. 必须是单文件静态 HTML。
- 不依赖外部 CDN
- 不依赖前端框架运行时
- 不依赖网络资源
- CSS 和 JavaScript 都内嵌在 HTML 中
2. 打开 HTML 文件后即可直接浏览。
3. 页面风格要简洁、专业、美观,符合主流企业后台或架构分析页面的设计规范。
4. 页面目标是“方便查看整个功能的功能实现、结构拆解和调用逻辑”。
5. 允许适度增加概览区、快捷跳转、状态标签、摘要卡片等辅助展示,但不能偏离逆向分析主题。
## HTML 页面布局要求
必须采用“左树右表/右详情”的主布局。
### 左侧区域
左侧必须是层次树目录,用于体现逆向结构关系。
树节点建议至少覆盖:
- 三级菜单功能总览
- 主页面
- 子页面 / 弹窗 / Tab / 抽屉 / 详情页
- 功能点
- 核心前端事件
- 前端 API
- 后端 API
- 子 API
- 数据表
- 风险点 / 待确认项
树结构要求:
1. 能够层次展开和收起
2. 当前选中节点要有高亮样式
3. 节点类型要有清晰标识
4. 节点命名优先用中文,必要时补充代码对象名
5. 树结构要尽量贴近实际调用层次,而不是只按文档章节堆砌
### 右侧区域
右侧用于显示当前树节点的详细说明。
右侧内容建议包括:
- 节点标题
- 节点类型
- 证据状态
- 中文说明
- 关键代码对象
- 关键接口路径
- 关键调用链
- 数据表操作明细
- 风险点/待确认项
右侧不是简单纯文本区域,而应采用卡片、摘要块、表格、标签、调用链步骤块等方式组织内容。
## HTML 视觉风格要求
页面风格要满足以下要求:
1. 整体风格简洁、轻量、专业,不要花哨。
2. 颜色以浅色背景为主,强调色控制在 1-2 个主色内。
3. 页面结构清晰,留白合理,层级分明。
4. 字体、标题、正文、标签、表格要有稳定的视觉节奏。
5. 卡片、树节点、表格、按钮等 UI 元素风格统一。
6. 不要使用夸张动效,不要做花哨装饰。
7. 必须兼容桌面宽屏查看。
8. 页面在较窄窗口下也要能基本可读,至少保证布局不会完全错乱。
## HTML 交互要求
1. 左侧树节点点击后,右侧内容联动切换。
2. 树节点支持展开/收起。
3. 页面可增加顶部摘要区和快捷跳转区,以提升查看效率。
4. 不要求复杂搜索能力,但允许增加少量便于导航的交互。
5. 整体交互必须轻量,不能依赖复杂脚本或大型库。
## HTML 内容映射要求
Markdown 到 HTML 的转换,不是逐段照搬,而是按“更适合查看”的方式重新组织。
建议的 HTML 信息组织方式:
1. 顶部概览区
- 菜单名称
- 目标功能点
- 核心接口
- 主表
- 功能摘要
2. 左树区域
- 用结构树展现功能层级和调用层级
3. 右详情区域
- 当前节点概述
- 中文说明
- 代码证据
- 接口信息
- 调用链展示
- 数据表明细表
- 风险与待确认项
4. 对于完整调用链
- 应优先用步骤块、链式标签或表格展示
- 不要仅仅放一大段长文本
5. 对于表操作
- 必须用表格展示
- 至少要区分表名、操作类型、说明
6. 对于证据状态
- 应使用清晰的视觉标签
- 至少区分:已确认 / 高概率推断 / 待确认
## HTML 生成约束
1. HTML 内容必须忠实于 Markdown 逆向结果,不能自行发明不存在的链路。
2. 若某部分信息在 Markdown 中是“待确认”或“高概率推断”,在 HTML 中也必须保留该标记。
3. HTML 重点是“更好查看”,不是“删减内容”。
4. 若 Markdown 内容很多,可以在 HTML 中做分区、折叠、摘要,但不能丢失关键事实。
5. HTML 中所有接口路径、类名、方法名、表名要保持准确。
## 最终交付要求
请最终同时给出:
1. Markdown 文件路径
2. HTML 文件路径
3. 对 HTML 页面结构的简要说明
如果当前任务允许写文件,请直接写出这两个文件。
如果当前任务只要求输出内容,则先输出 Markdown 正文,再输出 HTML 完整源码。
如果你的目标是“一次执行,同时得到 Markdown 和 HTML 文件”,推荐使用下面这个组合:
示例:
请按上述要求,对以下三级菜单功能做逆向分析,并最终同时生成 Markdown 文件和静态 HTML 文件:
三级菜单功能名称:数据资产管理
目标功能点:发布数据资产
菜单路径:开放平台 -> 数据资产管理
后端入口:/dataasset/asset/launch
补充上下文:
- 前端疑似页面:openApi/dataAssetCatalog/DataAssetManagement
- 需要重点关注:目录树、列表勾选、上架按钮、权限校验、主表更新
基于上面这套提示词。我们就可以让AI对某一个特定的功能进行逆向,输出完整的独立的逆向文档,类似我们对自己的数据中台项目中的数据资产发布功能逆向,输出如下:

注意当前我们的逆向提示词,不仅仅是输出Markdown格式的文件,还会输出一个Html网页。这个网页采用树状目录浏览结构,可以更好的分层次展开的浏览该功能的内部关键实现。

当然,我们还可以将该逆向文档,让AI进一步输出一个可视化的基于该业务功能的内部组件,接口,数据调用关系集成图。这个图可以更加直观地对该功能的内部实现和调用逻辑进行展示。

今天分享就到这里,希望对大家有所启发。