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.
Files changed (34) hide show
  1. ClaudeSettings/DOT.claudeignore +7 -0
  2. ClaudeSettings/README.md +100 -0
  3. ClaudeSettings/commands/generate_changelog.sh +49 -0
  4. ClaudeSettings/commands/show_env +92 -0
  5. ClaudeSettings/commands/zco-clean +164 -0
  6. ClaudeSettings/commands/zco-git-summary +15 -0
  7. ClaudeSettings/commands/zco-git-tag +42 -0
  8. ClaudeSettings/hooks/CHANGELOG.md +157 -0
  9. ClaudeSettings/hooks/README.md +254 -0
  10. ClaudeSettings/hooks/save_chat_plain.py +148 -0
  11. ClaudeSettings/hooks/save_chat_spec.py +398 -0
  12. ClaudeSettings/rules/README.md +270 -0
  13. ClaudeSettings/rules/go/.golangci.yml.template +170 -0
  14. ClaudeSettings/rules/go/GoBuildAutoVersion.v250425.md +95 -0
  15. ClaudeSettings/rules/go/check-standards.sh +128 -0
  16. ClaudeSettings/rules/go/coding-standards.md +973 -0
  17. ClaudeSettings/rules/go/example.go +207 -0
  18. ClaudeSettings/rules/go/go-testing.md +691 -0
  19. ClaudeSettings/rules/go/list-comments.sh +85 -0
  20. ClaudeSettings/settings.sample.json +71 -0
  21. ClaudeSettings/skills/README.md +225 -0
  22. ClaudeSettings/skills/zco-docs-update/SKILL.md +381 -0
  23. ClaudeSettings/skills/zco-help/SKILL.md +601 -0
  24. ClaudeSettings/skills/zco-plan/SKILL.md +661 -0
  25. ClaudeSettings/skills/zco-plan-new/SKILL.md +585 -0
  26. ClaudeSettings/zco-scripts/co-docs-update.sh +150 -0
  27. ClaudeSettings/zco-scripts/test_update_plan_metadata.py +328 -0
  28. ClaudeSettings/zco-scripts/update-plan-metadata.py +324 -0
  29. zco_claude-0.0.8.dist-info/METADATA +190 -0
  30. zco_claude-0.0.8.dist-info/RECORD +34 -0
  31. zco_claude-0.0.8.dist-info/WHEEL +5 -0
  32. zco_claude-0.0.8.dist-info/entry_points.txt +3 -0
  33. zco_claude-0.0.8.dist-info/top_level.txt +1 -0
  34. zco_claude_init.py +1732 -0
@@ -0,0 +1,381 @@
1
+ ---
2
+ name: zco-docs-update
3
+ description: 更新 CLAUDE.md 文档的 Git 元信息(提交 ID、分支、最新提交等)。当用户需要同步项目文档、维护代码库文档,或明确要求更新 CLAUDE.md 时使用此 Skill。
4
+ allowed-tools: Bash, Read, Glob
5
+ ---
6
+
7
+ # 更新 CLAUDE.md 文档元信息
8
+
9
+ ## 🎯 Skill 用途
10
+
11
+ 自动更新项目根目录下 `CLAUDE.md` 文件中的 Git 相关元信息,保持项目文档与代码仓库同步。
12
+
13
+ **更新内容包括**:
14
+ - **Git Commit ID**(完整哈希 + 短版本)
15
+ - **当前 Git 分支**
16
+ - **最新提交信息**(消息、作者、时间)
17
+ - **应用版本**(从 main.go 自动提取)
18
+ - **文档更新时间戳**
19
+
20
+ ## 📋 何时使用此 Skill
21
+
22
+ 当以下情况发生时,Claude 会自动提议使用此 Skill(或您也可以手动请求):
23
+
24
+ 1. **用户明确请求**
25
+ - "更新 CLAUDE.md 的 Git 信息"
26
+ - "同步项目文档"
27
+ - "运行 co-docs-update 脚本"
28
+
29
+ 2. **代码提交后**
30
+ - 完成重要功能开发后
31
+ - 准备提交代码前
32
+ - 发布新版本前
33
+
34
+ 3. **分支切换后**
35
+ - 从一个分支切换到另一个分支
36
+ - 需要确认当前环境信息
37
+
38
+ 4. **定期维护**
39
+ - 每日/每周的文档维护
40
+ - Code Review 前的文档检查
41
+
42
+ ## 🚀 使用步骤
43
+
44
+ ### Step 1: 查看当前状态
45
+
46
+ 首先,我会显示 CLAUDE.md 当前的元信息状态:
47
+
48
+ ```bash
49
+ # 查看当前文档元信息
50
+ head -20 CLAUDE.md
51
+ ```
52
+
53
+ ### Step 2: 执行更新脚本
54
+
55
+ 运行项目的文档更新脚本:
56
+
57
+ ```bash
58
+ # 执行更新
59
+ bash .claude/zco-scripts/co-docs-update.sh
60
+ ```
61
+
62
+ **脚本执行流程**:
63
+ 1. ✅ 验证当前目录是 Git 仓库
64
+ 2. ✅ 检查 CLAUDE.md 文件是否存在
65
+ 3. ✅ 创建备份文件(格式:`CLAUDE.md._.YYMMDD_HHMM`)
66
+ 4. ✅ 收集 Git 元信息(commit、branch、author 等)
67
+ 5. ✅ 从 main.go 提取应用版本
68
+ 6. ✅ 使用 sed 更新文档中的对应字段
69
+ 7. ✅ 显示更新前后的差异
70
+ 8. ✅ 询问是否删除备份文件
71
+
72
+ ### Step 3: 查看更新结果
73
+
74
+ 我会展示更新后的差异,并确认更新是否成功:
75
+
76
+ ```bash
77
+ # 查看更新后的元信息
78
+ head -20 CLAUDE.md
79
+
80
+ # 查看 Git 状态
81
+ git status CLAUDE.md
82
+ ```
83
+
84
+ ### Step 4: 提交更改(可选)
85
+
86
+ 如果需要,我会帮您提交更改到 Git:
87
+
88
+ ```bash
89
+ git add CLAUDE.md
90
+ git commit -m "docs: update CLAUDE.md metadata"
91
+ ```
92
+
93
+ ## 📝 更新的字段说明
94
+
95
+ 脚本会精确更新 CLAUDE.md 中以下字段(位于 "文档元信息" 部分):
96
+
97
+ | 字段 | 说明 | 示例 |
98
+ |------|------|------|
99
+ | **更新时间** | 当前时间戳 | `2026-01-08 16:30:45` |
100
+ | **Git Commit** | 短哈希 + 完整哈希 | `` `280e2ba` (280e2bae6...) `` |
101
+ | **Git Branch** | 当前分支名 | `` `server_idc_alpha` `` |
102
+ | **最新提交** | 提交信息 + 作者 + 时间 | `ignore: ai-forge (by 宁蓉, 2026-01-06 23:01:23 +0800)` |
103
+ | **应用版本** | 从 main.go 提取 | `25.12.31` |
104
+ | **最后更新** | 文档底部时间戳 | `2026-01-08 16:30:45` |
105
+
106
+ ## 🔧 脚本功能详解
107
+
108
+ ### 自动备份机制
109
+
110
+ ```bash
111
+ # 备份文件命名规则
112
+ CLAUDE.md._.YYMMDD_HHMM
113
+
114
+ # 示例
115
+ CLAUDE.md._.260108_1630
116
+ ```
117
+
118
+ - ✅ 更新前自动创建备份
119
+ - ✅ 时间戳命名,易于追溯
120
+ - ✅ 更新失败时可快速回滚
121
+ - ✅ 更新成功后可选择保留或删除
122
+
123
+ ### Git 信息采集
124
+
125
+ 脚本使用以下 Git 命令采集信息:
126
+
127
+ ```bash
128
+ # 完整 Commit 哈希
129
+ git log -1 --pretty=format:"%H"
130
+
131
+ # 短 Commit 哈希
132
+ git log -1 --pretty=format:"%h"
133
+
134
+ # 提交消息
135
+ git log -1 --pretty=format:"%s"
136
+
137
+ # 作者
138
+ git log -1 --pretty=format:"%an"
139
+
140
+ # 提交时间
141
+ git log -1 --pretty=format:"%ad" --date=iso
142
+
143
+ # 当前分支
144
+ git rev-parse --abbrev-ref HEAD
145
+ ```
146
+
147
+ ### 版本提取逻辑
148
+
149
+ 从 `main.go` 中提取版本号:
150
+
151
+ ```go
152
+ // main.go 中的版本定义
153
+ const version string = "25.12.31"
154
+
155
+ // 脚本提取命令
156
+ grep -E 'const version string = "' main.go | sed -E 's/.*"(.*)".*/\1/'
157
+ ```
158
+
159
+ ### 安全的文本替换
160
+
161
+ 使用 `sed` 进行精确的正则替换,确保只更新目标字段:
162
+
163
+ ```bash
164
+ sed -e "s|^- \*\*更新时间\*\*:.*|- **更新时间**: $CURRENT_TIME|" \
165
+ -e "s|^- \*\*Git Commit\*\*:.*|- **Git Commit**: \`$GIT_COMMIT_SHORT\` ($GIT_COMMIT_FULL)|" \
166
+ ...
167
+ ```
168
+
169
+ ## ⚠️ 注意事项
170
+
171
+ ### 前置条件
172
+
173
+ - ✅ 必须在 Git 仓库根目录或子目录运行
174
+ - ✅ 项目根目录必须存在 `CLAUDE.md` 文件
175
+ - ✅ 脚本必须有执行权限(`chmod +x .claude/zco-scripts/co-docs-update.sh`)
176
+ - ✅ main.go 中需要有 `const version string = "..."` 定义
177
+
178
+ ### 安全性
179
+
180
+ - ✅ 更新前自动创建备份,防止数据丢失
181
+ - ✅ 使用 `sed` 替换特定行,不影响其他内容
182
+ - ✅ 显示更新差异,允许用户审查
183
+ - ✅ 出错时自动退出,不破坏文档
184
+
185
+ ### 兼容性
186
+
187
+ - ✅ 支持 Linux 和 macOS
188
+ - ⚠️ Windows 需要 Git Bash 或 WSL 环境
189
+ - ✅ 需要 bash 4.0+、sed、git 命令
190
+
191
+ ## 🐛 失败排查
192
+
193
+ ### 错误 1: "未找到 Git 仓库"
194
+
195
+ **原因**:不在 Git 项目目录中
196
+
197
+ **解决方案**:
198
+ ```bash
199
+ # 进入项目根目录
200
+ cd /path/to/yj3d-anno-server
201
+
202
+ # 验证 Git 仓库
203
+ git status
204
+ ```
205
+
206
+ ### 错误 2: "CLAUDE.md 文件不存在"
207
+
208
+ **原因**:项目根目录缺少 CLAUDE.md
209
+
210
+ **解决方案**:
211
+ ```bash
212
+ # 方式 1: 手动创建(如果已经创建过)
213
+ ls CLAUDE.md
214
+
215
+ # 方式 2: 重新生成文档
216
+ # 请求 Claude 重新创建 CLAUDE.md
217
+ ```
218
+
219
+ ### 错误 3: 版本显示 "unknown"
220
+
221
+ **原因**:main.go 中没有 `const version string` 定义
222
+
223
+ **解决方案**:
224
+ ```bash
225
+ # 检查 main.go
226
+ grep "const version" main.go
227
+
228
+ # 如果没有,添加版本定义:
229
+ # const version string = "XX.YY.ZZ"
230
+ ```
231
+
232
+ ### 错误 4: 权限不足
233
+
234
+ **原因**:脚本没有执行权限
235
+
236
+ **解决方案**:
237
+ ```bash
238
+ # 添加执行权限
239
+ chmod +x .claude/zco-scripts/co-docs-update.sh
240
+
241
+ # 验证权限
242
+ ls -l .claude/zco-scripts/co-docs-update.sh
243
+ ```
244
+
245
+ ### 错误 5: sed 命令失败
246
+
247
+ **原因**:CLAUDE.md 格式被手动修改,导致正则不匹配
248
+
249
+ **解决方案**:
250
+ ```bash
251
+ # 查看备份文件
252
+ ls CLAUDE.md._.*.md
253
+
254
+ # 检查元信息部分格式
255
+ head -20 CLAUDE.md
256
+
257
+ # 确保元信息格式为:
258
+ # - **更新时间**: YYYY-MM-DD HH:MM:SS
259
+ # - **Git Commit**: `short` (full)
260
+ # ...
261
+ ```
262
+
263
+ ## 📚 使用示例
264
+
265
+ ### 示例 1: 日常更新
266
+
267
+ **用户请求**:
268
+ ```
269
+ 更新一下 CLAUDE.md 的 Git 信息
270
+ ```
271
+
272
+ **Claude 执行**:
273
+ 1. 运行 `bash .claude/zco-scripts/co-docs-update.sh`
274
+ 2. 显示更新前后的差异
275
+ 3. 询问是否保留备份
276
+ 4. 确认更新成功
277
+
278
+ ### 示例 2: 提交前检查
279
+
280
+ **用户请求**:
281
+ ```
282
+ 我准备提交代码了,帮我同步一下项目文档
283
+ ```
284
+
285
+ **Claude 执行**:
286
+ 1. 运行文档更新脚本
287
+ 2. 显示 Git 状态
288
+ 3. 建议是否一起提交 CLAUDE.md
289
+ 4. 提供提交命令
290
+
291
+ ### 示例 3: 发布新版本
292
+
293
+ **用户请求**:
294
+ ```
295
+ 我们要发布 v26.01.08 版本,更新所有文档
296
+ ```
297
+
298
+ **Claude 执行**:
299
+ 1. 确认 main.go 中的版本号已更新
300
+ 2. 运行文档更新脚本
301
+ 3. 验证版本号正确提取
302
+ 4. 建议创建版本标签
303
+
304
+ ## 🔗 相关资源
305
+
306
+ ### 项目文件
307
+
308
+ - **文档位置**: `CLAUDE.md`(项目根目录)
309
+ - **脚本位置**: `scripts/co-docs-update.sh`
310
+ - **版本定义**: `main.go:21`(`const version string = "..."`)
311
+
312
+ ### 相关 Skills
313
+
314
+ 如果您有其他文档相关的 Skills,可以组合使用:
315
+
316
+ - `zco-docs-update`: 更新 CLAUDE.md 元信息(本 Skill)
317
+ - `/init`: 初始化新的 CLAUDE.md 文档(如果存在)
318
+ - 其他自定义 `zco-*` 命令(按您的命名规范)
319
+
320
+ ### 团队协作
321
+
322
+ - ✅ 将此 Skill 提交到 Git,团队共享
323
+ - ✅ 在 CI/CD 中集成自动更新(可选)
324
+ - ✅ 定期运行保持文档最新
325
+
326
+ ## 💡 最佳实践
327
+
328
+ ### 1. 定期更新
329
+
330
+ 建议在以下时机更新文档:
331
+ - 每次重要 feature 完成后
332
+ - 每天工作结束前
333
+ - 提交 Pull Request 前
334
+ - 发布新版本前
335
+
336
+ ### 2. 与 Git 工作流集成
337
+
338
+ ```bash
339
+ # Git Pre-commit Hook 示例
340
+ # .git/hooks/pre-commit
341
+ #!/bin/bash
342
+ if [ -f "CLAUDE.md" ]; then
343
+ bash .claude/zco-scripts/co-docs-update.sh -y # 自动更新
344
+ git add CLAUDE.md
345
+ fi
346
+ ```
347
+
348
+ ### 3. CI/CD 集成
349
+
350
+ 在 `.gitlab-ci.yml` 中添加文档检查:
351
+
352
+ ```yaml
353
+ check-docs:
354
+ stage: test
355
+ script:
356
+ - bash .claude/zco-scripts/co-docs-update.sh
357
+ - git diff --exit-code CLAUDE.md || (echo "文档需要更新" && exit 1)
358
+ ```
359
+
360
+ ## 🎓 技术细节
361
+
362
+ ### Skill 调用逻辑
363
+
364
+ 1. **自动触发**:当用户请求与文档更新相关时,Claude 自动调用
365
+ 2. **工具限制**:仅允许使用 Bash、Read、Glob 工具(安全性)
366
+ 3. **上下文感知**:Claude 会检查当前项目状态,决定是否合适运行
367
+
368
+ ### 脚本输出格式
369
+
370
+ 脚本使用彩色输出,便于阅读:
371
+
372
+ - 🔵 蓝色 `[INFO]` - 信息提示
373
+ - 🟢 绿色 `[SUCCESS]` - 成功消息
374
+ - 🟡 黄色 `[WARN]` - 警告信息
375
+ - 🔴 红色 `[ERROR]` - 错误信息
376
+
377
+ ---
378
+
379
+ **Skill 版本**: 1.0.0
380
+ **最后更新**: 2026-01-08
381
+ **维护者**: 开发团队