zco-claude 0.0.8__py3-none-any.whl
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.
- ClaudeSettings/DOT.claudeignore +7 -0
- ClaudeSettings/README.md +100 -0
- ClaudeSettings/commands/generate_changelog.sh +49 -0
- ClaudeSettings/commands/show_env +92 -0
- ClaudeSettings/commands/zco-clean +164 -0
- ClaudeSettings/commands/zco-git-summary +15 -0
- ClaudeSettings/commands/zco-git-tag +42 -0
- ClaudeSettings/hooks/CHANGELOG.md +157 -0
- ClaudeSettings/hooks/README.md +254 -0
- ClaudeSettings/hooks/save_chat_plain.py +148 -0
- ClaudeSettings/hooks/save_chat_spec.py +398 -0
- ClaudeSettings/rules/README.md +270 -0
- ClaudeSettings/rules/go/.golangci.yml.template +170 -0
- ClaudeSettings/rules/go/GoBuildAutoVersion.v250425.md +95 -0
- ClaudeSettings/rules/go/check-standards.sh +128 -0
- ClaudeSettings/rules/go/coding-standards.md +973 -0
- ClaudeSettings/rules/go/example.go +207 -0
- ClaudeSettings/rules/go/go-testing.md +691 -0
- ClaudeSettings/rules/go/list-comments.sh +85 -0
- ClaudeSettings/settings.sample.json +71 -0
- ClaudeSettings/skills/README.md +225 -0
- ClaudeSettings/skills/zco-docs-update/SKILL.md +381 -0
- ClaudeSettings/skills/zco-help/SKILL.md +601 -0
- ClaudeSettings/skills/zco-plan/SKILL.md +661 -0
- ClaudeSettings/skills/zco-plan-new/SKILL.md +585 -0
- ClaudeSettings/zco-scripts/co-docs-update.sh +150 -0
- ClaudeSettings/zco-scripts/test_update_plan_metadata.py +328 -0
- ClaudeSettings/zco-scripts/update-plan-metadata.py +324 -0
- zco_claude-0.0.8.dist-info/METADATA +190 -0
- zco_claude-0.0.8.dist-info/RECORD +34 -0
- zco_claude-0.0.8.dist-info/WHEEL +5 -0
- zco_claude-0.0.8.dist-info/entry_points.txt +3 -0
- zco_claude-0.0.8.dist-info/top_level.txt +1 -0
- zco_claude_init.py +1732 -0
|
@@ -0,0 +1,585 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: zco-plan-new
|
|
3
|
+
description: 创建新的项目开发计划。根据用户输入自动生成计划文档,自动分配序号和填充模板。
|
|
4
|
+
allowed-tools: Bash, Read, Write, Glob
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# 创建新的项目开发计划
|
|
8
|
+
|
|
9
|
+
## 🎯 Skill 用途
|
|
10
|
+
|
|
11
|
+
快速创建新的项目计划文档,自动:
|
|
12
|
+
- **查找最大序号 + 1**:扫描现有计划,分配新序号
|
|
13
|
+
- **生成文件名**:`plan.{NewSeq}.A{yymmdd_HHMM}.md`('A' = Auto-generated)
|
|
14
|
+
- **根据用户输入填充模板**:使用 `plan.template.minimal.md` 作为基础
|
|
15
|
+
- **由 Claude 分析并生成详细需求**:根据任务标题推断功能需求
|
|
16
|
+
|
|
17
|
+
## 📋 何时使用此 Skill
|
|
18
|
+
|
|
19
|
+
当用户需要创建新的计划文档时:
|
|
20
|
+
|
|
21
|
+
1. **明确创建计划**
|
|
22
|
+
- "创建一个新计划:实现用户认证功能"
|
|
23
|
+
- "/zco-plan-new 添加日志记录中间件"
|
|
24
|
+
- "新建计划:优化数据库查询性能"
|
|
25
|
+
|
|
26
|
+
2. **快速任务规划**
|
|
27
|
+
- "我想做一个...的功能"
|
|
28
|
+
- "需要实现..."
|
|
29
|
+
- "帮我规划一下...的开发"
|
|
30
|
+
|
|
31
|
+
## 📥 参数说明
|
|
32
|
+
|
|
33
|
+
**命令格式**:
|
|
34
|
+
```bash
|
|
35
|
+
zco-plan-new <简短任务描述>
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
**参数**:
|
|
39
|
+
- `<任务描述>` - 必需,用户的任务描述(一句话或简短描述)
|
|
40
|
+
|
|
41
|
+
**示例**:
|
|
42
|
+
```bash
|
|
43
|
+
zco-plan-new 实现用户认证功能
|
|
44
|
+
zco-plan-new 优化数据库查询性能
|
|
45
|
+
zco-plan-new 添加日志记录中间件
|
|
46
|
+
zco-plan-new 重构用户管理模块
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## 🚀 执行流程
|
|
50
|
+
|
|
51
|
+
### Step 1: 查找最大序号
|
|
52
|
+
|
|
53
|
+
**扫描所有现有计划**:
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
# 扫描 docs/plans/ 目录
|
|
57
|
+
ls docs/plans/plan.*.md
|
|
58
|
+
|
|
59
|
+
# 提取序号(支持变长数字)
|
|
60
|
+
# plan.1.md → 1
|
|
61
|
+
# plan.002.md → 2
|
|
62
|
+
# plan.0100.md → 100
|
|
63
|
+
|
|
64
|
+
# 找到最大值
|
|
65
|
+
MAX_SEQ=100
|
|
66
|
+
NEW_SEQ=$((MAX_SEQ + 1)) # 101
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
**序号提取算法**:
|
|
70
|
+
```python
|
|
71
|
+
import re
|
|
72
|
+
from pathlib import Path
|
|
73
|
+
|
|
74
|
+
def find_max_seq(plans_dir: Path) -> int:
|
|
75
|
+
max_seq = 0
|
|
76
|
+
for plan_file in plans_dir.glob("plan.*.md"):
|
|
77
|
+
# Extract seq from filename: plan.{seq}.*.md
|
|
78
|
+
match = re.match(r'plan\.(\d+)\.', plan_file.name)
|
|
79
|
+
if match:
|
|
80
|
+
seq = int(match.group(1)) # Convert to int (removes leading zeros)
|
|
81
|
+
max_seq = max(max_seq, seq)
|
|
82
|
+
return max_seq
|
|
83
|
+
|
|
84
|
+
def next_new_seq(max_seq: int) -> str:
|
|
85
|
+
"""
|
|
86
|
+
Calculate the next sequence number as a string, padding with zeros if necessary.
|
|
87
|
+
|
|
88
|
+
:param max_seq: The maximum sequence number found so far.
|
|
89
|
+
:return: The next sequence number as a string, padded to 3 digits.
|
|
90
|
+
"""
|
|
91
|
+
return f"{max_seq + 1:03d}" # Zero-fill to 3 digits
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
**边界情况**:
|
|
95
|
+
- 无现有计划 → 从 001 开始
|
|
96
|
+
- 最大序号 999 → 下一个为 1000(支持任意位数)
|
|
97
|
+
|
|
98
|
+
### Step 2: 生成文件名
|
|
99
|
+
|
|
100
|
+
**命名格式**:`plan.{NewSeq}.A{yymmdd_HHMM}.md`
|
|
101
|
+
|
|
102
|
+
**组成部分**:
|
|
103
|
+
- `plan.` - 固定前缀
|
|
104
|
+
- `{NewSeq}` - 新分配的序号(如果不足三位数, 则前缀补零,如 001、002、100, 1001)
|
|
105
|
+
- `.A` - "Auto-generated" 标记
|
|
106
|
+
- `{yymmdd_HHMM}` - 时间戳(年月日时分)
|
|
107
|
+
- `.md` - Markdown 扩展名
|
|
108
|
+
|
|
109
|
+
**示例**:
|
|
110
|
+
```
|
|
111
|
+
plan.101.A260109_1530.md
|
|
112
|
+
plan.1.A260109_1600.md
|
|
113
|
+
plan.050.A260110_0900.md
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
**时间戳格式**:
|
|
117
|
+
```bash
|
|
118
|
+
# 格式:yymmdd_HHMM
|
|
119
|
+
date +%y%m%d_%H%M
|
|
120
|
+
|
|
121
|
+
# 示例输出:260109_1530
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
### Step 3: 生成计划内容
|
|
125
|
+
|
|
126
|
+
**基于 `plan.template.minimal.md` 生成**:
|
|
127
|
+
|
|
128
|
+
```yaml
|
|
129
|
+
---
|
|
130
|
+
seq: {NEW_SEQ}
|
|
131
|
+
title: "{用户输入的任务描述}"
|
|
132
|
+
author: ""
|
|
133
|
+
status: "draft:0"
|
|
134
|
+
priority: "p2:中:可纳入后续迭代计划"
|
|
135
|
+
created_at: ""
|
|
136
|
+
updated_at: ""
|
|
137
|
+
tags: []
|
|
138
|
+
---
|
|
139
|
+
|
|
140
|
+
# 开发任务:{用户输入的任务描述}
|
|
141
|
+
|
|
142
|
+
## 🎯 目标
|
|
143
|
+
|
|
144
|
+
{用户输入的一句话描述}
|
|
145
|
+
|
|
146
|
+
## 📋 详细需求
|
|
147
|
+
|
|
148
|
+
### 功能描述
|
|
149
|
+
|
|
150
|
+
{由 Claude 根据任务标题推断并生成详细需求}
|
|
151
|
+
|
|
152
|
+
1. **功能点 1**:{推断的功能需求}
|
|
153
|
+
- {子需求}
|
|
154
|
+
|
|
155
|
+
2. **功能点 2**:{推断的功能需求}
|
|
156
|
+
- {子需求}
|
|
157
|
+
|
|
158
|
+
### 特殊要求
|
|
159
|
+
|
|
160
|
+
{根据任务类型推断的特殊要求}
|
|
161
|
+
- 性能要求
|
|
162
|
+
- 兼容性要求
|
|
163
|
+
- 安全要求
|
|
164
|
+
|
|
165
|
+
## ✅ 验证标准
|
|
166
|
+
|
|
167
|
+
- [ ] 功能实现并通过测试
|
|
168
|
+
- [ ] 代码通过 linter 检查
|
|
169
|
+
- [ ] 测试覆盖率 ≥ 80%
|
|
170
|
+
- [ ] 文档已更新
|
|
171
|
+
|
|
172
|
+
## 🧪 测试计划
|
|
173
|
+
|
|
174
|
+
### 单元测试
|
|
175
|
+
{根据功能推断的测试用例}
|
|
176
|
+
|
|
177
|
+
### 集成测试
|
|
178
|
+
{根据功能推断的集成场景}
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
**Claude 推断逻辑**:
|
|
182
|
+
|
|
183
|
+
根据任务标题关键词推断:
|
|
184
|
+
|
|
185
|
+
| 关键词 | 推断类型 | 优先级 | 示例标签 |
|
|
186
|
+
|--------|----------|--------|----------|
|
|
187
|
+
| 实现、添加、新增 | 新功能开发 | p1/p2 | feature, new |
|
|
188
|
+
| 优化、改进、提升 | 性能优化 | p2 | optimization, performance |
|
|
189
|
+
| 修复、Bug、问题 | Bug 修复 | p0/p1 | bugfix, fix |
|
|
190
|
+
| 重构、整理、清理 | 代码重构 | p2/p3 | refactor, cleanup |
|
|
191
|
+
| 测试、验证 | 测试相关 | p2 | test, qa |
|
|
192
|
+
| 文档、说明 | 文档更新 | p3 | docs, documentation |
|
|
193
|
+
| 用户、认证、权限 | 用户系统 | p1 | user, auth, security |
|
|
194
|
+
| 数据库、查询、存储 | 数据层 | p1/p2 | database, data |
|
|
195
|
+
| API、接口、服务 | 接口开发 | p1 | api, backend |
|
|
196
|
+
| 前端、UI、页面 | 前端开发 | p2 | frontend, ui |
|
|
197
|
+
|
|
198
|
+
### Step 4: 写入文件
|
|
199
|
+
|
|
200
|
+
**使用 Write 工具创建文件**:
|
|
201
|
+
|
|
202
|
+
```python
|
|
203
|
+
# 示例代码
|
|
204
|
+
plan_path = f"docs/plans/plan.{new_seq}.A{timestamp}.md"
|
|
205
|
+
Write(file_path=plan_path, content=generated_content)
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
**原子操作**:
|
|
209
|
+
- 检查文件是否已存在
|
|
210
|
+
- 如果存在,自动添加后缀:`-2`, `-3`, ...
|
|
211
|
+
- 写入成功后输出确认信息
|
|
212
|
+
|
|
213
|
+
### Step 5: 确认创建
|
|
214
|
+
|
|
215
|
+
**输出成功信息**:
|
|
216
|
+
|
|
217
|
+
```markdown
|
|
218
|
+
✅ 计划创建成功!
|
|
219
|
+
|
|
220
|
+
📄 文件路径:docs/plans/plan.101.A260109_1530.md
|
|
221
|
+
📋 计划序号:101
|
|
222
|
+
📝 任务标题:实现用户认证功能
|
|
223
|
+
📊 状态:draft:0(起稿中)
|
|
224
|
+
🏷️ 标签:feature, auth, security
|
|
225
|
+
|
|
226
|
+
下一步操作:
|
|
227
|
+
1. 执行计划:zco-plan 101
|
|
228
|
+
2. 编辑计划:vim docs/plans/plan.101.A260109_1530.md
|
|
229
|
+
3. 查看内容:cat docs/plans/plan.101.A260109_1530.md
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
## 🔧 Implementation Details
|
|
233
|
+
|
|
234
|
+
### 序号检测完整实现
|
|
235
|
+
|
|
236
|
+
**处理各种序号格式**:
|
|
237
|
+
|
|
238
|
+
```python
|
|
239
|
+
import re
|
|
240
|
+
from pathlib import Path
|
|
241
|
+
|
|
242
|
+
def find_max_seq_number(plans_dir: Path = Path("docs/plans")) -> int:
|
|
243
|
+
"""
|
|
244
|
+
Find maximum sequence number from existing plan files
|
|
245
|
+
|
|
246
|
+
Handles:
|
|
247
|
+
- plan.1.md → 1
|
|
248
|
+
- plan.02.md → 2
|
|
249
|
+
- plan.003.md → 3
|
|
250
|
+
- plan.0100.md → 100
|
|
251
|
+
|
|
252
|
+
Returns:
|
|
253
|
+
int: Maximum sequence number (0 if no plans exist)
|
|
254
|
+
"""
|
|
255
|
+
if not plans_dir.exists():
|
|
256
|
+
plans_dir.mkdir(parents=True, exist_ok=True)
|
|
257
|
+
return 0
|
|
258
|
+
|
|
259
|
+
max_seq = 0
|
|
260
|
+
pattern = re.compile(r'^plan\.(\d+)\.')
|
|
261
|
+
|
|
262
|
+
for plan_file in plans_dir.glob("plan.*.md"):
|
|
263
|
+
match = pattern.match(plan_file.name)
|
|
264
|
+
if match:
|
|
265
|
+
seq = int(match.group(1)) # Converts '001' to 1, '0100' to 100
|
|
266
|
+
max_seq = max(max_seq, seq)
|
|
267
|
+
|
|
268
|
+
return max_seq
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
### 内容生成策略
|
|
272
|
+
|
|
273
|
+
**基于任务描述生成内容**:
|
|
274
|
+
|
|
275
|
+
1. **分析任务标题**:
|
|
276
|
+
- 提取关键词(动词、名词)
|
|
277
|
+
- 识别技术领域
|
|
278
|
+
- 判断任务类型
|
|
279
|
+
|
|
280
|
+
2. **推断优先级**:
|
|
281
|
+
- 包含"紧急"、"Bug"、"修复" → p0/p1
|
|
282
|
+
- 包含"实现"、"添加" → p1/p2
|
|
283
|
+
- 包含"优化"、"重构" → p2
|
|
284
|
+
- 包含"文档"、"整理" → p3
|
|
285
|
+
|
|
286
|
+
3. **生成标签**:
|
|
287
|
+
- 任务类型标签(feature, bugfix, optimization, etc.)
|
|
288
|
+
- 技术领域标签(backend, frontend, database, etc.)
|
|
289
|
+
- 功能模块标签(auth, user, api, etc.)
|
|
290
|
+
|
|
291
|
+
4. **推断功能需求**:
|
|
292
|
+
- 列出主要功能点(2-3 个)
|
|
293
|
+
- 每个功能点包含子需求
|
|
294
|
+
- 考虑特殊要求(性能、安全、兼容性)
|
|
295
|
+
|
|
296
|
+
5. **生成测试计划**:
|
|
297
|
+
- 单元测试场景
|
|
298
|
+
- 集成测试场景
|
|
299
|
+
- 边界条件测试
|
|
300
|
+
|
|
301
|
+
### 错误处理
|
|
302
|
+
|
|
303
|
+
**常见错误及处理**:
|
|
304
|
+
|
|
305
|
+
1. **无参数错误**
|
|
306
|
+
```
|
|
307
|
+
错误:缺少任务描述
|
|
308
|
+
提示:用法:zco-plan-new <任务描述>
|
|
309
|
+
示例:zco-plan-new 实现用户认证功能
|
|
310
|
+
```
|
|
311
|
+
|
|
312
|
+
2. **docs/plans/ 目录不存在**
|
|
313
|
+
```
|
|
314
|
+
自动创建:mkdir -p docs/plans/
|
|
315
|
+
提示:已创建 docs/plans/ 目录
|
|
316
|
+
```
|
|
317
|
+
|
|
318
|
+
3. **文件名冲突**
|
|
319
|
+
```
|
|
320
|
+
检测:plan.101.A260109_1530.md 已存在
|
|
321
|
+
处理:自动添加后缀 → plan.101.A260109_1530-2.md
|
|
322
|
+
提示:文件名已存在,已添加后缀 -2
|
|
323
|
+
```
|
|
324
|
+
|
|
325
|
+
4. **写入权限问题**
|
|
326
|
+
```
|
|
327
|
+
错误:无权限写入 docs/plans/
|
|
328
|
+
提示:请检查目录权限:chmod +w docs/plans/
|
|
329
|
+
```
|
|
330
|
+
|
|
331
|
+
5. **任务描述过长**
|
|
332
|
+
```
|
|
333
|
+
警告:任务描述超过 100 字符
|
|
334
|
+
建议:简化为一句话描述,详细需求可在计划中补充
|
|
335
|
+
```
|
|
336
|
+
|
|
337
|
+
## 📋 使用示例
|
|
338
|
+
|
|
339
|
+
### 示例 1: 创建新功能计划
|
|
340
|
+
|
|
341
|
+
**用户输入**:
|
|
342
|
+
```bash
|
|
343
|
+
zco-plan-new 实现用户认证功能
|
|
344
|
+
```
|
|
345
|
+
|
|
346
|
+
**执行流程**:
|
|
347
|
+
1. 扫描现有计划:找到最大序号 100
|
|
348
|
+
2. 分配新序号:101
|
|
349
|
+
3. 生成文件名:`plan.101.A260109_1530.md`
|
|
350
|
+
4. 分析任务:"实现" + "用户认证" → 新功能 + 用户模块
|
|
351
|
+
5. 推断优先级:p1(高优先级功能)
|
|
352
|
+
6. 生成标签:`[feature, auth, user, security]`
|
|
353
|
+
7. 生成内容(包含详细需求)
|
|
354
|
+
8. 写入文件
|
|
355
|
+
9. 输出确认信息
|
|
356
|
+
|
|
357
|
+
**生成的计划内容**:
|
|
358
|
+
```yaml
|
|
359
|
+
---
|
|
360
|
+
seq: 101
|
|
361
|
+
title: "实现用户认证功能"
|
|
362
|
+
author: ""
|
|
363
|
+
status: "draft:0"
|
|
364
|
+
priority: "p1:高:当前迭代/排期内重点解决"
|
|
365
|
+
created_at: ""
|
|
366
|
+
updated_at: ""
|
|
367
|
+
tags: [feature, auth, user, security]
|
|
368
|
+
---
|
|
369
|
+
|
|
370
|
+
# 开发任务:实现用户认证功能
|
|
371
|
+
|
|
372
|
+
## 🎯 目标
|
|
373
|
+
|
|
374
|
+
实现完整的用户认证系统,支持用户注册、登录、登出,以及基于 JWT 的身份验证。
|
|
375
|
+
|
|
376
|
+
## 📋 详细需求
|
|
377
|
+
|
|
378
|
+
### 功能描述
|
|
379
|
+
|
|
380
|
+
1. **用户注册**:新用户注册功能
|
|
381
|
+
- 邮箱验证
|
|
382
|
+
- 密码强度检查
|
|
383
|
+
- 防重复注册
|
|
384
|
+
|
|
385
|
+
2. **用户登录**:用户登录功能
|
|
386
|
+
- 邮箱/用户名登录
|
|
387
|
+
- JWT Token 生成
|
|
388
|
+
- 登录失败锁定机制
|
|
389
|
+
|
|
390
|
+
3. **会话管理**:用户会话管理
|
|
391
|
+
- Token 刷新机制
|
|
392
|
+
- 登出功能
|
|
393
|
+
- 会话过期处理
|
|
394
|
+
|
|
395
|
+
### 特殊要求
|
|
396
|
+
|
|
397
|
+
- **安全要求**:
|
|
398
|
+
- 密码加密存储(bcrypt)
|
|
399
|
+
- SQL 注入防护
|
|
400
|
+
- CSRF 防护
|
|
401
|
+
- Rate limiting
|
|
402
|
+
|
|
403
|
+
- **性能要求**:
|
|
404
|
+
- 登录响应时间 < 200ms
|
|
405
|
+
- Token 验证 < 50ms
|
|
406
|
+
|
|
407
|
+
## ✅ 验证标准
|
|
408
|
+
|
|
409
|
+
- [ ] 用户注册功能实现并通过测试
|
|
410
|
+
- [ ] 用户登录功能实现并通过测试
|
|
411
|
+
- [ ] JWT Token 生成和验证正确
|
|
412
|
+
- [ ] 所有安全要求满足
|
|
413
|
+
- [ ] 代码通过 linter 检查
|
|
414
|
+
- [ ] 测试覆盖率 ≥ 80%
|
|
415
|
+
- [ ] API 文档已更新
|
|
416
|
+
|
|
417
|
+
## 🧪 测试计划
|
|
418
|
+
|
|
419
|
+
### 单元测试
|
|
420
|
+
|
|
421
|
+
**测试用例 1:用户注册**
|
|
422
|
+
```
|
|
423
|
+
输入:有效的邮箱和密码
|
|
424
|
+
预期:用户创建成功,返回用户 ID
|
|
425
|
+
```
|
|
426
|
+
|
|
427
|
+
**测试用例 2:重复注册**
|
|
428
|
+
```
|
|
429
|
+
输入:已存在的邮箱
|
|
430
|
+
预期:返回错误:邮箱已存在
|
|
431
|
+
```
|
|
432
|
+
|
|
433
|
+
**测试用例 3:密码强度**
|
|
434
|
+
```
|
|
435
|
+
输入:弱密码(如 "123456")
|
|
436
|
+
预期:返回错误:密码强度不足
|
|
437
|
+
```
|
|
438
|
+
|
|
439
|
+
### 集成测试
|
|
440
|
+
|
|
441
|
+
**场景 1:完整认证流程**
|
|
442
|
+
```
|
|
443
|
+
步骤:
|
|
444
|
+
1. 用户注册
|
|
445
|
+
2. 用户登录
|
|
446
|
+
3. 验证 Token
|
|
447
|
+
4. 访问受保护资源
|
|
448
|
+
5. 登出
|
|
449
|
+
|
|
450
|
+
预期结果:整个流程正常运行
|
|
451
|
+
```
|
|
452
|
+
```
|
|
453
|
+
|
|
454
|
+
**输出**:
|
|
455
|
+
```
|
|
456
|
+
✅ 计划创建成功!
|
|
457
|
+
|
|
458
|
+
📄 文件路径:docs/plans/plan.101.A260109_1530.md
|
|
459
|
+
📋 计划序号:101
|
|
460
|
+
📝 任务标题:实现用户认证功能
|
|
461
|
+
📊 状态:draft:0(起稿中)
|
|
462
|
+
🏷️ 标签:feature, auth, user, security
|
|
463
|
+
|
|
464
|
+
下一步操作:
|
|
465
|
+
1. 执行计划:zco-plan 101
|
|
466
|
+
2. 编辑计划:vim docs/plans/plan.101.A260109_1530.md
|
|
467
|
+
3. 查看内容:cat docs/plans/plan.101.A260109_1530.md
|
|
468
|
+
```
|
|
469
|
+
|
|
470
|
+
### 示例 2: 创建 Bug 修复计划
|
|
471
|
+
|
|
472
|
+
**用户输入**:
|
|
473
|
+
```bash
|
|
474
|
+
zco-plan-new 修复用户登录失败 500 错误
|
|
475
|
+
```
|
|
476
|
+
|
|
477
|
+
**推断结果**:
|
|
478
|
+
- 任务类型:Bug 修复
|
|
479
|
+
- 优先级:p0(紧急)
|
|
480
|
+
- 标签:`[bugfix, user, auth, critical]`
|
|
481
|
+
|
|
482
|
+
**生成的计划包含**:
|
|
483
|
+
- 问题描述
|
|
484
|
+
- 复现步骤
|
|
485
|
+
- 预期行为 vs 实际行为
|
|
486
|
+
- 可能原因分析
|
|
487
|
+
- 修复方案
|
|
488
|
+
|
|
489
|
+
### 示例 3: 创建优化计划
|
|
490
|
+
|
|
491
|
+
**用户输入**:
|
|
492
|
+
```bash
|
|
493
|
+
zco-plan-new 优化数据库查询性能
|
|
494
|
+
```
|
|
495
|
+
|
|
496
|
+
**推断结果**:
|
|
497
|
+
- 任务类型:性能优化
|
|
498
|
+
- 优先级:p2(中等)
|
|
499
|
+
- 标签:`[optimization, database, performance]`
|
|
500
|
+
|
|
501
|
+
**生成的计划包含**:
|
|
502
|
+
- 当前性能指标
|
|
503
|
+
- 优化目标
|
|
504
|
+
- 优化方案(索引、查询重写、缓存等)
|
|
505
|
+
- 性能测试计划
|
|
506
|
+
|
|
507
|
+
### 示例 4: 无现有计划(首次使用)
|
|
508
|
+
|
|
509
|
+
**用户输入**:
|
|
510
|
+
```bash
|
|
511
|
+
zco-plan-new 项目初始化
|
|
512
|
+
```
|
|
513
|
+
|
|
514
|
+
**执行流程**:
|
|
515
|
+
1. 扫描 docs/plans/:无现有计划
|
|
516
|
+
2. 分配序号:001
|
|
517
|
+
3. 自动创建目录:`mkdir -p docs/plans/`
|
|
518
|
+
4. 生成文件:`plan.001.A260109_1600.md`
|
|
519
|
+
5. 输出确认信息
|
|
520
|
+
|
|
521
|
+
## 🚨 注意事项
|
|
522
|
+
|
|
523
|
+
### 必须遵守的规则
|
|
524
|
+
|
|
525
|
+
1. **序号唯一性**:
|
|
526
|
+
- 自动递增,避免冲突
|
|
527
|
+
- 支持任意位数(1、02、003、0100)
|
|
528
|
+
- 转换为整数比较('002' == 2)
|
|
529
|
+
|
|
530
|
+
2. **文件命名规范**:
|
|
531
|
+
- 格式:`plan.{seq}.A{timestamp}.md`
|
|
532
|
+
- 时间戳精确到分钟(避免冲突)
|
|
533
|
+
- 'A' 前缀标记自动生成
|
|
534
|
+
|
|
535
|
+
3. **内容完整性**:
|
|
536
|
+
- 必须包含 YAML front matter
|
|
537
|
+
- 至少包含:seq, title, status
|
|
538
|
+
- 至少包含:目标、需求、验证标准
|
|
539
|
+
|
|
540
|
+
4. **默认值**:
|
|
541
|
+
- status: `draft:0`
|
|
542
|
+
- priority: `p2:中:可纳入后续迭代计划`
|
|
543
|
+
- author: 空字符串(可后续填充)
|
|
544
|
+
- tags: 由 Claude 生成
|
|
545
|
+
|
|
546
|
+
### 推荐做法
|
|
547
|
+
|
|
548
|
+
1. **任务描述简洁**:
|
|
549
|
+
- 一句话描述核心功能
|
|
550
|
+
- 避免过长描述(< 100 字符)
|
|
551
|
+
- 关键词明确(动词 + 名词)
|
|
552
|
+
|
|
553
|
+
2. **创建后编辑**:
|
|
554
|
+
- 生成计划后可编辑补充
|
|
555
|
+
- 调整优先级和详细需求
|
|
556
|
+
- 添加参考信息和依赖项
|
|
557
|
+
|
|
558
|
+
3. **配合 zco-plan 使用**:
|
|
559
|
+
- 创建后立即执行:`zco-plan {seq}`
|
|
560
|
+
- 或先编辑再执行
|
|
561
|
+
|
|
562
|
+
## 🔗 相关资源
|
|
563
|
+
|
|
564
|
+
### 相关文件
|
|
565
|
+
|
|
566
|
+
- **计划模板**: `docs/plans/plan.template.minimal.md`
|
|
567
|
+
- **完整模板**: `docs/plans/plan.template.md`
|
|
568
|
+
- **计划目录**: `docs/plans/`
|
|
569
|
+
- **zco-plan Skill**: `.claude/skills/zco-plan/SKILL.md`
|
|
570
|
+
|
|
571
|
+
### 相关 Skills
|
|
572
|
+
|
|
573
|
+
- **zco-plan**: 执行现有计划
|
|
574
|
+
- **zco-docs-update**: 更新文档元信息
|
|
575
|
+
- **zco-plan-new**: 创建新计划(本 Skill)
|
|
576
|
+
|
|
577
|
+
### 命名规范
|
|
578
|
+
|
|
579
|
+
所有自定义 skills 使用 `zco-` 前缀(Zhicheng Custom Operations)
|
|
580
|
+
|
|
581
|
+
---
|
|
582
|
+
|
|
583
|
+
**Skill 版本**: 1.0.0
|
|
584
|
+
**最后更新**: 2026-01-09
|
|
585
|
+
**维护者**: 开发团队
|