MetaPrompt

出发点

当前的情况

  • 你们很多功能实现都是通过 ChatGPT / Claude 等模型生成代码
  • 但生成的代码散落在项目中,缺乏”生成的上下文”或”背后的需求描述”
  • 所以当未来要做类似功能时,就必须重新和 AI 沟通,重复之前的需求分析和提问

想要解决的问题

  • 从现有的项目代码 + 文档中,自动提炼出当初生成这段代码可能对应的需求 / Prompt
  • 换句话说:把已经生成的成果逆向还原成可以再次使用的 Prompt 模板
  • 这样下次遇到类似需求时,不需要从头构思和对话,而是直接拿提炼好的 Prompt,让 AI 基于这个 Prompt 快速生成相应代码

我希望AI做的事情

  • 设计一个**”元 Prompt”**(Meta Prompt),它的作用是:输入一段代码或一份文档 → 输出对应的原始需求 Prompt
  • 这个 Prompt 会指导 AI 从代码中提取:
    • 需求背景(为什么要写这段代码)
    • 功能目标(代码要解决什么问题)
    • 实现要点(设计思路、关键技术点、约束条件)
    • 生成要求(语言/框架/风格/可维护性要求等)

简而言之:我要的是一个 元 Prompt —— 用来指导 AI 从已有代码中逆向提取出”原始需求 Prompt”。

Prompt-整体

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
你是一个专业的软件架构与需求分析助手。
输入是一个完整的**代码库**(包含源码、配置文件、文档等)。
你的任务是:**分层分析代码库,逆向还原生成它时的 Prompt,并提取关键代码片段作为参考**。

## 分层分析策略

请严格按照以下步骤执行:

### 第 1 层:代码库结构分析

- 列出项目的目录结构(如 src, components, utils, tests 等)
- 总结每个主要目录/模块的职责

### 第 2 层:架构与流程分析

- 解释该项目采用的架构模式(MVC、MVVM、微服务、插件化等)
- 说明主要的数据流 / 控制流(例如:前端请求 → API → 数据库 → 返回响应)
- 描述模块之间的依赖关系

### 第 3 层:核心功能与技术点

- 列出项目的主要功能模块(如用户认证、文件上传、图表渲染)
- 总结实现这些功能的关键技术点(框架、库、设计模式、算法等)
- 提炼性能、安全性、可扩展性上的考虑

### 第 4 层:关键代码片段提取

- 从代码库中选择 3~7 段**最能代表该项目核心逻辑的代码**,如:
- 核心业务逻辑函数
- API 接口定义
- 关键算法实现
- 配置/初始化代码
- 对每段代码写一个简短注解,说明它解决了什么问题

### 第 5 层:最终 Prompt 合成

- 将以上分析结果整合,生成一个**完整的 Prompt**,格式如下:

请帮我生成一个 {应用类型} 项目,要求如下:
【项目背景与目标】…
【整体架构设计】…
【核心功能模块】…
【技术选型与实现要点】…
【关键代码参考】…
【交互与使用方式】…
【其他生成要求】…

Prompt-功能/组件

后来我意识到:如果直接对整个代码库做逆向 Prompt,还原范围太大,结果会过于笼统,细节又丢不全 → 实际复用价值有限。

更合适的方式是:**把还原的目标缩小到”某个功能/组件”**,比如”时间轴组件”、”用户登录模块”、”数据导出功能”。这样提炼出的 Prompt 更聚焦、更贴近实际复用场景。

关于输入

因为考虑到如果他要理解整个组件的内容的话,很可能会依赖于整个代码库的机制和框架。所以我的输入应该是整个代码库,但是那他分析的是这里面的某个功能或者某个组件。这样才能保证上下文是足够的。

所以逻辑应该是:

  • 输入 = 整个代码库(保证上下文充足,AI 不会漏掉依赖和关联)
  • 输出 = 针对代码库里的某个具体功能/组件的逆向 Prompt(而不是整个代码库)

这就需要在 元 Prompt 里加入”范围限定”机制:告诉 AI:输入是整个库,但请聚焦分析库里的某个功能/组件,并基于全局上下文来还原它的 Prompt。

最终的Prompt

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
你是一名专业的软件架构与需求分析助手。
我将提供给你一个完整的代码库作为输入。
请你在理解整个代码库上下文的基础上,仅针对其中的【指定功能/组件】进行分析,逆向还原出当初生成它时可能使用的 Prompt。
请严格按照以下步骤输出结果:

## 分析步骤

### 第 0 层:范围限定
- 明确我指定的目标功能/组件(例如:"时间轴组件")
- 分析时仅聚焦于该功能/组件,但允许引用全局代码库的上下文信息

### 第 1 层:功能背景
- 描述该功能/组件的用途和目标场景
- 它在整个项目中的作用和定位

### 第 2 层:功能结构与实现思路
- 描述该功能/组件的输入与输出(参数、props、数据源、返回值、渲染结果)
- 总结它的核心职责
- 解释它与代码库其他部分的关联(调用关系、依赖的库或工具)

### 第 3 层:关键技术点
- 提炼该功能实现中使用的关键技术(框架、库、模式、算法)
- 描述实现中涉及的设计取舍(性能、扩展性、兼容性)

### 第 4 层:关键代码片段
- 从该功能相关文件中选取 2~5 段最能代表核心逻辑的代码
- 每段附带简短注解,说明其作用
- 如果依赖了外部模块,请注明依赖关系

### 第 5 层:最终 Prompt 合成
- 将以上信息整合,生成一个可直接使用的 Prompt,格式如下:

请帮我生成一个 {功能/组件},要求如下:
【功能背景】…
【输入与输出】…
【实现思路】…
【关键技术点】…
【关键代码参考】…
【其他生成要求】…

## 输出格式要求

你的输出必须包含以下部分:

1. 功能背景
2. 功能结构与实现思路
3. 关键技术点
4. 关键代码片段(含注解)
5. 最终 Prompt

## 输入

以下是我的代码库:
【在这里粘贴完整代码库或关键部分】

请你仅针对【时间轴组件】进行分析和逆向 Prompt 生成。

修改清单

1
2
3
4
5
在这次【主题】的修改过程中,我发现遗漏了许多重要功能,需要经过多次对话调整才得以完善。因此,我希望能够整理出这次修改过程中应该修改的内容以及遗漏的部分,并将其制作成一个针对这个修改内容的注意清单。

这个清单的目的是为了在下次进行类似的修改需求时,能够直接提供给AI作为参考,让AI按照功能清单来执行工作任务,从而避免出现功能遗漏的情况。

请帮我建立这样一个标准化的检查清单,可以确保每次修改都能够覆盖到所有必要的功能点,提高修改的完整性和效率。