harveyz-skill 0.1.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.
@@ -0,0 +1,145 @@
1
+ # Task 工单标准
2
+
3
+ > 参考:`methodology/multiagent-task/SPEC.md`
4
+
5
+ ## 目录结构
6
+
7
+ 每个任务创建独立文件夹,文件夹以任务号命名:
8
+
9
+ ```
10
+ tasks/
11
+ └── <id>/
12
+ └── task.md
13
+ ```
14
+
15
+ 示例:`tasks/T001/task.md`
16
+
17
+ id 全局唯一,全局递增。
18
+
19
+ ---
20
+
21
+ ## Frontmatter 字段
22
+
23
+ | 字段 | 格式 | 必填 | 说明 |
24
+ |------|------|------|------|
25
+ | `id` | `T001` | ✅ | 全局唯一编号 |
26
+ | `project` | 项目名 | ✅ | 对应 projects 下的项目 |
27
+ | `assignee` | `openclaw/<agent>` 或 `<外部AI>` | ✅ | 派发目标 |
28
+ | `assigner` | `openclaw/<agent>` | ✅ | 派发者 |
29
+ | `priority` | low / medium / high / xhigh | ✅ | |
30
+ | `status` | open / done | ✅ | |
31
+
32
+ ### assignee 格式规范
33
+
34
+ - **OpenClaw 内部 Agent**:`openclaw/<agent>`,如 `openclaw/coding-master`、`openclaw/writing-assistant`
35
+ - **外部 AI 工具**:直接写工具名,如 `claude`、`cursor`
36
+
37
+ ### assigner 格式规范
38
+
39
+ - 仅限 OpenClaw 内部 Agent:`openclaw/<agent>`
40
+
41
+ ### status 流转
42
+
43
+ ```
44
+ open → done
45
+ ```
46
+
47
+ ---
48
+
49
+ ## 正文章节
50
+
51
+ ### 主要目标(必填)
52
+
53
+ agent 要完成的核心目标。
54
+
55
+ ### 关键约束(必填)
56
+
57
+ agent 必须遵守的约束条件。
58
+
59
+ ### 工作流(可选)
60
+
61
+ agent 可参考的工作流步骤。
62
+
63
+ ### 使用工具(可选)
64
+
65
+ agent 可以使用的工具列表。
66
+
67
+ ### 评估标准(可选)
68
+
69
+ 评估任务完成质量的标准,格式为 `[ ] 子项`。
70
+
71
+ ### 资料管理(可选)
72
+
73
+ 相关的文档或资料路径。
74
+
75
+ ---
76
+
77
+ ## 完整示例
78
+
79
+ ```yaml
80
+ ---
81
+ id: T003
82
+ project: openclaw-voice-commands
83
+ assignee: openclaw/research-scientist
84
+ assigner: openclaw/product-manager
85
+ priority: high
86
+ status: open
87
+ ---
88
+
89
+ ## 主要目标
90
+
91
+ 研究将 Discord 语音频道音频实时转换为 OpenClaw 可执行命令的完整方案,**仅评估本地 STT 方案**。
92
+
93
+ ## 关键约束
94
+
95
+ 1. 不考虑云原生 STT(Deepgram、OpenAI Whisper API 等)
96
+ 2. 仅评估本地转录模型
97
+ 3. 延迟目标 < 3s(端到端)
98
+
99
+ ## 工作流
100
+
101
+ 1. 语音采集方案调研(Discord Bot / API / Webhook)
102
+ 2. 本地 STT 模型选型对比(faster-whisper / whisper.cpp)
103
+ 3. 实时流式处理可行性分析
104
+ 4. 量化版本性能评估(INT8 / INT4)
105
+ 5. 技术架构设计
106
+ 6. 风险与可行性评估
107
+
108
+ ## 使用工具
109
+
110
+ - web_search / web_fetch
111
+ - 本地 faster-whisper 测试
112
+ - OpenClaw sessions_send
113
+
114
+ ## 评估标准
115
+
116
+ - [ ] 提供至少 2 种可对比的技术方案
117
+ - [ ] 每种方案包含完整链路(采集→识别→理解→执行)
118
+ - [ ] 给出明确推荐结论
119
+ - [ ] 量化延迟和资源消耗
120
+
121
+ ## 资料管理
122
+
123
+ - 任务目录:`~/Projects/project-management/tasks/T003/`
124
+ - 项目目录:`~/Projects/project-management/projects/openclaw-voice-commands/`
125
+ - 灵感记录:`memory/2026-04-04.md`
126
+ ```
127
+
128
+ ---
129
+
130
+ ## 与 Issue 的区别
131
+
132
+ | 维度 | Task 工单 | Issue |
133
+ |------|-----------|-------|
134
+ | 位置 | `tasks/` | `projects/{project}/issues/` |
135
+ | 用途 | 任务派发与执行追踪 | 项目问题追踪 |
136
+ | 派发 | PM → Agent | 任意创建 |
137
+ | 状态 | open → in_progress → done | open → closed |
138
+
139
+ ---
140
+
141
+ ## Task vs Issue vs Learn
142
+
143
+ - **Task**:PM 派发给其他 Agent 的任务工单
144
+ - **Issue**:项目中需要追踪的问题(bug/需求/里程碑)
145
+ - **Learn**:需要深入学习的独立主题
@@ -0,0 +1,148 @@
1
+ ---
2
+ name: task-close
3
+ description: 任务收尾技能。当 Agent 完成接受的任务后自触发,执行任务验收、总结、文档归档和问题记录。触发条件:Agent 已实际完成任务,需要进行收尾工作时使用。
4
+ ---
5
+
6
+ # Task Acceptance - 任务收尾技能
7
+
8
+ 当 Agent 完成接受的任务后,自执行收尾流程。
9
+
10
+ ## 路径约定
11
+
12
+ ```
13
+ 任务文件夹: ~/Projects/project-management/tasks/<id>/
14
+ 任务文件: ~/Projects/project-management/tasks/<id>/task.md (PM 写,Agent 只更新 frontmatter)
15
+ 完成报告: ~/Projects/project-management/tasks/<id>/completion-report.md (Agent 写)
16
+ 问题记录: ~/Projects/project-management/tasks/<id>/lessons-learned.md (Agent 写,可选)
17
+ ```
18
+
19
+ ## 触发条件
20
+
21
+ Agent 已实际完成任务,满足以下任一条件:
22
+ - 任务所有子项已完成
23
+ - 主要目标已实现
24
+ - 接收到 Harvey 或 PM 的收尾指令
25
+
26
+ ## 工作流
27
+
28
+ ```
29
+ 1. 任务验收 → 2. 任务总结 → 3. 文档归档 → 4. 问题记录 → 5. 发送完成通知
30
+ ```
31
+
32
+ ---
33
+
34
+ ## Step 1:任务验收
35
+
36
+ **核心原则:必须实际执行并验证,不能仅凭印象判断。**
37
+
38
+ ### 读取任务文件
39
+
40
+ 读取任务文件(`~/Projects/project-management/tasks/<id>/task.md`)。
41
+
42
+ **文件不存在时:** 停止收尾流程,向 Harvey 或 PM 报告:
43
+ ```
44
+ 任务文件 tasks/<id>/task.md 不存在,无法执行收尾。
45
+ 请确认任务编号是否正确,或由 PM 补充任务文件后重试。
46
+ ```
47
+
48
+ ### 生成评估标准(如任务文件无评估标准章节)
49
+
50
+ Agent 根据任务主要目标,设计合理的评估标准:
51
+
52
+ ```markdown
53
+ ## 评估标准
54
+
55
+ - [ ] <评估项1> - 对应主要目标的第1个子目标
56
+ - [ ] <评估项2> - 对应主要目标的第2个子目标
57
+ - [ ] <评估项3> - 关键约束的满足情况
58
+ ```
59
+
60
+ 设计原则:
61
+ - 每个主要目标对应至少 1 个评估项
62
+ - 每个关键约束对应至少 1 个评估项
63
+ - 评估项可验证、可判定通过/不通过
64
+
65
+ ### 逐一验证
66
+
67
+ - `[ ]` 子项 → 标记为 `[x]` 并说明验证方法和结果
68
+ - 无法验证的子项 → 评估:1. 是否合理(验证方法本身是否正确)2. 是否代表任务失败(未验证 ≠ 未完成,如因外部依赖缺失则不算失败)
69
+
70
+ ### 输出验收报告
71
+
72
+ 创建 `completion-report.md`,写入验收报告(详见 [output-templates.md](references/output-templates.md))。
73
+
74
+ ---
75
+
76
+ ## Step 2:任务总结
77
+
78
+ 在 `completion-report.md` 中追加任务总结章节(详见 [output-templates.md](references/output-templates.md))。
79
+
80
+ 更新 `task.md` frontmatter(仅此两个字段,其他内容不动):
81
+
82
+ ```yaml
83
+ ---
84
+ status: done
85
+ completed: YYYY-MM-DD
86
+ ---
87
+ ```
88
+
89
+ ---
90
+
91
+ ## Step 3:文档归档
92
+
93
+ ### 评估标准
94
+
95
+ 文档满足以下任一条件时,必须归档:
96
+ - 是任务产出的核心交付物
97
+ - 对后续工作有参考价值
98
+ - 包含关键决策或配置
99
+
100
+ ### 归档流程
101
+
102
+ 1. 扫描任务过程中产生的文档
103
+ 2. 评估每份文档的价值
104
+ 3. 必要文档保存到任务文件夹(`tasks/<id>/`)
105
+ 4. 在 `completion-report.md` 中更新 Reference 章节(总索引表,包含所有任务相关文档)
106
+
107
+ ---
108
+
109
+ ## Step 4:问题记录
110
+
111
+ 判断是否有内容可记录(遇到问题、做了关键决策、有经验教训):
112
+
113
+ - **有内容** → 创建 `~/Projects/project-management/tasks/<id>/lessons-learned.md`,记录实际有价值的内容,跳过空表格(详见 [output-templates.md](references/output-templates.md))。路径同步更新到 `completion-report.md` Reference 章节。
114
+ - **没有内容** → 跳过,不创建文件。
115
+
116
+ ---
117
+
118
+ ## Step 5:发送完成通知
119
+
120
+ 收尾全部完成后,在 Agent 自己绑定的 Discord channel 发送任务完成消息:
121
+
122
+ ```
123
+ 任务 <id> 已完成。
124
+ 任务文件:tasks/<id>/task.md
125
+ ```
126
+
127
+ ---
128
+
129
+ ## 输出清单
130
+
131
+ 完成收尾后,任务文件夹应包含:
132
+
133
+ | 文件 | 内容 | 必须 |
134
+ |------|------|------|
135
+ | `task.md` | frontmatter 更新为 `status: done`、`completed: YYYY-MM-DD` | ✅ |
136
+ | `completion-report.md` | 验收报告 + 任务总结 + Reference 章节 | ✅ |
137
+ | `lessons-learned.md` | 问题记录(有内容才创建) | 可选 |
138
+
139
+ ---
140
+
141
+ ## 注意事项
142
+
143
+ 1. **验收必须实际执行**——禁止仅凭印象打勾,必须说明验证方法
144
+ 2. **无评估标准时自行设计**——基于主要目标和关键约束设计可验证的评估项
145
+ 3. **任务文件不存在时自创建**——根据接受的任务信息补全主要结构
146
+ 4. **无法验证≠任务失败**——因外部依赖缺失导致无法验证的子项,如验证方法本身合理,则不算任务失败
147
+ 5. **如实记录**——问题就是问题,不要美化,经验就是经验,不要夸张
148
+ 6. **文档路径要准确**——方便后续快速定位
@@ -0,0 +1,76 @@
1
+ # Output Templates
2
+
3
+ > 任务收尾技能 output 模板参考
4
+
5
+ ---
6
+
7
+ ## completion-report.md 模板
8
+
9
+ ```markdown
10
+ ---
11
+ task_id: <id>
12
+ completed: YYYY-MM-DD
13
+ ---
14
+
15
+ ## 验收报告
16
+
17
+ - [x] <验收项1> - 验证方法:<具体执行了什么>
18
+ - [x] <验收项2> - 验证方法:<具体执行了什么>
19
+ - [ ] <验收项3> - 未通过原因:<如实记录>
20
+
21
+ ## 任务总结
22
+
23
+ ### 实现方案
24
+
25
+ <简要描述采用了什么方案、技术路径、关键实现点>
26
+
27
+ ### 执行结果
28
+
29
+ <描述实际完成情况,与目标的对比>
30
+
31
+ ### 产出清单
32
+
33
+ - <产出物1>:<路径或说明>
34
+ - <产出物2>:<路径或说明>
35
+
36
+ ## Reference
37
+
38
+ | 文档 | 功能 | 路径 |
39
+ |------|------|------|
40
+ | <文档名> | <描述文档用途> | <相对路径或绝对路径> |
41
+ ```
42
+
43
+ ---
44
+
45
+ ## lessons-learned.md 模板
46
+
47
+ 只记录实际存在的内容,没有的章节直接省略。
48
+
49
+ ```markdown
50
+ # <任务ID> 复盘
51
+
52
+ ## 问题与对策
53
+
54
+ | 问题 | 对策 | 结果 |
55
+ |------|------|------|
56
+ | <问题描述> | <采用的解决方案> | <效果如何> |
57
+
58
+ ## 关键决策
59
+
60
+ | 决策 | 背景 | 选择 | 理由 |
61
+ |------|------|------|------|
62
+ | <决策内容> | <当时情况> | <选择了什么方案> | <为什么这样选> |
63
+
64
+ ## 经验教训
65
+
66
+ <自由文本,记录下次可以改进的点>
67
+ ```
68
+
69
+ ---
70
+
71
+ ## task.md frontmatter 更新(收尾时只改这两个字段)
72
+
73
+ ```yaml
74
+ status: done
75
+ completed: YYYY-MM-DD
76
+ ```