@house365/comate 0.1.0 → 0.1.1

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.
@@ -1,115 +1,115 @@
1
- ---
2
- name: comate-hotfix
3
- description: "comate 预设路径:Bug fix / 热修复。跳过 brainstorming,直接 open → build → verify → archive。适用于行为修复、不涉及新 capability 设计的场景。"
4
- ---
5
-
6
- # comate 预设路径:Hotfix
7
-
8
- 快速 bug fix 工作流:open → build → verify → archive。跳过 brainstorming 和完整 plan。
9
-
10
- **适用条件**(必须全部满足):
11
- 1. 修复已有功能 bug,不新增 capability
12
- 2. 不涉及接口变更或架构调整
13
- 3. 改动范围可预估(通常 ≤ 2 文件)
14
-
15
- **不适用**:修复过程发现需架构调整时,升级为完整 `/comate`。
16
-
17
- ---
18
-
19
- ## 流程(5 阶段)
20
-
21
- 执行链路:open → build → verify → archive。先定位脚本:
22
-
23
- ```bash
24
- COMATE="${COMATE:-$(for r in . ./.claude/skills "$HOME"/.claude/skills "$HOME"/.config/skills "$HOME"/.cursor/skills; do
25
- [ -d "$r" ] && find "$r" -maxdepth 6 -path '*/comate/scripts/comate.sh' -type f -print -quit 2>/dev/null
26
- done | head -1)}"
27
- if [ -z "$COMATE" ]; then
28
- echo "ERROR: comate.sh 未找到,请确认 comate skill 已安装。" >&2
29
- return 1 2>/dev/null || exit 1
30
- fi
31
- ```
32
-
33
- ### 1. 快速开启(preset open)
34
-
35
- 复用 open 能力但用 hotfix 默认值:不执行 `openspec-explore` 长探索,直接精简创建。
36
-
37
- **立即执行:** 使用 Skill 工具加载 `openspec-new-change`。按其指引创建精简产物:proposal.md(问题 + 根因 + 修复目标)、design.md(1 个修复方案)、tasks.md(修复任务)。**无需 delta spec**(除非修复改变已有 spec 验收场景)。
38
-
39
- ```bash
40
- bash "$COMATE" state <name> init hotfix
41
- bash "$COMATE" state <name> check open
42
- bash "$COMATE" guard <name> open --apply
43
- ```
44
-
45
- ### 2. 直接构建(preset build)
46
-
47
- 用 hotfix 默认值 `build_mode: direct`。跳过 `superpowers:brainstorming` 和 `superpowers:writing-plans`(除非任务 > 3,则转入 `/comate-build` 的计划与执行方式选择)。
48
-
49
- 继续或开始修改前,按 `comate/reference/dirty-worktree.md` 处理未提交改动。归因后若发现超出 hotfix,按「升级条件」处理。
50
-
51
- **立即执行:** 按 tasks.md 逐个执行:读未完成任务 → 改代码 → 运行格式化命令 → 运行测试 → 勾选 `- [x]` → 提交(`fix: <简述>`)。全部完成后显式运行测试和构建命令。
52
-
53
- 修复影响已有 spec 验收场景时,在 `specs/<capability>/spec.md` 创建仅含 `## MODIFIED Requirements` 的 delta spec。
54
-
55
- ### 3. 根因消除检查
56
-
57
- **在运行 build guard 之前**:读 proposal.md 的 bug 与根因,搜索验证问题代码不再存在。根因未消除则回 Step 2 继续(仍在 build,无需状态回退)。
58
-
59
- 升级条件命中(深层架构问题 / 需额外接口变更)→ 停止 hotfix,按升级条件阻塞确认。
60
-
61
- 根因确认消除后,生成 build 交接包并流转:
62
-
63
- ```bash
64
- bash "$COMATE" handoff <name> build --write
65
- bash "$COMATE" guard <name> build --apply
66
- ```
67
-
68
- ### 4. 验证(preset verify)
69
-
70
- **立即执行:** 使用 Skill 工具加载 `comate-verify`。由其规模评估决定轻量或完整验证。无 delta spec 的小 hotfix 通常走轻量验证。验证通过后按其规则记录 `verify_result: pass`。
71
-
72
- ### 5. 归档(preset archive)
73
-
74
- **立即执行:** 使用 Skill 工具加载 `comate-archive`。归档前必须 `verify_result: pass`。有 delta spec 则同步到 main spec。
75
-
76
- ---
77
-
78
- ## 连续执行模式
79
-
80
- <IMPORTANT>
81
- Hotfix 为**一次性连续执行**。调用后在自有步骤间自动推进,但以下必须暂停(决策点见 `comate/reference/decision-points.md`):
82
- 1. 命中升级条件(决策点 6)→ AskUserQuestion 确认升级
83
- 2. 任务 > 3 转入 `/comate-build` 时的隔离和执行方式选择(决策点 3)
84
- 3. comate-verify 的验证失败决策(决策点 4)和分支处理决策(决策点 5)
85
-
86
- 执行顺序:快速开启 → 直接构建 → 根因消除检查 → 验证 → 归档 → 完成。
87
- </IMPORTANT>
88
-
89
- ---
90
-
91
- ## 升级条件(决策阻塞点 6)
92
-
93
- 满足**任一**即停止 hotfix 升级为完整 `/comate`:
94
-
95
- | 条件 | 说明 |
96
- |------|------|
97
- | 改动 **3+ 文件** | 超出单点修复 |
98
- | 架构变更 | 新模块、新接口、新依赖 |
99
- | 数据库 schema 变更 | 结构性调整 |
100
- | 引入新 public API | 修复产生新对外接口 |
101
- | 范围超出单一函数/模块 | 需多处协调 |
102
-
103
- **必须使用 AskUserQuestion 工具暂停确认升级**。不得直接进 `/comate-design`,不得自动补 Design Doc。用户确认后**先更新 workflow**:
104
-
105
- ```bash
106
- bash "$COMATE" state <name> set workflow full
107
- ```
108
-
109
- 然后**立即加载 `comate-design` skill** 补 Design Doc,走完整流程。用户不确认则停止 hotfix 并报告超出适用范围。
110
-
111
- ## 退出条件
112
-
113
- - Bug 已修复,测试通过,change 已归档
114
- - 如有 spec 变更已同步到 main spec
115
- - **阶段守卫**:build → verify 前 `bash "$COMATE" guard <name> build --apply`,verify → archive 按 `/comate-verify` 规则运行
1
+ ---
2
+ name: comate-hotfix
3
+ description: "comate 预设路径:Bug fix / 热修复。跳过 brainstorming,直接 open → build → verify → archive。适用于行为修复、不涉及新 capability 设计的场景。"
4
+ ---
5
+
6
+ # comate 预设路径:Hotfix
7
+
8
+ 快速 bug fix 工作流:open → build → verify → archive。跳过 brainstorming 和完整 plan。
9
+
10
+ **适用条件**(必须全部满足):
11
+ 1. 修复已有功能 bug,不新增 capability
12
+ 2. 不涉及接口变更或架构调整
13
+ 3. 改动范围可预估(通常 ≤ 2 文件)
14
+
15
+ **不适用**:修复过程发现需架构调整时,升级为完整 `/comate`。
16
+
17
+ ---
18
+
19
+ ## 流程(5 阶段)
20
+
21
+ 执行链路:open → build → verify → archive。先定位脚本:
22
+
23
+ ```bash
24
+ COMATE="${COMATE:-$(for r in . ./.claude/skills "$HOME"/.claude/skills "$HOME"/.config/skills "$HOME"/.cursor/skills; do
25
+ [ -d "$r" ] && find "$r" -maxdepth 6 -path '*/comate/scripts/comate.sh' -type f -print -quit 2>/dev/null
26
+ done | head -1)}"
27
+ if [ -z "$COMATE" ]; then
28
+ echo "ERROR: comate.sh 未找到,请确认 comate skill 已安装。" >&2
29
+ return 1 2>/dev/null || exit 1
30
+ fi
31
+ ```
32
+
33
+ ### 1. 快速开启(preset open)
34
+
35
+ 复用 open 能力但用 hotfix 默认值:不执行 `openspec-explore` 长探索,直接精简创建。
36
+
37
+ **立即执行:** 使用 Skill 工具加载 `openspec-new-change`。按其指引创建精简产物:proposal.md(问题 + 根因 + 修复目标)、design.md(1 个修复方案)、tasks.md(修复任务)。**无需 delta spec**(除非修复改变已有 spec 验收场景)。
38
+
39
+ ```bash
40
+ bash "$COMATE" state <name> init hotfix
41
+ bash "$COMATE" state <name> check open
42
+ bash "$COMATE" guard <name> open --apply
43
+ ```
44
+
45
+ ### 2. 直接构建(preset build)
46
+
47
+ 用 hotfix 默认值 `build_mode: direct`。跳过 `superpowers:brainstorming` 和 `superpowers:writing-plans`(除非任务 > 3,则转入 `/comate-build` 的计划与执行方式选择)。
48
+
49
+ 继续或开始修改前,按 `comate/reference/dirty-worktree.md` 处理未提交改动。归因后若发现超出 hotfix,按「升级条件」处理。
50
+
51
+ **立即执行:** 按 tasks.md 逐个执行:读未完成任务 → 改代码 → 运行格式化命令 → 运行测试 → 勾选 `- [x]` → 提交(`fix: <简述>`)。全部完成后显式运行测试和构建命令。
52
+
53
+ 修复影响已有 spec 验收场景时,在 `specs/<capability>/spec.md` 创建仅含 `## MODIFIED Requirements` 的 delta spec。
54
+
55
+ ### 3. 根因消除检查
56
+
57
+ **在运行 build guard 之前**:读 proposal.md 的 bug 与根因,搜索验证问题代码不再存在。根因未消除则回 Step 2 继续(仍在 build,无需状态回退)。
58
+
59
+ 升级条件命中(深层架构问题 / 需额外接口变更)→ 停止 hotfix,按升级条件阻塞确认。
60
+
61
+ 根因确认消除后,生成 build 交接包并流转:
62
+
63
+ ```bash
64
+ bash "$COMATE" handoff <name> build --write
65
+ bash "$COMATE" guard <name> build --apply
66
+ ```
67
+
68
+ ### 4. 验证(preset verify)
69
+
70
+ **立即执行:** 使用 Skill 工具加载 `comate-verify`。由其规模评估决定轻量或完整验证。无 delta spec 的小 hotfix 通常走轻量验证。验证通过后按其规则记录 `verify_result: pass`。
71
+
72
+ ### 5. 归档(preset archive)
73
+
74
+ **立即执行:** 使用 Skill 工具加载 `comate-archive`。归档前必须 `verify_result: pass`。有 delta spec 则同步到 main spec。
75
+
76
+ ---
77
+
78
+ ## 连续执行模式
79
+
80
+ <IMPORTANT>
81
+ Hotfix 为**一次性连续执行**。调用后在自有步骤间自动推进,但以下必须暂停(决策点见 `comate/reference/decision-points.md`):
82
+ 1. 命中升级条件(决策点 6)→ AskUserQuestion 确认升级
83
+ 2. 任务 > 3 转入 `/comate-build` 时的隔离和执行方式选择(决策点 3)
84
+ 3. comate-verify 的验证失败决策(决策点 4)和分支处理决策(决策点 5)
85
+
86
+ 执行顺序:快速开启 → 直接构建 → 根因消除检查 → 验证 → 归档 → 完成。
87
+ </IMPORTANT>
88
+
89
+ ---
90
+
91
+ ## 升级条件(决策阻塞点 6)
92
+
93
+ 满足**任一**即停止 hotfix 升级为完整 `/comate`:
94
+
95
+ | 条件 | 说明 |
96
+ |------|------|
97
+ | 改动 **3+ 文件** | 超出单点修复 |
98
+ | 架构变更 | 新模块、新接口、新依赖 |
99
+ | 数据库 schema 变更 | 结构性调整 |
100
+ | 引入新 public API | 修复产生新对外接口 |
101
+ | 范围超出单一函数/模块 | 需多处协调 |
102
+
103
+ **必须使用 AskUserQuestion 工具暂停确认升级**。不得直接进 `/comate-design`,不得自动补 Design Doc。用户确认后**先更新 workflow**:
104
+
105
+ ```bash
106
+ bash "$COMATE" state <name> set workflow full
107
+ ```
108
+
109
+ 然后**立即加载 `comate-design` skill** 补 Design Doc,走完整流程。用户不确认则停止 hotfix 并报告超出适用范围。
110
+
111
+ ## 退出条件
112
+
113
+ - Bug 已修复,测试通过,change 已归档
114
+ - 如有 spec 变更已同步到 main spec
115
+ - **阶段守卫**:build → verify 前 `bash "$COMATE" guard <name> build --apply`,verify → archive 按 `/comate-verify` 规则运行
@@ -1,109 +1,109 @@
1
- ---
2
- name: comate-open
3
- description: "comate 阶段 1:开题。用 /comate-open 调用。通过 OpenSpec 探索想法、创建 change 结构(proposal + design + tasks)并初始化 .comate.yaml。"
4
- ---
5
-
6
- # comate 阶段 1:开题(Open)
7
-
8
- ## 前置条件
9
-
10
- - 无活跃 change,或用户希望创建新 change
11
-
12
- ## 步骤
13
-
14
- ### 1. 探索想法
15
-
16
- **立即执行:** 使用 Skill 工具加载 `openspec-explore` 技能。禁止跳过。加载后按其指引自由探索问题空间。
17
-
18
- ### 2. 创建 Change 结构 + 初始化状态
19
-
20
- **立即执行:** 使用 Skill 工具加载 `openspec-new-change` 技能。若用户意图未明确、需先形成建议,改为加载 `openspec-propose`。禁止跳过。
21
-
22
- **命名与范围守卫**:change name 必须用用户指定或经 AskUserQuestion 确认的名称,不得自动生成或推断。变更范围必须与用户描述一致,不得自行扩大或缩小。
23
-
24
- 确认产物已创建:
25
-
26
- ```
27
- openspec/changes/<name>/
28
- ├── .openspec.yaml
29
- ├── proposal.md # Why + What:问题、目标、范围、非目标
30
- ├── design.md # How(高层):架构决策、方案选型、数据流
31
- └── tasks.md # 任务清单(勾选框)
32
- ```
33
-
34
- 定位 comate 脚本并初始化 `.comate.yaml`:
35
-
36
- ```bash
37
- COMATE="${COMATE:-$(for r in . ./.claude/skills "$HOME"/.claude/skills "$HOME"/.config/skills "$HOME"/.cursor/skills; do
38
- [ -d "$r" ] && find "$r" -maxdepth 6 -path '*/comate/scripts/comate.sh' -type f -print -quit 2>/dev/null
39
- done | head -1)}"
40
- if [ -z "$COMATE" ]; then
41
- echo "ERROR: comate.sh 未找到,请确认 comate skill 已安装。" >&2
42
- return 1 2>/dev/null || exit 1
43
- fi
44
-
45
- bash "$COMATE" state <name> init full
46
- ```
47
-
48
- ### 2b. 判定需求来源(源文件追踪)
49
-
50
- `state init` 默认写入 `source_kind: conversation`、`source_manifest: null`(需求由对话产生)。
51
-
52
- 若本次需求来自 `docs/knowledge-base/` 下的一份或多份知识库文档,追踪它们以支持后续双向排查:
53
-
54
- ```bash
55
- bash "$COMATE" sources <name> track docs/knowledge-base/<path>.md --note "<可选说明>"
56
- ```
57
-
58
- - 追踪成功后 `source_kind` 自动改为 `file`,并在 `openspec/changes/<name>/.comate/sources.manifest` 钉住每个文件当时的 sha256 与 commit ref。
59
- - 仅 `docs/knowledge-base/` 范围内的文件可追踪;范围外文件会被跳过并提示,`source_kind` 保持 `conversation`,不影响流程。
60
- - 边追踪边产生:若开题时为对话来源、设计中途才拿到知识库文档,后续任意阶段补 `sources <name> track` 即可,无需回到 open。
61
-
62
- ### 3. 入口状态验证
63
-
64
- ```bash
65
- bash "$COMATE" state <name> check open
66
- ```
67
-
68
- 验证通过后继续 Step 4。失败时脚本输出具体原因。
69
-
70
- **幂等性**:open 阶段所有操作可安全重复。若 `.comate.yaml` 已是 `phase: open` 且三件套已存在,跳过已完成步骤,从第一个缺失步骤继续。
71
-
72
- ### 4. 内容完整性检查
73
-
74
- 逐个确认三个文件路径存在且非空:
75
- - **proposal.md**:问题背景、目标、范围、非目标
76
- - **design.md**:高层架构决策、方案选型、数据流
77
- - **tasks.md**:任务列表,每个任务有明确描述
78
-
79
- 任一文件缺失或为空时,不得进入 Step 5 或执行守卫,必须回创建步骤补充。
80
-
81
- ### 5. 用户审视确认(决策阻塞点 1)
82
-
83
- 三件套完成且完整性检查通过后,**必须使用 AskUserQuestion 工具暂停等待用户确认**。规则见 `comate/reference/decision-points.md` 第 1 条。
84
-
85
- 以单选题呈现摘要(proposal 问题/目标/范围、design 架构决策/选型、tasks 数量与关键任务)和选项:
86
- - 「确认,继续下一阶段」— 执行守卫流转
87
- - 「需要调整」— 附调整说明,修改后重新请求确认
88
-
89
- ## 退出条件
90
-
91
- - 三件套已创建且内容完整
92
- - **用户已确认**
93
- - **阶段守卫**:运行 `bash "$COMATE" guard <name> open --apply`,全 PASS 后自动流转
94
-
95
- 退出前必须 `--apply`,否则 `.comate.yaml` 停留在 `phase: open`,下阶段入口检查会失败。
96
-
97
- ```bash
98
- bash "$COMATE" guard <name> open --apply
99
- ```
100
-
101
- full 流程自动更新为 `phase: design`;hotfix/tweak 预设自动更新为 `phase: build`。
102
-
103
- ## 自动流转
104
-
105
- 用户确认后退出条件满足,自动流转:
106
-
107
- > **REQUIRED NEXT SKILL(完整流程):** 调用 `comate-design` skill 进入深度设计。
108
- >
109
- > hotfix/tweak 预设由对应预设 skill 控制后续流转(phase 直接进 build),不经过本节。
1
+ ---
2
+ name: comate-open
3
+ description: "comate 阶段 1:开题。用 /comate-open 调用。通过 OpenSpec 探索想法、创建 change 结构(proposal + design + tasks)并初始化 .comate.yaml。"
4
+ ---
5
+
6
+ # comate 阶段 1:开题(Open)
7
+
8
+ ## 前置条件
9
+
10
+ - 无活跃 change,或用户希望创建新 change
11
+
12
+ ## 步骤
13
+
14
+ ### 1. 探索想法
15
+
16
+ **立即执行:** 使用 Skill 工具加载 `openspec-explore` 技能。禁止跳过。加载后按其指引自由探索问题空间。
17
+
18
+ ### 2. 创建 Change 结构 + 初始化状态
19
+
20
+ **立即执行:** 使用 Skill 工具加载 `openspec-new-change` 技能。若用户意图未明确、需先形成建议,改为加载 `openspec-propose`。禁止跳过。
21
+
22
+ **命名与范围守卫**:change name 必须用用户指定或经 AskUserQuestion 确认的名称,不得自动生成或推断。变更范围必须与用户描述一致,不得自行扩大或缩小。
23
+
24
+ 确认产物已创建:
25
+
26
+ ```
27
+ openspec/changes/<name>/
28
+ ├── .openspec.yaml
29
+ ├── proposal.md # Why + What:问题、目标、范围、非目标
30
+ ├── design.md # How(高层):架构决策、方案选型、数据流
31
+ └── tasks.md # 任务清单(勾选框)
32
+ ```
33
+
34
+ 定位 comate 脚本并初始化 `.comate.yaml`:
35
+
36
+ ```bash
37
+ COMATE="${COMATE:-$(for r in . ./.claude/skills "$HOME"/.claude/skills "$HOME"/.config/skills "$HOME"/.cursor/skills; do
38
+ [ -d "$r" ] && find "$r" -maxdepth 6 -path '*/comate/scripts/comate.sh' -type f -print -quit 2>/dev/null
39
+ done | head -1)}"
40
+ if [ -z "$COMATE" ]; then
41
+ echo "ERROR: comate.sh 未找到,请确认 comate skill 已安装。" >&2
42
+ return 1 2>/dev/null || exit 1
43
+ fi
44
+
45
+ bash "$COMATE" state <name> init full
46
+ ```
47
+
48
+ ### 2b. 判定需求来源(源文件追踪)
49
+
50
+ `state init` 默认写入 `source_kind: conversation`、`source_manifest: null`(需求由对话产生)。
51
+
52
+ 若本次需求来自 `docs/knowledge-base/` 下的一份或多份知识库文档,追踪它们以支持后续双向排查:
53
+
54
+ ```bash
55
+ bash "$COMATE" sources <name> track docs/knowledge-base/<path>.md --note "<可选说明>"
56
+ ```
57
+
58
+ - 追踪成功后 `source_kind` 自动改为 `file`,并在 `openspec/changes/<name>/.comate/sources.manifest` 钉住每个文件当时的 sha256 与 commit ref。
59
+ - 仅 `docs/knowledge-base/` 范围内的文件可追踪;范围外文件会被跳过并提示,`source_kind` 保持 `conversation`,不影响流程。
60
+ - 边追踪边产生:若开题时为对话来源、设计中途才拿到知识库文档,后续任意阶段补 `sources <name> track` 即可,无需回到 open。
61
+
62
+ ### 3. 入口状态验证
63
+
64
+ ```bash
65
+ bash "$COMATE" state <name> check open
66
+ ```
67
+
68
+ 验证通过后继续 Step 4。失败时脚本输出具体原因。
69
+
70
+ **幂等性**:open 阶段所有操作可安全重复。若 `.comate.yaml` 已是 `phase: open` 且三件套已存在,跳过已完成步骤,从第一个缺失步骤继续。
71
+
72
+ ### 4. 内容完整性检查
73
+
74
+ 逐个确认三个文件路径存在且非空:
75
+ - **proposal.md**:问题背景、目标、范围、非目标
76
+ - **design.md**:高层架构决策、方案选型、数据流
77
+ - **tasks.md**:任务列表,每个任务有明确描述
78
+
79
+ 任一文件缺失或为空时,不得进入 Step 5 或执行守卫,必须回创建步骤补充。
80
+
81
+ ### 5. 用户审视确认(决策阻塞点 1)
82
+
83
+ 三件套完成且完整性检查通过后,**必须使用 AskUserQuestion 工具暂停等待用户确认**。规则见 `comate/reference/decision-points.md` 第 1 条。
84
+
85
+ 以单选题呈现摘要(proposal 问题/目标/范围、design 架构决策/选型、tasks 数量与关键任务)和选项:
86
+ - 「确认,继续下一阶段」— 执行守卫流转
87
+ - 「需要调整」— 附调整说明,修改后重新请求确认
88
+
89
+ ## 退出条件
90
+
91
+ - 三件套已创建且内容完整
92
+ - **用户已确认**
93
+ - **阶段守卫**:运行 `bash "$COMATE" guard <name> open --apply`,全 PASS 后自动流转
94
+
95
+ 退出前必须 `--apply`,否则 `.comate.yaml` 停留在 `phase: open`,下阶段入口检查会失败。
96
+
97
+ ```bash
98
+ bash "$COMATE" guard <name> open --apply
99
+ ```
100
+
101
+ full 流程自动更新为 `phase: design`;hotfix/tweak 预设自动更新为 `phase: build`。
102
+
103
+ ## 自动流转
104
+
105
+ 用户确认后退出条件满足,自动流转:
106
+
107
+ > **REQUIRED NEXT SKILL(完整流程):** 调用 `comate-design` skill 进入深度设计。
108
+ >
109
+ > hotfix/tweak 预设由对应预设 skill 控制后续流转(phase 直接进 build),不经过本节。