tackle-harness 0.0.2

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 (49) hide show
  1. package/LICENSE +21 -0
  2. package/README.en.md +259 -0
  3. package/README.md +261 -0
  4. package/bin/tackle.js +150 -0
  5. package/package.json +29 -0
  6. package/plugins/contracts/plugin-interface.js +244 -0
  7. package/plugins/core/hook-skill-gate/index.js +437 -0
  8. package/plugins/core/hook-skill-gate/plugin.json +12 -0
  9. package/plugins/core/provider-memory-store/index.js +403 -0
  10. package/plugins/core/provider-memory-store/plugin.json +9 -0
  11. package/plugins/core/provider-role-registry/index.js +477 -0
  12. package/plugins/core/provider-role-registry/plugin.json +9 -0
  13. package/plugins/core/provider-state-store/index.js +244 -0
  14. package/plugins/core/provider-state-store/plugin.json +9 -0
  15. package/plugins/core/skill-agent-dispatcher/plugin.json +13 -0
  16. package/plugins/core/skill-agent-dispatcher/skill.md +912 -0
  17. package/plugins/core/skill-batch-task-creator/plugin.json +13 -0
  18. package/plugins/core/skill-batch-task-creator/skill.md +616 -0
  19. package/plugins/core/skill-checklist/plugin.json +10 -0
  20. package/plugins/core/skill-checklist/skill.md +115 -0
  21. package/plugins/core/skill-completion-report/plugin.json +10 -0
  22. package/plugins/core/skill-completion-report/skill.md +331 -0
  23. package/plugins/core/skill-experience-logger/plugin.json +10 -0
  24. package/plugins/core/skill-experience-logger/skill.md +235 -0
  25. package/plugins/core/skill-human-checkpoint/plugin.json +10 -0
  26. package/plugins/core/skill-human-checkpoint/skill.md +194 -0
  27. package/plugins/core/skill-progress-tracker/plugin.json +10 -0
  28. package/plugins/core/skill-progress-tracker/skill.md +204 -0
  29. package/plugins/core/skill-role-manager/plugin.json +10 -0
  30. package/plugins/core/skill-role-manager/skill.md +252 -0
  31. package/plugins/core/skill-split-work-package/plugin.json +13 -0
  32. package/plugins/core/skill-split-work-package/skill.md +446 -0
  33. package/plugins/core/skill-task-creator/plugin.json +13 -0
  34. package/plugins/core/skill-task-creator/skill.md +744 -0
  35. package/plugins/core/skill-team-cleanup/plugin.json +10 -0
  36. package/plugins/core/skill-team-cleanup/skill.md +266 -0
  37. package/plugins/core/skill-workflow-orchestrator/plugin.json +13 -0
  38. package/plugins/core/skill-workflow-orchestrator/skill.md +274 -0
  39. package/plugins/core/validator-doc-sync/index.js +248 -0
  40. package/plugins/core/validator-doc-sync/plugin.json +9 -0
  41. package/plugins/core/validator-work-package/index.js +300 -0
  42. package/plugins/core/validator-work-package/plugin.json +9 -0
  43. package/plugins/plugin-registry.json +118 -0
  44. package/plugins/runtime/config-manager.js +306 -0
  45. package/plugins/runtime/event-bus.js +187 -0
  46. package/plugins/runtime/harness-build.js +1019 -0
  47. package/plugins/runtime/logger.js +174 -0
  48. package/plugins/runtime/plugin-loader.js +339 -0
  49. package/plugins/runtime/state-store.js +277 -0
@@ -0,0 +1,115 @@
1
+ ---
2
+ name: checklist
3
+ description: Use when user says "运行检查", "执行清单", "检查清单", or after completing a work package to verify quality
4
+ ---
5
+
6
+ # Checklist
7
+
8
+ 开发完成质量检查技能。
9
+
10
+ ## When to Use
11
+ - 用户说 "运行检查" / "执行清单" / "检查清单"
12
+ - **每个工作包完成后自动执行**
13
+ - 提交代码前的最终检查
14
+
15
+ - 功能开发后验证质量
16
+ - Bug 修复后验证修复效果
17
+
18
+ ## Flow
19
+ ```dot
20
+ digraph checklist {
21
+ rankdir=LR;
22
+ node [shape=box]; label="读取 CHECKLIST.md";
23
+
24
+ "读取 CHECKLIST.md" -> "匹配 EXPERIENCE.md";
25
+ "匹配 EXPERIENCE.md" [shape=box];
26
+ "匹配 EXPERIENCE.md" -> "执行检查项";
27
+ "执行检查项" [shape=box];
28
+ "执行检查项" -> "有问题?";
29
+ "有问题?" [shape=diamond];
30
+ "有问题?" -> "查阅经验库" [label="是"];
31
+ "有问题?" -> "生成报告" [label="否"];
32
+ "查阅经验库" [shape=box];
33
+ "查阅经验库" -> "修复问题";
34
+ "修复问题" [shape=box];
35
+ "修复问题" -> "生成报告";
36
+ "生成报告" [shape=box];
37
+ }
38
+ ```
39
+
40
+ ## Checklist Categories
41
+
42
+ ### 1. 代码质量检查
43
+ - [ ] 代码符合 GDScript 规范
44
+ - [ ] 无编译错误/警告
45
+ - [ ] 公共函数有文档注释
46
+ - [ ] 无 ERROR 输出
47
+
48
+ - [ ] 无重复 WARNING
49
+
50
+ - [ ] 临时调试代码已移除
51
+
52
+ ### 2. 测试检查
53
+ - [ ] 测试用例已编写
54
+ - [ ] 测试全部通过
55
+ - [ ] 边界情况已覆盖
56
+ - [ ] 测试文件语法正确
57
+
58
+ ### 3. 文档检查
59
+ - [ ] PROGRESS.md 已更新
60
+ - [ ] task.md 状态已更新
61
+ - [ ] 工作包清单已更新
62
+ - [ ] 新增函数有注释
63
+ - [ ] 复杂逻辑有说明
64
+
65
+ ### 4. Git 检查
66
+ - [ ] git status 确认变更范围
67
+ - [ ] 无误提交文件
68
+ - [ ] 提交信息格式正确
69
+ - [ ] 包含 Co-Authored-By
70
+
71
+ ### 5. 经验记录
72
+ - [ ] 遇到的问题已记录到 EXPERIENCE.md
73
+ - [ ] 解决方案已记录
74
+ - [ ] 可复用的模式已提取
75
+ - [ ] 新发现的坑已添加到 CHECKLIST.md
76
+
77
+ ## Experience Matching Rules
78
+
79
+ 根据工作类型自动匹配相关经验:
80
+
81
+ | 工作类型 | 匹配标签 |
82
+ |----------|----------|
83
+ | 修复脚本错误 | [脚本调试], [API兼容] |
84
+ | 创建/修改场景 | [场景设计], [UI/UX] |
85
+ | 系统重构 | [系统架构], [性能优化] |
86
+ | 添加美术资源 | [美术资源] |
87
+ | 调试运行问题 | [脚本调试], [工具使用] |
88
+
89
+ ## Report Template
90
+ ```markdown
91
+ ## 工作包完成检查报告
92
+
93
+ **工作包**: WP-XXX
94
+ **检查时间**: YYYY-MM-DD HH:mm
95
+
96
+ ### 检查结果
97
+ | 类别 | 通过/总数 | 状态 |
98
+ |------|----------|------|
99
+ | 代码质量 | X/X | ✅/❌ |
100
+ | 测试检查 | X/X | ✅/❌ |
101
+ | 文档检查 | X/X | ✅/❌ |
102
+ | Git 检查 | X/X | ✅/❌ |
103
+ | 经验记录 | X/X | ✅/❌ |
104
+
105
+ ### 未通过项
106
+ - [ ] 检查项 - 原因
107
+
108
+ ### 建议后续操作
109
+ 1. ...
110
+ ```
111
+
112
+ ## Important
113
+ - **每个工作包完成后必须执行此检查清单**
114
+ - 检查未通过时,应修复后再提交
115
+ - 经验记录有助于避免重复踩坑
@@ -0,0 +1,10 @@
1
+ {
2
+ "name": "skill-completion-report",
3
+ "version": "1.0.0",
4
+ "type": "skill",
5
+ "description": "工作包完成报告 Skill - 标准化汇报与询问机制,生成单工作包/批量/简化完成报告,强制文档同步与门控验证",
6
+ "triggers": ["完成报告", "completion-report", "工作包完成", "completion report", "work package complete"],
7
+ "dependencies": ["provider:state-store"],
8
+ "provides": ["skill:completion-report"],
9
+ "config": {}
10
+ }
@@ -0,0 +1,331 @@
1
+ ---
2
+ name: completion-report
3
+ description: Use when completing a work package or batch of tasks - generates standardized completion report and asks for next steps. Triggers after work package execution or when user says "汇报结果".
4
+ ---
5
+
6
+ <HARD-GATE>
7
+ After generating the completion report, you MUST ask "下一步安排是什么?" and wait for user instruction.
8
+ Do NOT assume what the user wants to do next.
9
+ This is not negotiable.
10
+ </HARD-GATE>
11
+
12
+ # Completion Report
13
+
14
+ 工作包/批次完成后的标准化汇报与询问机制。
15
+
16
+ ## When to Use
17
+
18
+ **自动触发场景**:
19
+ - 工作包执行完成后
20
+ - 批量工作包完成后
21
+ - checklist 检查通过后
22
+
23
+ **手动触发词**:
24
+ - "汇报结果" / "完成报告"
25
+ - "执行完毕" / "任务完成"
26
+ - "总结一下" / "汇报"
27
+
28
+ ## Red Flags - STOP
29
+
30
+ | Thought | Reality |
31
+ |---------|---------|
32
+ | "用户应该知道接下来做什么" | 必须明确询问 |
33
+ | "直接开始下一个任务" | 需要用户确认 |
34
+ | "汇报完就结束" | 必须询问下一步 |
35
+ | "结果很好,不用问了" | 任何情况都要问 |
36
+
37
+ ## Flow
38
+
39
+ ```dot
40
+ digraph completion {
41
+ rankdir=TB;
42
+
43
+ "任务完成" [shape=box];
44
+ "收集执行结果" [shape=box];
45
+ "生成标准化报告" [shape=box];
46
+ "同步所有文档状态" [shape=box, style=filled, fillcolor=orange];
47
+ "运行门控验证" [shape=box, style=filled, fillcolor=red];
48
+ "执行 checklist" [shape=box];
49
+ "记录经验" [shape=box];
50
+ "询问下一步" [shape=box, style=filled, fillcolor=yellow];
51
+ "🛑 等待指令" [shape=box, style=filled, fillcolor=red];
52
+
53
+ "任务完成" -> "收集执行结果";
54
+ "收集执行结果" -> "生成标准化报告";
55
+ "生成标准化报告" -> "同步所有文档状态";
56
+ "同步所有文档状态" -> "运行门控验证";
57
+ "运行门控验证" -> "执行 checklist" [label="通过"];
58
+ "运行门控验证" -> "同步所有文档状态" [label="失败,修复"];
59
+ "执行 checklist" -> "记录经验";
60
+ "记录经验" -> "询问下一步";
61
+ "询问下一步" -> "🛑 等待指令";
62
+ }
63
+ ```
64
+
65
+ ## 强制文档同步
66
+
67
+ **关键步骤** - 生成报告后必须同步更新以下文档状态:
68
+
69
+ | 文档 | 用途 | 必须同步 |
70
+ |------|------|----------|
71
+ | `task.md` | 任务清单(主索引) | ✅ |
72
+ | `docs/wp/WP-XXX.md` | 工作包详情 | ⚠️ 如存在 |
73
+
74
+ **同步内容**:
75
+ - 更新工作包状态:`📋 待开始` → `✅ 已完成`
76
+ - 添加完成日期
77
+ - 更新任务列表中的复选框
78
+
79
+ **同步时机**:在生成报告后、执行 checklist 前必须完成
80
+
81
+ ### 状态同步验证 (不可跳过)
82
+
83
+ 同步完成后,必须执行以下验证:
84
+
85
+ ```bash
86
+ # 验证 task.md 状态已更新
87
+ grep "WP-XXX" task.md | grep "✅ 完成"
88
+ ```
89
+
90
+ | 验证结果 | 处理 |
91
+ |----------|------|
92
+ | ✅ 找到 | 继续执行 checklist |
93
+ | ❌ 未找到 | **停止!** 重新执行状态同步 |
94
+
95
+ **这是硬性要求,不可跳过。**
96
+
97
+ ## 代码门控验证(必须)
98
+
99
+ **同步完成后必须运行门控验证**:
100
+
101
+ ```bash
102
+ node .claude/validators/skill-gate.js completion-report WP-XXX
103
+ ```
104
+
105
+ | 结果 | 处理 |
106
+ |------|------|
107
+ | ✅ 通过 | 继续执行 checklist |
108
+ | ❌ 失败 | 必须修复文档状态,重新验证 |
109
+
110
+ **这是硬性要求,不可跳过。**
111
+
112
+ ## Report Types
113
+
114
+ ### 1. 单个工作包完成报告
115
+
116
+ ```markdown
117
+ 帅哥,工作包执行完成!
118
+
119
+ ## 📦 WP-XXX: 工作包名称
120
+
121
+ ### 执行结果
122
+ | 任务ID | 任务名称 | 状态 | 说明 |
123
+ |--------|----------|------|------|
124
+ | XXX-001 | 任务1 | ✅ 完成 | - |
125
+ | XXX-002 | 任务2 | ✅ 完成 | - |
126
+
127
+ ### 创建/修改的文件
128
+ ```
129
+ scripts/xxx.gd # 新增
130
+ scenes/xxx.tscn # 修改
131
+ test/unit/test_xxx.gd # 新增
132
+ ```
133
+
134
+ ### 验收标准完成情况
135
+ - [x] XXX-001-A1: 验收项1
136
+ - [x] XXX-001-A2: 验收项2
137
+ - [x] XXX-002-A1: 验收项1
138
+
139
+ ### 测试结果
140
+ - 单元测试: ✅ 5/5 通过
141
+ - 集成测试: ✅ 3/3 通过
142
+
143
+ ### 检查结果
144
+ | 类别 | 通过/总数 | 状态 |
145
+ |------|----------|------|
146
+ | 代码质量 | 5/5 | ✅ |
147
+ | 测试检查 | 4/4 | ✅ |
148
+ | 文档检查 | 3/3 | ✅ |
149
+ | Git 检查 | 2/2 | ✅ |
150
+
151
+ ### 遇到的问题与解决
152
+ - **问题**: [问题描述]
153
+ - **解决**: [解决方案]
154
+
155
+ ---
156
+ 🔴 **下一步安排是什么?**
157
+ ```
158
+
159
+ ### 2. 批量工作包完成报告
160
+
161
+ ```markdown
162
+ 帅哥,本批次工作包执行完成!
163
+
164
+ ## 📊 执行总览
165
+
166
+ | 工作包 | 状态 | 子任务 | 测试 | 说明 |
167
+ |--------|------|--------|------|------|
168
+ | WP-XXX | ✅ 完成 | 3/3 | 9/9 | - |
169
+ | WP-YYY | ✅ 完成 | 2/2 | 6/6 | - |
170
+ | WP-ZZZ | ❌ 阻塞 | 1/3 | 2/6 | 依赖未满足 |
171
+
172
+ ### 统计
173
+ - **总工作包**: 3 个
174
+ - **完成**: 2 个
175
+ - **阻塞**: 1 个
176
+ - **总耗时**: 约 Xh
177
+ - **测试通过率**: 17/21 (81%)
178
+
179
+ ## ❌ 未完成项
180
+
181
+ ### WP-ZZZ: 工作包名称
182
+ - **阻塞原因**: 依赖 WP-AAA 未完成
183
+ - **需要**: [具体依赖内容]
184
+ - **建议**: 先完成 WP-AAA
185
+
186
+ ## 📁 文件变更汇总
187
+ ```
188
+ 新增文件:
189
+ scripts/aaa.gd
190
+ scripts/bbb.gd
191
+ test/unit/test_aaa.gd
192
+
193
+ 修改文件:
194
+ scenes/main.tscn
195
+ scripts/manager.gd
196
+ ```
197
+
198
+ ## 💡 经验总结
199
+ - [经验1]: 描述
200
+ - [经验2]: 描述
201
+
202
+ ## 📋 下一步建议
203
+
204
+ **优先级排序**:
205
+ 1. 完成 WP-AAA(解除 WP-ZZZ 阻塞)
206
+ 2. 继续执行 WP-ZZZ
207
+ 3. 开始新的工作包 WP-BBB
208
+
209
+ ---
210
+ 🔴 **下一步安排是什么?**
211
+ ```
212
+
213
+ ### 3. 简化完成报告(单任务快速汇报)
214
+
215
+ ```markdown
216
+ 帅哥,任务完成!
217
+
218
+ ## ✅ 完成内容
219
+ - [具体完成的内容1]
220
+ - [具体完成的内容2]
221
+
222
+ ## 📁 变更文件
223
+ - `scripts/xxx.gd` - 修改
224
+ - `test/unit/test_xxx.gd` - 新增
225
+
226
+ ## ✅ 测试状态
227
+ - 全部通过 (X/X)
228
+
229
+ ---
230
+ 🔴 **下一步安排是什么?**
231
+ ```
232
+
233
+ ## Required Elements
234
+
235
+ 每个完成报告必须包含:
236
+
237
+ | 元素 | 说明 | 必需 |
238
+ |------|------|------|
239
+ | 执行结果表 | 任务完成状态 | ✅ |
240
+ | 文件变更 | 创建/修改的文件 | ✅ |
241
+ | 测试状态 | 测试通过情况 | ✅ |
242
+ | 检查结果 | checklist 结果 | ✅ |
243
+ | 文档同步 | PROGRESS.md + task.md | ✅ **必须** |
244
+ | 未完成项 | 阻塞/失败原因 | ⚠️ 如有 |
245
+ | 下一步建议 | 建议的后续操作 | ⚠️ 可选 |
246
+ | 询问下一步 | "下一步安排是什么?" | ✅ 必须 |
247
+
248
+ ## 清理状态验证(批量执行后必须)
249
+
250
+ **如果本次执行使用了 agent-dispatcher(批量执行)**,报告必须包含清理状态:
251
+
252
+ ```markdown
253
+ ## 🧹 清理状态
254
+
255
+ - TeamDelete: ✅ 已执行 / ❌ 未执行
256
+ - 团队名称: {team_name}
257
+ - 清理时间: {cleanup_time}
258
+ ```
259
+
260
+ **如果 TeamDelete 未执行**,报告必须包含警告:
261
+
262
+ ```markdown
263
+ ⚠️ **警告**: TeamDelete 未执行,存在资源泄漏风险!
264
+ 建议手动执行清理命令:"清理团队"
265
+ ```
266
+
267
+ ### 清理验证方法
268
+
269
+ ```bash
270
+ # 验证团队目录已删除
271
+ ls ~/.claude/teams/{team_name}/ 2>/dev/null
272
+ # 应该返回 "No such file or directory"
273
+ ```
274
+
275
+ | 验证结果 | 处理 |
276
+ |----------|------|
277
+ | ✅ 目录不存在 | 清理成功,继续报告 |
278
+ | ❌ 目录存在 | 在报告中标注警告,建议手动清理 |
279
+
280
+ ## Question Templates
281
+
282
+ 必须使用以下询问模板之一:
283
+
284
+ - 🔴 **下一步安排是什么?**
285
+ - 🔴 **请问接下来要做什么?**
286
+ - 🔴 **您希望我继续做什么?**
287
+
288
+ ## Response Handling
289
+
290
+ ### 继续执行类
291
+ - "继续执行 WP-XXX" → 开始执行指定工作包
292
+ - "按你的建议来" → 执行建议的下一步
293
+
294
+ ### 新任务类
295
+ - "创建任务..." → 调用 task-creator
296
+ - "先处理 XXX" → 切换到新任务
297
+
298
+ ### 暂停类
299
+ - "先停一下" / "等等" → 保持等待状态
300
+ - "今天到这里" → 记录进度,结束会话
301
+
302
+ ### 修改类
303
+ - "XXX 需要改一下" → 处理修改意见
304
+
305
+ ## Integration with Other Skills
306
+
307
+ ```dot
308
+ digraph integration {
309
+ rankdir=LR;
310
+
311
+ "工作包完成" [shape=box];
312
+ "completion-report" [shape=box, style=filled, fillcolor=lightblue];
313
+ "checklist" [shape=box];
314
+ "experience-logger" [shape=box];
315
+ "human-checkpoint" [shape=box];
316
+ "用户指令" [shape=box];
317
+
318
+ "工作包完成" -> "completion-report";
319
+ "completion-report" -> "checklist";
320
+ "completion-report" -> "experience-logger";
321
+ "completion-report" -> "human-checkpoint";
322
+ "human-checkpoint" -> "用户指令";
323
+ }
324
+ ```
325
+
326
+ ## Forbidden Actions
327
+
328
+ - ❌ 不要在报告后直接开始新任务
329
+ - ❌ 不要假设用户想要什么
330
+ - ❌ 不要省略询问下一步
331
+ - ❌ 不要忽略未完成项
@@ -0,0 +1,10 @@
1
+ {
2
+ "name": "skill-experience-logger",
3
+ "version": "1.0.0",
4
+ "type": "skill",
5
+ "description": "经验记录与提取 Skill - 分类记录开发经验教训,支持角色专属经验库和双重写入策略",
6
+ "triggers": ["总结经验", "记录经验", "这次学到了", "experience-logger", "log experience", "lessons learned"],
7
+ "dependencies": ["provider:memory-store"],
8
+ "provides": ["skill:experience-logger"],
9
+ "config": {}
10
+ }
@@ -0,0 +1,235 @@
1
+ ---
2
+ name: experience-logger
3
+ description: Use when user says "总结经验", "记录经验", "这次学到了", or after solving a significant problem that should be documented for future reference
4
+ ---
5
+
6
+ # Experience Logger (增强版)
7
+
8
+ 将开发过程中的经验教训分类记录,**支持角色专属经验库**,实现角色进化。
9
+
10
+ ## When to Use
11
+ - 用户说 "总结经验" / "记录经验" / "这次学到了"
12
+ - 解决了一个重要问题后
13
+ - 发现了一个值得记录的坑
14
+ - **每个工作包完成后应该执行**
15
+ - **子代理执行完成后自动调用**
16
+
17
+ ## Flow (增强版)
18
+ ```dot
19
+ digraph exp_logger {
20
+ rankdir=TB;
21
+
22
+ "回顾对话上下文" [shape=box];
23
+ "识别问题和解决方案" [shape=box];
24
+ "选择分类标签" [shape=box];
25
+ "匹配相关角色" [shape=box, style=filled, fillcolor=lightblue];
26
+ "格式化经验记录" [shape=box];
27
+ "写入角色专属库" [shape=box, style=filled, fillcolor=lightblue];
28
+ "同步到 EXPERIENCE.md" [shape=box];
29
+ "更新角色统计" [shape=box];
30
+ "确认完成" [shape=box];
31
+
32
+ "回顾对话上下文" -> "识别问题和解决方案";
33
+ "识别问题和解决方案" -> "选择分类标签";
34
+ "选择分类标签" -> "匹配相关角色";
35
+ "匹配相关角色" -> "格式化经验记录";
36
+ "格式化经验记录" -> "写入角色专属库";
37
+ "写入角色专属库" -> "同步到 EXPERIENCE.md";
38
+ "同步到 EXPERIENCE.md" -> "更新角色统计";
39
+ "更新角色统计" -> "确认完成";
40
+ }
41
+ ```
42
+
43
+ ---
44
+
45
+ ## 角色进化机制
46
+
47
+ ### 标签到角色映射
48
+
49
+ #### 核心角色映射(通用框架)
50
+
51
+ | 标签 | 关联角色 |
52
+ |------|----------|
53
+ | `[架构设计]` | `architect` |
54
+ | `[系统设计]` | `architect` |
55
+ | `[模块划分]` | `architect` |
56
+ | `[代码实现]` | `implementer` |
57
+ | `[功能开发]` | `implementer` |
58
+ | `[Bug修复]` | `implementer` |
59
+ | `[重构]` | `implementer` |
60
+ | `[调试]` | `implementer` |
61
+ | `[测试验证]` | `tester` |
62
+ | `[单元测试]` | `tester` |
63
+ | `[集成测试]` | `tester` |
64
+ | `[测试框架]` | `tester` |
65
+ | `[文档编写]` | `documenter` |
66
+ | `[API文档]` | `documenter` |
67
+ | `[用户指南]` | `documenter` |
68
+ | `[性能优化]` | `architect`, `implementer` |
69
+ | `[项目管理]` | `coordinator` |
70
+
71
+ #### 领域角色映射(由项目模板扩展)
72
+
73
+ | 标签 | 关联角色 |
74
+ |------|----------|
75
+ | `[UI/UX]` | `frontend-dev` (web模板) |
76
+ | `[前端开发]` | `frontend-dev` (web模板) |
77
+ | `[API设计]` | `backend-dev` (web模板) |
78
+ | `[数据库]` | `backend-dev` (web模板) |
79
+ | `[部署]` | `devops` (devops模板) |
80
+ | `[CI/CD]` | `devops` (devops模板) |
81
+ | `[场景设计]` | `godot-scene-expert` (godot模板) |
82
+ | `[脚本调试]` | `godot-script-expert` (godot模板) |
83
+
84
+ ### 双重写入策略
85
+
86
+ 1. **写入角色专属库** (`.claude/agents/memories/{role_id}.md`)
87
+ - 精准匹配角色
88
+ - 作为子代理记忆注入源
89
+
90
+ 2. **同步到 EXPERIENCE.md**
91
+ - 全局知识库
92
+ - 作为回退经验源
93
+
94
+ ---
95
+
96
+ ## Tags Reference
97
+
98
+ ### 分类标签
99
+
100
+ | 标签 | 适用场景 | 关联角色 |
101
+ |------|----------|----------|
102
+ | `[脚本调试]` | GDScript 语法、逻辑错误、运行时问题 | godot-script-expert |
103
+ | `[场景设计]` | 节点组织、场景结构、预制体设计 | godot-scene-expert |
104
+ | `[系统架构]` | 模块划分、设计模式、代码组织 | combat-ai-expert |
105
+ | `[UI/UX]` | 用户界面、交互设计、反馈系统 | godot-scene-expert |
106
+ | `[美术资源]` | 精灵、动画、材质、音效 | effect-expert |
107
+ | `[性能优化]` | 帧率、内存、加载时间 | godot-script-expert |
108
+ | `[API兼容]` | Godot 版本差异、API 变更 | godot-script-expert |
109
+ | `[工具使用]` | MCP 工具、编辑器技巧、命令行 | test-reviewer |
110
+ | `[项目管理]` | Git、版本控制、工作流程 | test-reviewer |
111
+
112
+ ---
113
+
114
+ ## Execution Instructions
115
+
116
+ ### 1. 识别经验
117
+
118
+ 从对话上下文中提取:
119
+ - 遇到的主要问题是什么?
120
+ - 错误信息是什么?(如有)
121
+ - 解决方案是什么?
122
+ - 是否有可复用的价值?
123
+
124
+ ### 2. 选择标签
125
+
126
+ 根据问题类型选择合适的分类标签。
127
+
128
+ ### 3. 匹配角色
129
+
130
+ 根据标签查找关联的角色(参考上方映射表)。
131
+
132
+ ### 4. 格式化记录
133
+
134
+ ```markdown
135
+ ### [标签名称] 经验标题
136
+
137
+ **错误信息**: (如有)
138
+ ```
139
+ 错误内容
140
+ ```
141
+
142
+ **问题描述**: 简要描述问题
143
+
144
+ **解决方案**: 具体的解决方案(含代码示例)
145
+
146
+ **适用场景**: (可选) 在什么情况下适用
147
+
148
+ **来源工作包**: WP-XXX
149
+ **记录日期**: YYYY-MM-DD
150
+ ```
151
+
152
+ ### 5. 写入角色专属库
153
+
154
+ 路径:`.claude/agents/memories/{role_id}.md`
155
+
156
+ 追加到 `## 经验列表` 部分的末尾。
157
+
158
+ ### 6. 同步到 EXPERIENCE.md
159
+
160
+ 路径: `docs/EXPERIENCE.md`
161
+
162
+ 追加到对应标签分类下,并更新经验索引表。
163
+
164
+ ### 7. 更新角色统计
165
+
166
+ 更新角色专属库头部的统计信息:
167
+ ```markdown
168
+ ## 统计
169
+ - 总经验数: X
170
+ - 最后更新: YYYY-MM-DD
171
+ - 累计执行任务: X 次
172
+ ```
173
+
174
+ ---
175
+
176
+ ## Experience Format Template
177
+
178
+ ```markdown
179
+ ### [标签名称] 经验标题
180
+
181
+ **错误信息**:
182
+ ```
183
+ 原始错误信息
184
+ ```
185
+
186
+ **问题描述**: 简要描述问题
187
+
188
+ **原因分析**: (可选) 深入分析原因
189
+
190
+ **解决方案**:
191
+ ```gdscript
192
+ # 代码示例
193
+ ```
194
+
195
+ **适用场景**:
196
+ - 场景1
197
+ - 场景2
198
+
199
+ **来源工作包**: WP-XXX
200
+ **记录日期**: YYYY-MM-DD
201
+ ```
202
+
203
+ ---
204
+
205
+ ## 自动经验提取规则
206
+
207
+ | 触发条件 | 动作 | 标签 |
208
+ |----------|------|------|
209
+ | 报告包含 "错误信息/Error:" | 自动提取 | [脚本调试] |
210
+ | 报告包含 "解决方案/修复方法" | 自动提取 | 对应标签 |
211
+ | 任务部分完成/失败 | 强制记录失败原因 | 对应标签 |
212
+ | 涉及场景/节点操作 | 自动关联 | [场景设计] |
213
+ | 涉及 API 版本差异 | 自动关联 | [API兼容] |
214
+
215
+ ---
216
+
217
+ ## Important
218
+
219
+ - **只记录有价值的经验**,避免泛泛而谈
220
+ - **使用正确的标签分类**,便于后续检索
221
+ - **必须写入角色专属库**,实现角色进化
222
+ - **同步到 EXPERIENCE.md**,保持全局知识库
223
+ - **每条经验控制在可快速阅读的长度**
224
+ - **及时记录**,问题解决后立即记录
225
+ - **定期整理**,相似经验合并,过时经验更新
226
+
227
+ ---
228
+
229
+ ## 角色进化收益
230
+
231
+ | 角色使用次数 | 能力提升 |
232
+ |--------------|----------|
233
+ | 1-5 次 | 基础能力 |
234
+ | 6-15 次 | 积累专属经验,减少踩坑 |
235
+ | 16+ 次 | 领域专家,快速解决同类问题 |
@@ -0,0 +1,10 @@
1
+ {
2
+ "name": "skill-human-checkpoint",
3
+ "version": "1.0.0",
4
+ "type": "skill",
5
+ "description": "工作流关键节点人介入审核机制 - 强制暂停等待用户确认,防止自动跳过重要决策点",
6
+ "triggers": ["等待审核", "暂停确认", "人介入", "需要确认", "checkpoint", "暂停", "wait for review", "pause for confirmation", "need confirmation"],
7
+ "dependencies": [],
8
+ "provides": ["skill:human-checkpoint"],
9
+ "config": {}
10
+ }