prd-workflow-cli 1.4.1 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agent/workflows/prd-a1-scan.md +133 -0
- package/.agent/workflows/prd-a2ui-guide.md +6 -6
- package/.agent/workflows/prd-b-planning.md +135 -0
- package/.agent/workflows/prd-it-biz.md +56 -0
- package/.agent/workflows/prd-it-dev.md +163 -0
- package/.agent/workflows/prd-r2-review.md +104 -409
- package/.antigravity/rules.md +50 -265
- package/.cursorrules +57 -371
- package/GUIDE.md +147 -240
- package/README.md +170 -362
- package/bin/prd-cli.js +19 -12
- package/commands/baseline.js +174 -293
- package/commands/freeze-checks.js +424 -0
- package/commands/init.js +97 -162
- package/commands/it.js +286 -0
- package/commands/iteration.js +7 -91
- package/commands/planning.js +149 -517
- package/commands/review.js +78 -50
- package/commands/status.js +29 -38
- package/commands/upgrade.js +20 -0
- package/commands/version.js +222 -200
- package/package.json +2 -2
- package/rules/index.json +26 -27
- package/rules/schemas/rules.schema.json +1 -2
- package/templates/it-biz.md +141 -0
- package/templates/it-dev.md +237 -0
- package/templates//344/270/232/345/212/241/351/234/200/346/261/202.md +141 -0
- package/templates//346/212/200/346/234/257/350/247/204/346/240/274.md +237 -0
- package/.agent/workflows/prd-b1-planning-draft.md +0 -614
- package/.agent/workflows/prd-b2-planning-breakdown.md +0 -828
- package/.agent/workflows/prd-c1-requirement-list.md +0 -286
- package/.agent/workflows/prd-r1-review.md +0 -503
package/README.md
CHANGED
|
@@ -1,458 +1,266 @@
|
|
|
1
1
|
# PRD Workflow CLI
|
|
2
2
|
|
|
3
3
|
> 产品需求管理规范命令行工具
|
|
4
|
-
> 基于
|
|
4
|
+
> 基于 **基线→规划→IT→版本** 流程的需求管理系统
|
|
5
5
|
|
|
6
6
|

|
|
7
7
|

|
|
8
|
+

|
|
8
9
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
这是一个基于严格产品需求管理规范的 CLI 工具,帮助产品团队和 AI 编程助手按照规范化流程完成需求管理工作。
|
|
12
|
-
|
|
13
|
-
### 核心特点
|
|
14
|
-
|
|
15
|
-
✅ **强制审视机制** - R1/R2 作为"闸门",必须通过才能进入下一阶段
|
|
16
|
-
✅ **文档模板化** - 每个阶段都有明确的文档结构和填写指引
|
|
17
|
-
✅ **AI 可执行** - 配合 Cursor、Codeium 等 AI IDE 使用
|
|
18
|
-
✅ **阶段清晰** - A(基线) → R(审视) → B(规划) → C(版本) 流程明确
|
|
19
|
-
✅ **防止失控** - 通过强制约束防止规划膨胀和需求蔓延
|
|
10
|
+
---
|
|
20
11
|
|
|
21
|
-
##
|
|
12
|
+
## 📖 目录
|
|
22
13
|
|
|
23
|
-
|
|
14
|
+
- [简介](#-简介)
|
|
15
|
+
- [快速开始](#-快速开始)
|
|
16
|
+
- [核心工作流程](#-核心工作流程)
|
|
17
|
+
- [文档体系](#-文档体系)
|
|
18
|
+
- [命令参考](#-命令参考)
|
|
19
|
+
- [与 AI IDE 集成](#-与-ai-ide-集成)
|
|
20
|
+
- [FAQ](#-faq)
|
|
24
21
|
|
|
25
|
-
|
|
26
|
-
A 类(现状基线)
|
|
27
|
-
↓
|
|
28
|
-
R1 启动条件检查 → 不通过则停止
|
|
29
|
-
↓ 通过
|
|
30
|
-
B1/B2(需求规划)
|
|
31
|
-
↓
|
|
32
|
-
R1 规划审视 → 不通过则返回修改
|
|
33
|
-
↓ 通过
|
|
34
|
-
B3(规划冻结)
|
|
35
|
-
↓
|
|
36
|
-
C0/C1(版本需求)
|
|
37
|
-
↓
|
|
38
|
-
R2 版本审视 → 不通过则返回修改
|
|
39
|
-
↓ 通过
|
|
40
|
-
C3(版本冻结)
|
|
41
|
-
```
|
|
22
|
+
---
|
|
42
23
|
|
|
43
|
-
|
|
24
|
+
## 🎯 简介
|
|
44
25
|
|
|
45
|
-
|
|
46
|
-
- 问题真实存在(基于 A 类现状)
|
|
47
|
-
- 值得单独规划(不是小修小补)
|
|
48
|
-
- 问题已理解清楚(不用规划来想问题)
|
|
26
|
+
PRD-CLI 是一套**规范化的产品需求管理工具**,解决的核心问题:
|
|
49
27
|
|
|
50
|
-
|
|
28
|
+
> 让 AI 从"陪你写需求"变成"帮你挡住不该写的需求"
|
|
51
29
|
|
|
52
|
-
|
|
30
|
+
### 核心价值
|
|
53
31
|
|
|
54
|
-
|
|
32
|
+
- **防止幻觉** - AI 不编造 API/SQL/算法,技术细节由技术负责人确认
|
|
33
|
+
- **防止越界** - 每个阶段有明确边界,防止需求蔓延
|
|
34
|
+
- **对话驱动** - 文档通过对话逐步完成,而非一次性填充
|
|
55
35
|
|
|
56
|
-
|
|
36
|
+
---
|
|
57
37
|
|
|
58
|
-
|
|
38
|
+
## 🚀 快速开始
|
|
59
39
|
|
|
60
|
-
|
|
40
|
+
### 安装
|
|
61
41
|
|
|
62
42
|
```bash
|
|
63
|
-
|
|
64
|
-
npx -y prd-workflow-cli@latest init 我的项目
|
|
65
|
-
|
|
66
|
-
# 或者进入空目录直接初始化
|
|
67
|
-
mkdir 我的项目 && cd 我的项目
|
|
68
|
-
npx -y prd-workflow-cli@latest
|
|
69
|
-
|
|
70
|
-
# 查看帮助
|
|
71
|
-
npx prd-workflow-cli@latest --help
|
|
72
|
-
|
|
73
|
-
# 规则校验 (v1.4.0 新增)
|
|
74
|
-
npx prd-workflow-cli@latest check
|
|
75
|
-
|
|
76
|
-
# 统计报告 (v1.4.0 新增)
|
|
77
|
-
npx prd-workflow-cli@latest stats
|
|
43
|
+
npm install -g prd-workflow-cli
|
|
78
44
|
```
|
|
79
45
|
|
|
80
|
-
|
|
81
|
-
>
|
|
82
|
-
> ⚠️ 不加 `@latest` 可能使用缓存的旧版本
|
|
83
|
-
|
|
84
|
-
### 方式2:全局安装(推荐频繁使用者)
|
|
46
|
+
### 初始化项目
|
|
85
47
|
|
|
86
48
|
```bash
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
# 验证安装
|
|
90
|
-
prd --version # 应该显示 1.4.0
|
|
91
|
-
|
|
92
|
-
# 然后直接使用 prd 命令
|
|
93
|
-
prd init 我的项目
|
|
94
|
-
prd check
|
|
95
|
-
prd stats
|
|
49
|
+
prd init my-project
|
|
50
|
+
cd my-project
|
|
96
51
|
```
|
|
97
52
|
|
|
98
|
-
###
|
|
53
|
+
### 核心流程
|
|
99
54
|
|
|
100
55
|
```bash
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
npm link
|
|
105
|
-
```
|
|
56
|
+
# 1. 基线阶段 - 建立产品现状
|
|
57
|
+
prd baseline create 产品定义 # PM 填写
|
|
58
|
+
prd baseline create 代码快照 # AI 扫描生成
|
|
106
59
|
|
|
107
|
-
|
|
60
|
+
# 2. 规划阶段 - 确定要做什么
|
|
61
|
+
prd iteration new # 创建迭代
|
|
62
|
+
prd plan create # 创建需求规划
|
|
63
|
+
prd plan freeze # 冻结规划
|
|
108
64
|
|
|
109
|
-
|
|
65
|
+
# 3. IT 阶段 - 细化用户故事
|
|
66
|
+
prd it create "功能名称" # 创建用户故事
|
|
110
67
|
|
|
111
|
-
|
|
112
|
-
#
|
|
113
|
-
npx prd-workflow-cli init my-product
|
|
114
|
-
cd my-product
|
|
115
|
-
npm install
|
|
116
|
-
|
|
117
|
-
# 或者全局安装后使用
|
|
118
|
-
prd init my-product
|
|
119
|
-
cd my-product
|
|
120
|
-
npm install
|
|
68
|
+
# 4. 版本阶段 - 完成冻结
|
|
69
|
+
prd version freeze # 冻结版本,交付研发
|
|
121
70
|
```
|
|
122
71
|
|
|
123
|
-
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
## 🔄 核心工作流程
|
|
124
75
|
|
|
125
76
|
```
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
│
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
77
|
+
┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐
|
|
78
|
+
│ 基线阶段 │ ─→ │ 规划阶段 │ ─→ │ IT 阶段 │ ─→ │ 版本阶段 │
|
|
79
|
+
│ │ │ │ │ │ │ │
|
|
80
|
+
│ 产品定义 │ │ 需求规划 │ │ 业务需求 │ │ 版本发布 │
|
|
81
|
+
│ 代码快照 │ │ 规划冻结 │ │ 技术规格 │ │ │
|
|
82
|
+
│ 用户反馈 │ │ │ │ │ │ │
|
|
83
|
+
└─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘
|
|
84
|
+
↑ ↑ ↑ ↑
|
|
85
|
+
PM+AI 填写 PM+AI 对话 PM+AI 对话 自动生成
|
|
133
86
|
```
|
|
134
87
|
|
|
135
|
-
###
|
|
88
|
+
### 各阶段说明
|
|
136
89
|
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
```
|
|
90
|
+
| 阶段 | 目的 | 产出 |
|
|
91
|
+
|------|------|------|
|
|
92
|
+
| **基线** | 建立产品现状基线 | 产品定义.md、代码快照.md、用户反馈.md |
|
|
93
|
+
| **规划** | 确定本轮迭代目标 | 需求规划.md、规划冻结.md |
|
|
94
|
+
| **IT** | 细化可执行的用户故事 | 业务需求.md、技术规格.md |
|
|
95
|
+
| **版本** | 冻结需求,交付研发 | 版本发布.md |
|
|
144
96
|
|
|
145
|
-
|
|
97
|
+
---
|
|
146
98
|
|
|
147
|
-
|
|
148
|
-
# 创建新迭代
|
|
149
|
-
prd iteration new
|
|
99
|
+
## 📁 文档体系
|
|
150
100
|
|
|
151
|
-
|
|
152
|
-
|
|
101
|
+
### 目录结构
|
|
102
|
+
|
|
103
|
+
```
|
|
104
|
+
项目目录/
|
|
105
|
+
├── 00_项目总览/
|
|
106
|
+
│ └── 项目信息.md # 项目元信息
|
|
107
|
+
├── 01_基线/
|
|
108
|
+
│ ├── 产品定义.md # PM 填写
|
|
109
|
+
│ ├── 代码快照.md # AI 扫描生成
|
|
110
|
+
│ └── 用户反馈.md # AI 整理
|
|
111
|
+
├── 02_迭代记录/
|
|
112
|
+
│ └── 第01轮迭代/
|
|
113
|
+
│ ├── 需求规划.md # PM+AI 对话
|
|
114
|
+
│ ├── 规划冻结.md # 自动生成
|
|
115
|
+
│ ├── IT/
|
|
116
|
+
│ │ └── IT-001-功能名/
|
|
117
|
+
│ │ ├── 业务需求.md # PM+AI 对话
|
|
118
|
+
│ │ └── 技术规格.md # 技术负责人补充
|
|
119
|
+
│ └── 版本发布.md # 自动生成
|
|
120
|
+
└── 99_归档区/ # 历史文档
|
|
153
121
|
```
|
|
154
122
|
|
|
155
|
-
###
|
|
123
|
+
### 文档职责
|
|
156
124
|
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
125
|
+
| 文档 | 负责人 | 说明 |
|
|
126
|
+
|------|--------|------|
|
|
127
|
+
| 产品定义 | PM | 产品边界、红线约束 |
|
|
128
|
+
| 代码快照 | AI | 扫描代码生成功能清单 |
|
|
129
|
+
| 用户反馈 | PM/AI | 整理用户反馈和问题 |
|
|
130
|
+
| 需求规划 | PM+AI | 对话确定规划目标 |
|
|
131
|
+
| 规划冻结 | 系统 | `prd plan freeze` 自动生成 |
|
|
132
|
+
| 业务需求 | PM+AI | 用户故事、验收标准 |
|
|
133
|
+
| 技术规格 | 技术负责人 | 技术实现要点 |
|
|
134
|
+
| 版本发布 | 系统 | `prd version freeze` 自动生成 |
|
|
161
135
|
|
|
162
|
-
|
|
163
|
-
prd review r1
|
|
136
|
+
---
|
|
164
137
|
|
|
165
|
-
|
|
166
|
-
prd plan freeze # 生成 B3 规划冻结归档
|
|
167
|
-
```
|
|
138
|
+
## ⌨️ 命令参考
|
|
168
139
|
|
|
169
|
-
###
|
|
140
|
+
### 项目管理
|
|
170
141
|
|
|
171
142
|
```bash
|
|
172
|
-
#
|
|
173
|
-
prd
|
|
174
|
-
prd
|
|
175
|
-
|
|
176
|
-
# 执行 R2 审视
|
|
177
|
-
prd review r2
|
|
178
|
-
|
|
179
|
-
# 如果通过,冻结版本
|
|
180
|
-
prd version freeze # 生成 C3 版本冻结归档
|
|
143
|
+
prd init <项目名> # 初始化项目
|
|
144
|
+
prd status # 查看项目状态
|
|
145
|
+
prd upgrade # 更新工作流文件
|
|
181
146
|
```
|
|
182
147
|
|
|
183
|
-
###
|
|
148
|
+
### 基线管理
|
|
184
149
|
|
|
185
150
|
```bash
|
|
186
|
-
prd
|
|
187
|
-
prd
|
|
151
|
+
prd baseline create 产品定义 # 创建产品定义
|
|
152
|
+
prd baseline create 代码快照 # 创建代码快照
|
|
153
|
+
prd baseline create 用户反馈 # 创建用户反馈
|
|
188
154
|
```
|
|
189
155
|
|
|
190
|
-
## 📚 命令参考
|
|
191
|
-
|
|
192
|
-
### 项目管理
|
|
193
|
-
|
|
194
|
-
| 命令 | 说明 |
|
|
195
|
-
|------|------|
|
|
196
|
-
| `prd init <name>` | 初始化新项目 |
|
|
197
|
-
| `prd status` | 查看项目状态 |
|
|
198
|
-
|
|
199
|
-
### 基线管理(A 类)
|
|
200
|
-
|
|
201
|
-
| 命令 | 说明 |
|
|
202
|
-
|------|------|
|
|
203
|
-
| `prd baseline create A0` | 创建产品基础与范围说明 |
|
|
204
|
-
| `prd baseline create A1` | 创建已上线功能与流程清单 |
|
|
205
|
-
| `prd baseline create A2` | 创建存量反馈与数据汇总 |
|
|
206
|
-
| `prd baseline create R0` | 创建基线审视报告 |
|
|
207
|
-
|
|
208
156
|
### 迭代管理
|
|
209
157
|
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
| `prd iteration list` | 列出所有迭代 |
|
|
214
|
-
| `prd iteration current` | 查看当前迭代 |
|
|
215
|
-
|
|
216
|
-
### 规划管理(B 类)
|
|
217
|
-
|
|
218
|
-
| 命令 | 说明 |
|
|
219
|
-
|------|------|
|
|
220
|
-
| `prd plan create B1` | 创建需求规划草案 |
|
|
221
|
-
| `prd plan create B2` | 创建规划拆解与范围界定 |
|
|
222
|
-
| `prd plan freeze` | 冻结规划(生成 B3) |
|
|
223
|
-
|
|
224
|
-
### 版本管理(C 类)
|
|
225
|
-
|
|
226
|
-
| 命令 | 说明 |
|
|
227
|
-
|------|------|
|
|
228
|
-
| `prd version create C0` | 创建版本范围声明 |
|
|
229
|
-
| `prd version create C1` | 创建版本需求清单 |
|
|
230
|
-
| `prd version freeze` | 冻结版本(生成 C3) |
|
|
231
|
-
|
|
232
|
-
### 审视管理(R 类)
|
|
233
|
-
|
|
234
|
-
| 命令 | 说明 |
|
|
235
|
-
|------|------|
|
|
236
|
-
| `prd review r1` | 执行 R1 规划审视 |
|
|
237
|
-
| `prd review r2` | 执行 R2 版本审视 |
|
|
238
|
-
|
|
239
|
-
### 规则校验 (v1.4.0 新增)
|
|
240
|
-
|
|
241
|
-
| 命令 | 说明 |
|
|
242
|
-
|------|------|
|
|
243
|
-
| `prd check` | 检查项目是否符合 PRD 规则 |
|
|
244
|
-
| `prd check --json` | 输出 JSON 格式(供 AI 读取) |
|
|
245
|
-
| `prd check --no-log` | 不记录日志 |
|
|
246
|
-
| `prd stats` | 显示规则统计报告 |
|
|
247
|
-
| `prd stats --json` | 输出 JSON 格式统计 |
|
|
248
|
-
|
|
249
|
-
### 其他命令
|
|
250
|
-
|
|
251
|
-
| 命令 | 说明 |
|
|
252
|
-
|------|------|
|
|
253
|
-
| `prd ui [file]` | 启动 A2UI 界面预览服务 |
|
|
254
|
-
| `prd upgrade` | 更新项目中的 workflows 和 AI 规则 |
|
|
255
|
-
| `prd index` | 生成/更新迭代索引 |
|
|
256
|
-
|
|
257
|
-
## 🤖 与 AI IDE 集成
|
|
258
|
-
|
|
259
|
-
本工具专门设计用于与 AI 编程助手配合使用。
|
|
260
|
-
|
|
261
|
-
### Cursor / Windsurf / Codeium
|
|
262
|
-
|
|
263
|
-
工具会自动在项目中创建 `.agent/workflows/` 目录,包含可被 AI 调用的工作流文件。
|
|
264
|
-
|
|
265
|
-
在 AI 对话中使用:
|
|
266
|
-
|
|
267
|
-
```
|
|
268
|
-
// 执行 R1 审视
|
|
269
|
-
/prd-r1-review
|
|
270
|
-
|
|
271
|
-
// 执行 R2 审视
|
|
272
|
-
/prd-r2-review
|
|
158
|
+
```bash
|
|
159
|
+
prd iteration new # 新建迭代
|
|
160
|
+
prd iteration list # 列出所有迭代
|
|
273
161
|
```
|
|
274
162
|
|
|
275
|
-
###
|
|
163
|
+
### 规划管理
|
|
276
164
|
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
```
|
|
282
|
-
|
|
283
|
-
**R2 版本审视**:
|
|
284
|
-
```
|
|
285
|
-
请按照 .agent/workflows/prd-r2-review.md 中的指令,
|
|
286
|
-
检查 C0、C1 是否忠实执行了 B3 的规划。
|
|
165
|
+
```bash
|
|
166
|
+
prd plan create # 创建需求规划
|
|
167
|
+
prd plan freeze # 冻结规划(含自动审视)
|
|
168
|
+
prd plan freeze --force # 强制冻结(跳过审视)
|
|
287
169
|
```
|
|
288
170
|
|
|
289
|
-
###
|
|
290
|
-
|
|
291
|
-
如果你使用的不是 IDE 内置的 AI,可以复制以下提示词到对话开始处:
|
|
292
|
-
|
|
293
|
-
<details>
|
|
294
|
-
<summary>📋 点击展开完整提示词</summary>
|
|
171
|
+
### IT 管理
|
|
295
172
|
|
|
173
|
+
```bash
|
|
174
|
+
prd it create "功能名" # 创建 IT(业务需求+技术规格)
|
|
175
|
+
prd it list # 列出所有 IT
|
|
176
|
+
prd it show <id> # 查看 IT 详情
|
|
296
177
|
```
|
|
297
|
-
你是一个产品需求管理助手,帮助产品经理(PM)按照规范化流程完成需求文档。
|
|
298
|
-
|
|
299
|
-
# 你的角色
|
|
300
|
-
你是战略思维导师,不是自动化工具或速记员。
|
|
301
|
-
|
|
302
|
-
# 核心原则
|
|
303
|
-
PM 决策,AI 执行。你的职责是引导、提问、建议,不是替 PM 做决策。
|
|
304
|
-
|
|
305
|
-
# 工作流程
|
|
306
|
-
产品需求遵循 A → R → B → C 流程:
|
|
307
|
-
- A 类文档:产品基线(A0 产品基础、A1 功能清单、A2 用户反馈)
|
|
308
|
-
- R0:基线审视
|
|
309
|
-
- B 类文档:规划(B1 规划草案、B2 需求拆解、B3 规划冻结)
|
|
310
|
-
- R1:规划审视
|
|
311
|
-
- C 类文档:版本(C0 版本范围、C1 需求清单、C3 版本冻结)
|
|
312
|
-
- R2:版本审视
|
|
313
178
|
|
|
314
|
-
|
|
179
|
+
### 版本管理
|
|
315
180
|
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
2. ❌ 禁止未经对话就填充文档
|
|
320
|
-
创建 B1/B2/C1 后,必须通过对话逐项引导 PM 填写。
|
|
321
|
-
|
|
322
|
-
3. ❌ 禁止替 PM 做决策
|
|
323
|
-
优先级(P0/P1/P2)、首版范围、目标定义都由 PM 决定。
|
|
324
|
-
|
|
325
|
-
4. ❌ 禁止允许跳过必填内容
|
|
326
|
-
C1 的前 5 个维度(背景/描述/规则/验收/边界)是必填的。
|
|
327
|
-
|
|
328
|
-
5. ❌ 禁止在 C1 阶段加入新需求
|
|
329
|
-
C1 阶段发现新需求时,只能暂存到 A2,因为 B3 已冻结。
|
|
330
|
-
|
|
331
|
-
现在,请告诉我你想从哪个阶段开始,我会引导你完成。
|
|
181
|
+
```bash
|
|
182
|
+
prd version freeze # 冻结版本(含自动审视)
|
|
183
|
+
prd version freeze --force # 强制冻结(跳过审视)
|
|
332
184
|
```
|
|
333
185
|
|
|
334
|
-
|
|
186
|
+
### 工具命令
|
|
335
187
|
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
核心规则:PM 决策,AI 执行,不替 PM 做决策,每个阶段都要充分对话。
|
|
341
|
-
请告诉我你想从哪个阶段开始。
|
|
188
|
+
```bash
|
|
189
|
+
prd check # 规则校验
|
|
190
|
+
prd stats # 统计报告
|
|
191
|
+
prd ui # 启动 A2UI 预览
|
|
342
192
|
```
|
|
343
193
|
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
### A 类 - 现状基线文档
|
|
347
|
-
|
|
348
|
-
用于建立产品现状的共识,不写规划和愿景。
|
|
349
|
-
|
|
350
|
-
- **A0**: 产品基础与范围说明
|
|
351
|
-
- **A1**: 已上线功能与流程清单
|
|
352
|
-
- **A2**: 存量反馈与数据汇总
|
|
353
|
-
- **R0**: 基线审视报告
|
|
194
|
+
---
|
|
354
195
|
|
|
355
|
-
|
|
196
|
+
## 🤖 与 AI IDE 集成
|
|
356
197
|
|
|
357
|
-
|
|
198
|
+
### 支持的 IDE
|
|
358
199
|
|
|
359
|
-
- **
|
|
360
|
-
- **
|
|
361
|
-
- **
|
|
362
|
-
- **R1**: 规划审视报告(冻结前)
|
|
363
|
-
- **B3**: 规划冻结归档
|
|
200
|
+
- **Cursor** - 自动读取 `.cursorrules`
|
|
201
|
+
- **Antigravity** - 自动读取 `.antigravity/rules.md`
|
|
202
|
+
- **其他 AI IDE** - 读取 `AI-GUIDE.md`
|
|
364
203
|
|
|
365
|
-
###
|
|
204
|
+
### AI 工作流
|
|
366
205
|
|
|
367
|
-
|
|
206
|
+
| 斜杠命令 | 用途 |
|
|
207
|
+
|---------|------|
|
|
208
|
+
| `/prd-代码快照` | AI 扫描代码生成代码快照 |
|
|
209
|
+
| `/prd-需求规划` | 需求规划填写引导 |
|
|
210
|
+
| `/prd-业务需求` | IT 业务需求编写 |
|
|
211
|
+
| `/prd-技术规格` | IT 技术规格编写 |
|
|
368
212
|
|
|
369
|
-
|
|
370
|
-
- **C1**: 版本需求清单
|
|
371
|
-
- **R2**: 版本审视报告(冻结前)
|
|
372
|
-
- **C3**: 版本冻结归档
|
|
213
|
+
### AI 行为规则
|
|
373
214
|
|
|
374
|
-
|
|
215
|
+
| ❌ AI 禁止 | ✅ AI 应该 |
|
|
216
|
+
|-----------|-----------|
|
|
217
|
+
| 编造 API/SQL/算法 | 记录技术负责人的确认 |
|
|
218
|
+
| 替 PM 决定优先级 | 引导 PM 自己决策 |
|
|
219
|
+
| 一次性填充文档 | 通过对话逐项完成 |
|
|
220
|
+
| 在业务需求写技术细节 | 保持业务/技术分离 |
|
|
375
221
|
|
|
376
|
-
|
|
222
|
+
---
|
|
377
223
|
|
|
378
|
-
|
|
379
|
-
prd init new-product
|
|
380
|
-
cd new-product
|
|
381
|
-
prd baseline create A0
|
|
382
|
-
# 填写产品基础信息...
|
|
383
|
-
prd baseline create A1
|
|
384
|
-
# 梳理现有功能...
|
|
385
|
-
prd iteration new
|
|
386
|
-
# 开始第一轮规划...
|
|
387
|
-
```
|
|
224
|
+
## ❓ FAQ
|
|
388
225
|
|
|
389
|
-
###
|
|
226
|
+
### Q: IT 是什么?
|
|
390
227
|
|
|
391
|
-
|
|
392
|
-
cd existing-product
|
|
393
|
-
prd iteration new
|
|
394
|
-
# 填写 R1 启动条件检查
|
|
395
|
-
# 确认满足三个条件后...
|
|
396
|
-
prd plan create B1
|
|
397
|
-
# 与 AI 讨论规划草案...
|
|
398
|
-
prd review r1
|
|
399
|
-
# AI 执行审视并通过后...
|
|
400
|
-
prd plan freeze
|
|
401
|
-
```
|
|
228
|
+
**A:** IT = INVEST User Story,是符合 INVEST 原则的用户故事:
|
|
402
229
|
|
|
403
|
-
|
|
230
|
+
- **I**ndependent(独立的)
|
|
231
|
+
- **N**egotiable(可协商的)
|
|
232
|
+
- **V**aluable(有价值的)
|
|
233
|
+
- **E**stimable(可估算的)
|
|
234
|
+
- **S**mall(小的)
|
|
235
|
+
- **T**estable(可测试的)
|
|
404
236
|
|
|
405
|
-
|
|
406
|
-
prd iteration list # 查看历史迭代
|
|
407
|
-
prd iteration current # 确认当前迭代
|
|
408
|
-
prd iteration new # 开始新一轮
|
|
409
|
-
```
|
|
237
|
+
### Q: 为什么版本号从 1.5.0 跳到 2.0.0?
|
|
410
238
|
|
|
411
|
-
|
|
239
|
+
**A:** 2.0.0 是一个破坏性变更,主要变化:
|
|
240
|
+
- 采用中文命名体系
|
|
241
|
+
- 去除混乱的编号系统(A0/B3/C3/R0...)
|
|
242
|
+
- 简化文件和目录名
|
|
412
243
|
|
|
413
|
-
###
|
|
244
|
+
### Q: 旧项目能升级吗?
|
|
414
245
|
|
|
415
|
-
|
|
416
|
-
2. ✅ 值得单独规划(不是小修小补)
|
|
417
|
-
3. ✅ 问题已理解清楚(边界明确)
|
|
246
|
+
**A:** 可以手动重命名文件,或继续使用旧版本。旧参数(A0/A1/A2)仍然兼容。
|
|
418
247
|
|
|
419
|
-
### R1
|
|
248
|
+
### Q: 审视(R1/R2)去哪了?
|
|
420
249
|
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
4. 范围收敛性
|
|
425
|
-
5. 版本化准备度
|
|
250
|
+
**A:** 审视作为动作内化到 `freeze` 命令中:
|
|
251
|
+
- `prd plan freeze` 自动执行规划审视
|
|
252
|
+
- `prd version freeze` 自动执行版本审视
|
|
426
253
|
|
|
427
|
-
|
|
254
|
+
---
|
|
428
255
|
|
|
429
|
-
|
|
430
|
-
2. 版本范围偏移检查
|
|
431
|
-
3. 规划覆盖完整性
|
|
432
|
-
4. 需求粒度成熟度
|
|
433
|
-
5. 进入执行准备度
|
|
256
|
+
## 📚 更多文档
|
|
434
257
|
|
|
435
|
-
|
|
258
|
+
- [GUIDE.md](./GUIDE.md) - 快速使用指南
|
|
259
|
+
- [OVERVIEW.md](./OVERVIEW.md) - 一页式完整总览
|
|
260
|
+
- [CHANGELOG.md](./CHANGELOG.md) - 完整更新日志
|
|
436
261
|
|
|
437
|
-
|
|
438
|
-
git clone <repository>
|
|
439
|
-
cd prd-cli
|
|
440
|
-
npm install
|
|
441
|
-
npm link # 本地测试
|
|
442
|
-
```
|
|
262
|
+
---
|
|
443
263
|
|
|
444
|
-
##
|
|
264
|
+
## 📝 License
|
|
445
265
|
|
|
446
266
|
MIT
|
|
447
|
-
|
|
448
|
-
## 🤝 贡献
|
|
449
|
-
|
|
450
|
-
欢迎提交 Issue 和 Pull Request!
|
|
451
|
-
|
|
452
|
-
## 📮 反馈
|
|
453
|
-
|
|
454
|
-
如有问题或建议,请提交 Issue。
|
|
455
|
-
|
|
456
|
-
---
|
|
457
|
-
|
|
458
|
-
**核心价值**: 让 AI 从"陪你写需求"变成"帮你挡住不该写的需求"
|
package/bin/prd-cli.js
CHANGED
|
@@ -42,6 +42,7 @@ program
|
|
|
42
42
|
.description('管理 B 类规划文档 (create B1|B2, freeze)')
|
|
43
43
|
.option('--pm-confirmed', 'PM 已在对话中确认,跳过交互式确认')
|
|
44
44
|
.option('--pm-signature <name>', 'PM 签名(用于冻结操作)')
|
|
45
|
+
.option('--force', '强制冻结,跳过前置检查(不推荐)')
|
|
45
46
|
.action((action, type, options) => {
|
|
46
47
|
require('../commands/planning')(action, type, options);
|
|
47
48
|
});
|
|
@@ -61,10 +62,19 @@ program
|
|
|
61
62
|
.description('管理 C 类版本文档 (create C0|C1, freeze)')
|
|
62
63
|
.option('--pm-confirmed', 'PM 已在对话中确认,跳过交互式确认')
|
|
63
64
|
.option('--pm-signature <name>', 'PM 签名(用于冻结操作)')
|
|
65
|
+
.option('--force', '强制冻结,跳过前置检查(不推荐)')
|
|
64
66
|
.action((action, type, options) => {
|
|
65
67
|
require('../commands/version')(action, type, options);
|
|
66
68
|
});
|
|
67
69
|
|
|
70
|
+
// IT (INVEST) 命令
|
|
71
|
+
program
|
|
72
|
+
.command('it <action> [name]')
|
|
73
|
+
.description('管理 IT 用户故事 (create|list|show)')
|
|
74
|
+
.action((action, name, options) => {
|
|
75
|
+
require('../commands/it')(action, name, options);
|
|
76
|
+
});
|
|
77
|
+
|
|
68
78
|
// 需求变更命令
|
|
69
79
|
program
|
|
70
80
|
.command('change')
|
|
@@ -135,22 +145,19 @@ program
|
|
|
135
145
|
// 帮助信息增强
|
|
136
146
|
program.on('--help', () => {
|
|
137
147
|
console.log('');
|
|
138
|
-
console.log(chalk.bold('
|
|
148
|
+
console.log(chalk.bold('简化工作流(6 步):'));
|
|
139
149
|
console.log(' 1. ' + chalk.cyan('prd init <项目名>') + ' # 初始化项目');
|
|
140
|
-
console.log(' 2. ' + chalk.cyan('prd
|
|
141
|
-
console.log(' 3. ' + chalk.cyan('prd
|
|
142
|
-
console.log(' 4. ' + chalk.cyan('prd plan
|
|
143
|
-
console.log(' 5. ' + chalk.cyan('prd
|
|
144
|
-
console.log(' 6. ' + chalk.cyan('prd
|
|
145
|
-
console.log(' 7. ' + chalk.cyan('prd version create C0') + ' # 创建版本范围');
|
|
146
|
-
console.log(' 8. ' + chalk.cyan('prd review r2') + ' # R2 审视');
|
|
147
|
-
console.log(' 9. ' + chalk.cyan('prd version freeze') + ' # 冻结版本(C3)');
|
|
150
|
+
console.log(' 2. ' + chalk.cyan('prd plan create B1') + ' # 创建规划草案');
|
|
151
|
+
console.log(' 3. ' + chalk.cyan('prd plan create B2') + ' # 创建规划拆解');
|
|
152
|
+
console.log(' 4. ' + chalk.cyan('prd plan freeze') + ' # 冻结规划(自动 R1 审视)');
|
|
153
|
+
console.log(' 5. ' + chalk.cyan('prd version create C1') + ' # 创建版本需求(含版本范围)');
|
|
154
|
+
console.log(' 6. ' + chalk.cyan('prd version freeze') + ' # 冻结版本(自动 R2 审视)');
|
|
148
155
|
console.log('');
|
|
149
156
|
console.log(chalk.bold('文档说明:'));
|
|
150
|
-
console.log(' A 类 - 现状基线文档 (A0, A1, A2
|
|
157
|
+
console.log(' A 类 - 现状基线文档 (A0, A1, A2)');
|
|
151
158
|
console.log(' B 类 - 需求规划文档 (B1, B2, B3)');
|
|
152
|
-
console.log(' C 类 - 版本需求文档 (
|
|
153
|
-
console.log(' R 类 -
|
|
159
|
+
console.log(' C 类 - 版本需求文档 (C1 已含版本范围, C3)');
|
|
160
|
+
console.log(' R 类 - 审视(已集成到 freeze 命令)');
|
|
154
161
|
console.log('');
|
|
155
162
|
console.log(chalk.bold('维护命令:'));
|
|
156
163
|
console.log(' ' + chalk.cyan('prd upgrade') + ' # 更新 workflows 和 AI 规则到最新版本');
|