ccg-workflow 1.7.65 → 1.7.67
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.
- package/README.md +1 -1
- package/dist/cli.mjs +1 -1
- package/dist/index.mjs +1 -1
- package/dist/shared/{ccg-workflow.DfYEh3he.mjs → ccg-workflow.CNurX2Yc.mjs} +1 -1
- package/package.json +1 -1
- package/templates/commands/spec-impl.md +9 -3
- package/templates/commands/spec-init.md +1 -11
- package/templates/commands/spec-plan.md +27 -5
- package/templates/commands/spec-research.md +58 -11
package/README.md
CHANGED
package/dist/cli.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import cac from 'cac';
|
|
3
3
|
import ansis from 'ansis';
|
|
4
|
-
import { z as diagnoseMcpConfig, A as isWindows, B as readClaudeCodeConfig, C as fixWindowsMcpConfig, D as writeClaudeCodeConfig, r as readCcgConfig, b as initI18n, s as showMainMenu, i as init, E as configMcp, F as version, a as i18n } from './shared/ccg-workflow.
|
|
4
|
+
import { z as diagnoseMcpConfig, A as isWindows, B as readClaudeCodeConfig, C as fixWindowsMcpConfig, D as writeClaudeCodeConfig, r as readCcgConfig, b as initI18n, s as showMainMenu, i as init, E as configMcp, F as version, a as i18n } from './shared/ccg-workflow.CNurX2Yc.mjs';
|
|
5
5
|
import 'inquirer';
|
|
6
6
|
import 'node:child_process';
|
|
7
7
|
import 'node:util';
|
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { c as changeLanguage, x as checkForUpdates, y as compareVersions, d as createDefaultConfig, e as createDefaultRouting, g as getCcgDir, f as getConfigPath, t as getCurrentVersion, v as getLatestVersion, j as getWorkflowById, h as getWorkflowConfigs, a as i18n, i as init, b as initI18n, l as installAceTool, m as installAceToolRs, k as installWorkflows, p as migrateToV1_4_0, q as needsMigration, r as readCcgConfig, s as showMainMenu, o as uninstallAceTool, n as uninstallWorkflows, u as update, w as writeCcgConfig } from './shared/ccg-workflow.
|
|
1
|
+
export { c as changeLanguage, x as checkForUpdates, y as compareVersions, d as createDefaultConfig, e as createDefaultRouting, g as getCcgDir, f as getConfigPath, t as getCurrentVersion, v as getLatestVersion, j as getWorkflowById, h as getWorkflowConfigs, a as i18n, i as init, b as initI18n, l as installAceTool, m as installAceToolRs, k as installWorkflows, p as migrateToV1_4_0, q as needsMigration, r as readCcgConfig, s as showMainMenu, o as uninstallAceTool, n as uninstallWorkflows, u as update, w as writeCcgConfig } from './shared/ccg-workflow.CNurX2Yc.mjs';
|
|
2
2
|
import 'ansis';
|
|
3
3
|
import 'inquirer';
|
|
4
4
|
import 'node:child_process';
|
package/package.json
CHANGED
|
@@ -21,8 +21,11 @@ description: '按规范执行 + 多模型协作 + 归档'
|
|
|
21
21
|
- Run `openspec status --change "<change_id>" --json` to review tasks.
|
|
22
22
|
|
|
23
23
|
2. **Apply OPSX Change**
|
|
24
|
-
-
|
|
25
|
-
|
|
24
|
+
- Call `/opsx:apply` to enter implementation mode:
|
|
25
|
+
```
|
|
26
|
+
/opsx:apply
|
|
27
|
+
```
|
|
28
|
+
- This will load the change context and guide you through the tasks defined in `tasks.md`.
|
|
26
29
|
|
|
27
30
|
3. **Identify Minimal Verifiable Phase**
|
|
28
31
|
- Review `tasks.md` and identify the **smallest verifiable phase**.
|
|
@@ -109,7 +112,10 @@ description: '按规范执行 + 多模型协作 + 归档'
|
|
|
109
112
|
|
|
110
113
|
10. **Archive on Completion**
|
|
111
114
|
- When ALL tasks in `tasks.md` are marked `[x]`:
|
|
112
|
-
-
|
|
115
|
+
- Call `/opsx:archive` to archive the change:
|
|
116
|
+
```
|
|
117
|
+
/opsx:archive
|
|
118
|
+
```
|
|
113
119
|
- This merges spec deltas to `openspec/specs/` and moves change to archive.
|
|
114
120
|
|
|
115
121
|
**Reference**
|
|
@@ -70,16 +70,7 @@ description: '初始化 OpenSpec (OPSX) 环境 + 验证多模型 MCP 工具'
|
|
|
70
70
|
```
|
|
71
71
|
- For each unavailable tool, display warning with installation instructions.
|
|
72
72
|
|
|
73
|
-
5. **
|
|
74
|
-
- **Check Active Tool**: Is `{{MCP_SEARCH_TOOL}}` available in the current session?
|
|
75
|
-
- **Check Configuration**: If tool is missing, check `~/.claude.json` (or `%APPDATA%\Claude\claude.json` on Windows) for `"ace-tool"` or `"ace-tool-rs"` in `mcpServers`.
|
|
76
|
-
- **Diagnosis**:
|
|
77
|
-
- If tool available: Mark as "✓ Active".
|
|
78
|
-
- If config exists but tool missing: Mark as "⚠️ Configured but inactive (Try restarting Claude)".
|
|
79
|
-
- If neither: Mark as "○ Not installed (Optional)".
|
|
80
|
-
- If not installed/configured, suggest: "Run `npx ccg-workflow` and select ace-tool MCP option."
|
|
81
|
-
|
|
82
|
-
6. **Summary Report**
|
|
73
|
+
5. **Summary Report**
|
|
83
74
|
Display status table:
|
|
84
75
|
```
|
|
85
76
|
Component Status
|
|
@@ -90,7 +81,6 @@ description: '初始化 OpenSpec (OPSX) 环境 + 验证多模型 MCP 工具'
|
|
|
90
81
|
codeagent-wrapper ✓/✗
|
|
91
82
|
Codex backend ✓/✗
|
|
92
83
|
Gemini backend ✓/✗
|
|
93
|
-
ace-tool MCP ✓/✗ (optional)
|
|
94
84
|
```
|
|
95
85
|
|
|
96
86
|
**Next Steps (Use CCG Encapsulated Commands)**
|
|
@@ -84,11 +84,33 @@ description: '多模型分析 → 消除歧义 → 零决策可执行计划'
|
|
|
84
84
|
- **Bounds**: Value ranges, size limits, rate constraints
|
|
85
85
|
|
|
86
86
|
5. **Update OPSX Artifacts**
|
|
87
|
-
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
87
|
+
- **BEFORE calling `/opsx:continue`**, output a structured summary for OPSX context:
|
|
88
|
+
```markdown
|
|
89
|
+
## Planning Summary for OPSX
|
|
90
|
+
|
|
91
|
+
**Multi-Model Analysis Results**:
|
|
92
|
+
- Codex (Backend): [Key findings and recommendations]
|
|
93
|
+
- Gemini (Frontend): [Key findings and recommendations]
|
|
94
|
+
- Consolidated Approach: [Selected implementation strategy]
|
|
95
|
+
|
|
96
|
+
**Resolved Constraints**:
|
|
97
|
+
- [All explicit constraints from Step 3]
|
|
98
|
+
|
|
99
|
+
**PBT Properties**:
|
|
100
|
+
- [All extracted properties from Step 4 with falsification strategies]
|
|
101
|
+
|
|
102
|
+
**Technical Decisions**:
|
|
103
|
+
- [All finalized technology choices, algorithms, configurations]
|
|
104
|
+
|
|
105
|
+
**Implementation Tasks**:
|
|
106
|
+
- [High-level task breakdown ready for tasks.md]
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
- Then call `/opsx:continue` to generate next artifacts:
|
|
110
|
+
```
|
|
111
|
+
/opsx:continue
|
|
112
|
+
```
|
|
113
|
+
- The OPSX skill will use the above summary to create specs.md, design.md, and tasks.md.
|
|
92
114
|
|
|
93
115
|
6. **Context Checkpoint**
|
|
94
116
|
- Report current context usage.
|
|
@@ -47,7 +47,11 @@ description: '需求 → 约束集(并行探索 + OPSX 提案)'
|
|
|
47
47
|
- Each boundary should be self-contained: no cross-communication needed.
|
|
48
48
|
|
|
49
49
|
4. **Parallel Multi-Model Exploration**
|
|
50
|
-
-
|
|
50
|
+
- **CRITICAL**: You MUST launch BOTH Codex AND Gemini in a SINGLE message with TWO Bash tool calls.
|
|
51
|
+
- **DO NOT** call one model first and wait. Launch BOTH simultaneously with `run_in_background: true`.
|
|
52
|
+
- **工作目录**:`{{WORKDIR}}` 替换为目标工作目录的绝对路径。如果用户通过 `/add-dir` 添加了多个工作区,先确定任务相关的工作区。
|
|
53
|
+
|
|
54
|
+
**Output Template** (instruct both models to use this format):
|
|
51
55
|
```json
|
|
52
56
|
{
|
|
53
57
|
"module_name": "context boundary explored",
|
|
@@ -60,7 +64,34 @@ description: '需求 → 约束集(并行探索 + OPSX 提案)'
|
|
|
60
64
|
"success_criteria_hints": ["observable success behaviors"]
|
|
61
65
|
}
|
|
62
66
|
```
|
|
63
|
-
|
|
67
|
+
|
|
68
|
+
**Step 4.1**: In ONE message, make TWO parallel Bash calls:
|
|
69
|
+
|
|
70
|
+
**FIRST Bash call (Codex — backend boundaries)**:
|
|
71
|
+
```
|
|
72
|
+
Bash({
|
|
73
|
+
command: "~/.claude/bin/codeagent-wrapper --backend codex - \"{{WORKDIR}}\" <<'EOF'\nExplore backend context boundaries for <change description>:\n- Existing structures and patterns\n- Conventions in use\n- Hard constraints limiting solution space\n- Dependencies and risks\nOUTPUT: JSON using the output template above\nEOF",
|
|
74
|
+
run_in_background: true,
|
|
75
|
+
timeout: 300000,
|
|
76
|
+
description: "Codex: backend boundary exploration"
|
|
77
|
+
})
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
**SECOND Bash call (Gemini — frontend boundaries) - IN THE SAME MESSAGE**:
|
|
81
|
+
```
|
|
82
|
+
Bash({
|
|
83
|
+
command: "~/.claude/bin/codeagent-wrapper --backend gemini --gemini-model gemini-3.1-pro-preview - \"{{WORKDIR}}\" <<'EOF'\nExplore frontend context boundaries for <change description>:\n- Existing structures and patterns\n- Conventions in use\n- Hard constraints limiting solution space\n- Dependencies and risks\nOUTPUT: JSON using the output template above\nEOF",
|
|
84
|
+
run_in_background: true,
|
|
85
|
+
timeout: 300000,
|
|
86
|
+
description: "Gemini: frontend boundary exploration"
|
|
87
|
+
})
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
**Step 4.2**: After BOTH Bash calls return task IDs, wait for results with TWO TaskOutput calls:
|
|
91
|
+
```
|
|
92
|
+
TaskOutput({ task_id: "<codex_task_id>", block: true, timeout: 600000 })
|
|
93
|
+
TaskOutput({ task_id: "<gemini_task_id>", block: true, timeout: 600000 })
|
|
94
|
+
```
|
|
64
95
|
|
|
65
96
|
5. **Aggregate and Synthesize**
|
|
66
97
|
- Collect all subagent outputs.
|
|
@@ -79,15 +110,31 @@ description: '需求 → 约束集(并行探索 + OPSX 提案)'
|
|
|
79
110
|
- Capture responses as additional constraints.
|
|
80
111
|
|
|
81
112
|
7. **Finalize OPSX Proposal**
|
|
82
|
-
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
113
|
+
- **BEFORE calling `/opsx:continue`**, output a structured summary for OPSX context:
|
|
114
|
+
```markdown
|
|
115
|
+
## Research Summary for OPSX
|
|
116
|
+
|
|
117
|
+
**Discovered Constraints**:
|
|
118
|
+
- [List all hard and soft constraints from Step 5]
|
|
119
|
+
|
|
120
|
+
**Dependencies**:
|
|
121
|
+
- [List cross-module dependencies]
|
|
122
|
+
|
|
123
|
+
**Risks & Mitigations**:
|
|
124
|
+
- [List identified risks and mitigation strategies]
|
|
125
|
+
|
|
126
|
+
**Success Criteria**:
|
|
127
|
+
- [List verifiable success behaviors]
|
|
128
|
+
|
|
129
|
+
**User Confirmations**:
|
|
130
|
+
- [List all user decisions from Step 6]
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
- Then call `/opsx:continue` to generate proposal artifact:
|
|
134
|
+
```
|
|
135
|
+
/opsx:continue
|
|
136
|
+
```
|
|
137
|
+
- The OPSX skill will use the above summary to write proposal.md.
|
|
91
138
|
|
|
92
139
|
8. **Context Checkpoint**
|
|
93
140
|
- Report current context usage.
|