ccg-workflow 3.0.7 → 3.0.9
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/dist/cli.mjs +1 -1
- package/dist/index.mjs +1 -1
- package/dist/shared/{ccg-workflow.HyaKbgbr.mjs → ccg-workflow.DF2nGUzy.mjs} +35 -55
- package/package.json +1 -1
- package/templates/codex/agents/ccg-implement.toml +30 -10
- package/templates/codex/agents/ccg-research.toml +42 -13
- package/templates/codex/agents/ccg-review.toml +42 -16
- package/templates/codex/config.toml +12 -2
- package/templates/codex/hooks.json +14 -6
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 { A as diagnoseMcpConfig, B as isWindows, C as readClaudeCodeConfig, D as fixWindowsMcpConfig, E as writeClaudeCodeConfig, r as readCcgConfig, b as initI18n, a as i18n, s as showMainMenu, i as init, F as configMcp, G as version } from './shared/ccg-workflow.
|
|
4
|
+
import { A as diagnoseMcpConfig, B as isWindows, C as readClaudeCodeConfig, D as fixWindowsMcpConfig, E as writeClaudeCodeConfig, r as readCcgConfig, b as initI18n, a as i18n, s as showMainMenu, i as init, F as configMcp, G as version } from './shared/ccg-workflow.DF2nGUzy.mjs';
|
|
5
5
|
import 'inquirer';
|
|
6
6
|
import 'ora';
|
|
7
7
|
import 'node:child_process';
|
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { c as changeLanguage, y as checkForUpdates, z as compareVersions, d as createDefaultConfig, e as createDefaultRouting, g as getCcgDir, f as getConfigPath, v as getCurrentVersion, x as getLatestVersion, j as getWorkflowById, h as getWorkflowConfigs, a as i18n, i as init, b as initI18n, l as installAceTool, m as installAceToolRs, n as installCodexMode, k as installWorkflows, q as migrateToV1_4_0, t as needsMigration, r as readCcgConfig, s as showMainMenu, p as uninstallAceTool, o as uninstallWorkflows, u as update, w as writeCcgConfig } from './shared/ccg-workflow.
|
|
1
|
+
export { c as changeLanguage, y as checkForUpdates, z as compareVersions, d as createDefaultConfig, e as createDefaultRouting, g as getCcgDir, f as getConfigPath, v as getCurrentVersion, x as getLatestVersion, j as getWorkflowById, h as getWorkflowConfigs, a as i18n, i as init, b as initI18n, l as installAceTool, m as installAceToolRs, n as installCodexMode, k as installWorkflows, q as migrateToV1_4_0, t as needsMigration, r as readCcgConfig, s as showMainMenu, p as uninstallAceTool, o as uninstallWorkflows, u as update, w as writeCcgConfig } from './shared/ccg-workflow.DF2nGUzy.mjs';
|
|
2
2
|
import 'ansis';
|
|
3
3
|
import 'inquirer';
|
|
4
4
|
import 'ora';
|
|
@@ -10,7 +10,7 @@ import fs from 'fs-extra';
|
|
|
10
10
|
import { parse, stringify } from 'smol-toml';
|
|
11
11
|
import i18next from 'i18next';
|
|
12
12
|
|
|
13
|
-
const version = "3.0.
|
|
13
|
+
const version = "3.0.9";
|
|
14
14
|
|
|
15
15
|
function cmd(id, order, category, name, nameEn, description, descriptionEn, cmdOverride) {
|
|
16
16
|
return {
|
|
@@ -2202,27 +2202,17 @@ const zhCN = {
|
|
|
2202
2202
|
exit: "\u9000\u51FA"
|
|
2203
2203
|
},
|
|
2204
2204
|
help: {
|
|
2205
|
-
title: "CCG \u547D\u4EE4:",
|
|
2206
|
-
hint: "\u66F4\u591A\u4FE1\u606F
|
|
2205
|
+
title: "CCG \u547D\u4EE4 (v3):",
|
|
2206
|
+
hint: "\u4F7F\u7528 /ccg:go \u63CF\u8FF0\u4EFB\u52A1\uFF0CAI \u81EA\u52A8\u9009\u62E9\u6700\u4F73\u7B56\u7565\u3002\u66F4\u591A\u4FE1\u606F: npx ccg --help",
|
|
2207
2207
|
sections: {
|
|
2208
|
-
|
|
2208
|
+
engine: "\u667A\u80FD\u5F15\u64CE:",
|
|
2209
2209
|
opsx: "OpenSpec \u89C4\u8303\u9A71\u52A8:",
|
|
2210
2210
|
gitTools: "Git \u5DE5\u5177:",
|
|
2211
|
-
projectMgmt: "\u9879\u76EE\u7BA1\u7406:"
|
|
2211
|
+
projectMgmt: "\u9879\u76EE\u7BA1\u7406:",
|
|
2212
|
+
qualityGates: "\u8D28\u91CF\u5173\u5361\uFF08\u81EA\u52A8\u89E6\u53D1\uFF09:"
|
|
2212
2213
|
},
|
|
2213
2214
|
descriptions: {
|
|
2214
|
-
|
|
2215
|
-
plan: "\u591A\u6A21\u578B\u534F\u4F5C\u89C4\u5212\uFF08Phase 1-2\uFF09",
|
|
2216
|
-
execute: "\u591A\u6A21\u578B\u534F\u4F5C\u6267\u884C\uFF08Phase 3-5\uFF09",
|
|
2217
|
-
dev: "\u5B8C\u6574\u516D\u9636\u6BB5\u5F00\u53D1\u5DE5\u4F5C\u6D41",
|
|
2218
|
-
frontend: "\u524D\u7AEF\u4EFB\u52A1 \u2192 Gemini",
|
|
2219
|
-
backend: "\u540E\u7AEF\u4EFB\u52A1 \u2192 Codex",
|
|
2220
|
-
feat: "\u667A\u80FD\u529F\u80FD\u5F00\u53D1",
|
|
2221
|
-
review: "\u53CC\u6A21\u578B\u4EE3\u7801\u5BA1\u67E5",
|
|
2222
|
-
analyze: "\u53CC\u6A21\u578B\u6280\u672F\u5206\u6790",
|
|
2223
|
-
debug: "\u95EE\u9898\u8BCA\u65AD + \u4FEE\u590D",
|
|
2224
|
-
optimize: "\u6027\u80FD\u4F18\u5316",
|
|
2225
|
-
test: "\u6D4B\u8BD5\u751F\u6210",
|
|
2215
|
+
go: "\u667A\u80FD\u5165\u53E3 \u2014 \u63CF\u8FF0\u4EFB\u52A1\uFF0C\u81EA\u52A8\u8DEF\u7531\u6700\u4F73\u7B56\u7565",
|
|
2226
2216
|
specInit: "\u521D\u59CB\u5316 OpenSpec \u73AF\u5883",
|
|
2227
2217
|
specResearch: "\u9700\u6C42\u7814\u7A76 \u2192 \u7EA6\u675F\u96C6",
|
|
2228
2218
|
specPlan: "\u591A\u6A21\u578B\u5206\u6790 \u2192 \u96F6\u51B3\u7B56\u8BA1\u5212",
|
|
@@ -2232,7 +2222,12 @@ const zhCN = {
|
|
|
2232
2222
|
rollback: "Git \u4EA4\u4E92\u5F0F\u56DE\u6EDA",
|
|
2233
2223
|
cleanBranches: "\u6E05\u7406\u5DF2\u5408\u5E76\u5206\u652F",
|
|
2234
2224
|
worktree: "Git Worktree \u7BA1\u7406",
|
|
2235
|
-
init: "\u521D\u59CB\u5316\u9879\u76EE CLAUDE.md"
|
|
2225
|
+
init: "\u521D\u59CB\u5316\u9879\u76EE CLAUDE.md",
|
|
2226
|
+
context: "\u9879\u76EE\u4E0A\u4E0B\u6587\u7BA1\u7406\uFF08\u65E5\u5FD7/\u538B\u7F29/\u5F52\u6863\uFF09",
|
|
2227
|
+
verifySecurity: "\u5B89\u5168\u6F0F\u6D1E\u626B\u63CF",
|
|
2228
|
+
verifyQuality: "\u4EE3\u7801\u8D28\u91CF\u68C0\u6D4B",
|
|
2229
|
+
verifyChange: "\u53D8\u66F4\u5F71\u54CD\u5206\u6790",
|
|
2230
|
+
verifyModule: "\u6A21\u5757\u5B8C\u6574\u6027\u6821\u9A8C"
|
|
2236
2231
|
}
|
|
2237
2232
|
},
|
|
2238
2233
|
api: {
|
|
@@ -2698,27 +2693,17 @@ const en = {
|
|
|
2698
2693
|
exit: "Exit"
|
|
2699
2694
|
},
|
|
2700
2695
|
help: {
|
|
2701
|
-
title: "CCG Commands:",
|
|
2702
|
-
hint: "
|
|
2696
|
+
title: "CCG Commands (v3):",
|
|
2697
|
+
hint: "Use /ccg:go to describe your task, AI auto-routes to the best strategy. More info: npx ccg --help",
|
|
2703
2698
|
sections: {
|
|
2704
|
-
|
|
2699
|
+
engine: "Smart Engine:",
|
|
2705
2700
|
opsx: "OpenSpec Spec-Driven:",
|
|
2706
2701
|
gitTools: "Git Tools:",
|
|
2707
|
-
projectMgmt: "Project Management:"
|
|
2702
|
+
projectMgmt: "Project Management:",
|
|
2703
|
+
qualityGates: "Quality Gates (auto-triggered):"
|
|
2708
2704
|
},
|
|
2709
2705
|
descriptions: {
|
|
2710
|
-
|
|
2711
|
-
plan: "Multi-model planning (Phase 1-2)",
|
|
2712
|
-
execute: "Multi-model execution (Phase 3-5)",
|
|
2713
|
-
dev: "Complete 6-phase development workflow",
|
|
2714
|
-
frontend: "Frontend tasks \u2192 Gemini",
|
|
2715
|
-
backend: "Backend tasks \u2192 Codex",
|
|
2716
|
-
feat: "Smart feature development",
|
|
2717
|
-
review: "Dual-model code review",
|
|
2718
|
-
analyze: "Dual-model technical analysis",
|
|
2719
|
-
debug: "Diagnosis + fix",
|
|
2720
|
-
optimize: "Performance optimization",
|
|
2721
|
-
test: "Test generation",
|
|
2706
|
+
go: "Smart entry \u2014 describe task, auto-route to best strategy",
|
|
2722
2707
|
specInit: "Initialize OpenSpec environment",
|
|
2723
2708
|
specResearch: "Requirements \u2192 Constraint set",
|
|
2724
2709
|
specPlan: "Multi-model analysis \u2192 Zero-decision plan",
|
|
@@ -2728,7 +2713,12 @@ const en = {
|
|
|
2728
2713
|
rollback: "Git interactive rollback",
|
|
2729
2714
|
cleanBranches: "Clean merged branches",
|
|
2730
2715
|
worktree: "Git Worktree management",
|
|
2731
|
-
init: "Initialize project CLAUDE.md"
|
|
2716
|
+
init: "Initialize project CLAUDE.md",
|
|
2717
|
+
context: "Project context management (log/compress/archive)",
|
|
2718
|
+
verifySecurity: "Security vulnerability scan",
|
|
2719
|
+
verifyQuality: "Code quality check",
|
|
2720
|
+
verifyChange: "Change impact analysis",
|
|
2721
|
+
verifyModule: "Module completeness check"
|
|
2732
2722
|
}
|
|
2733
2723
|
},
|
|
2734
2724
|
api: {
|
|
@@ -4491,31 +4481,15 @@ async function showMainMenu() {
|
|
|
4491
4481
|
}
|
|
4492
4482
|
function showHelp() {
|
|
4493
4483
|
const config = readCcgConfigSync();
|
|
4494
|
-
|
|
4484
|
+
(config?.general?.language || "zh-CN") === "zh-CN";
|
|
4495
4485
|
console.log();
|
|
4496
4486
|
console.log(ansis.cyan.bold(` ${i18n.t("menu:help.title")}`));
|
|
4497
4487
|
console.log();
|
|
4498
4488
|
const col1 = 22;
|
|
4499
4489
|
const section = (title) => console.log(ansis.yellow.bold(` ${title}`));
|
|
4500
4490
|
const cmd = (name, desc) => console.log(` ${ansis.green(name.padEnd(col1))} ${ansis.gray(desc)}`);
|
|
4501
|
-
section(i18n.t("menu:help.sections.
|
|
4502
|
-
cmd("/ccg:
|
|
4503
|
-
cmd("/ccg:plan", i18n.t("menu:help.descriptions.plan"));
|
|
4504
|
-
cmd("/ccg:execute", i18n.t("menu:help.descriptions.execute"));
|
|
4505
|
-
cmd("/ccg:frontend", i18n.t("menu:help.descriptions.frontend"));
|
|
4506
|
-
cmd("/ccg:backend", i18n.t("menu:help.descriptions.backend"));
|
|
4507
|
-
cmd("/ccg:feat", i18n.t("menu:help.descriptions.feat"));
|
|
4508
|
-
cmd("/ccg:analyze", i18n.t("menu:help.descriptions.analyze"));
|
|
4509
|
-
cmd("/ccg:debug", i18n.t("menu:help.descriptions.debug"));
|
|
4510
|
-
cmd("/ccg:optimize", i18n.t("menu:help.descriptions.optimize"));
|
|
4511
|
-
cmd("/ccg:test", i18n.t("menu:help.descriptions.test"));
|
|
4512
|
-
cmd("/ccg:review", i18n.t("menu:help.descriptions.review"));
|
|
4513
|
-
console.log();
|
|
4514
|
-
section(isZh ? "Agent Teams \u5E76\u884C\u5B9E\u65BD:" : "Agent Teams Parallel:");
|
|
4515
|
-
cmd("/ccg:team-research", isZh ? "\u9700\u6C42 \u2192 \u7EA6\u675F\u96C6" : "Requirements \u2192 Constraints");
|
|
4516
|
-
cmd("/ccg:team-plan", isZh ? "\u7EA6\u675F \u2192 \u5E76\u884C\u8BA1\u5212" : "Constraints \u2192 Parallel plan");
|
|
4517
|
-
cmd("/ccg:team-exec", isZh ? "\u5E76\u884C\u5B9E\u65BD" : "Parallel execution");
|
|
4518
|
-
cmd("/ccg:team-review", isZh ? "\u53CC\u6A21\u578B\u5BA1\u67E5" : "Dual-model review");
|
|
4491
|
+
section(i18n.t("menu:help.sections.engine"));
|
|
4492
|
+
cmd("/ccg:go", i18n.t("menu:help.descriptions.go"));
|
|
4519
4493
|
console.log();
|
|
4520
4494
|
section(i18n.t("menu:help.sections.opsx"));
|
|
4521
4495
|
cmd("/ccg:spec-init", i18n.t("menu:help.descriptions.specInit"));
|
|
@@ -4532,7 +4506,13 @@ function showHelp() {
|
|
|
4532
4506
|
console.log();
|
|
4533
4507
|
section(i18n.t("menu:help.sections.projectMgmt"));
|
|
4534
4508
|
cmd("/ccg:init", i18n.t("menu:help.descriptions.init"));
|
|
4535
|
-
cmd("/ccg:
|
|
4509
|
+
cmd("/ccg:context", i18n.t("menu:help.descriptions.context"));
|
|
4510
|
+
console.log();
|
|
4511
|
+
section(i18n.t("menu:help.sections.qualityGates"));
|
|
4512
|
+
cmd("/ccg:verify-security", i18n.t("menu:help.descriptions.verifySecurity"));
|
|
4513
|
+
cmd("/ccg:verify-quality", i18n.t("menu:help.descriptions.verifyQuality"));
|
|
4514
|
+
cmd("/ccg:verify-change", i18n.t("menu:help.descriptions.verifyChange"));
|
|
4515
|
+
cmd("/ccg:verify-module", i18n.t("menu:help.descriptions.verifyModule"));
|
|
4536
4516
|
console.log();
|
|
4537
4517
|
console.log(ansis.gray(` ${i18n.t("menu:help.hint")}`));
|
|
4538
4518
|
console.log();
|
package/package.json
CHANGED
|
@@ -1,17 +1,37 @@
|
|
|
1
1
|
# CCG Implementation Sub-Agent
|
|
2
2
|
|
|
3
3
|
name = "ccg-implement"
|
|
4
|
-
description = "
|
|
4
|
+
description = "Workspace-write CCG implementer that follows specs and plan."
|
|
5
|
+
sandbox_mode = "workspace-write"
|
|
6
|
+
|
|
5
7
|
developer_instructions = """
|
|
6
|
-
You are
|
|
8
|
+
You are running as the `ccg-implement` sub-agent. The main session has dispatched you to do the work.
|
|
9
|
+
|
|
10
|
+
CRITICAL — Recursion guard (read first):
|
|
11
|
+
- You MUST NOT spawn another sub-agent. Do the implementation work directly in this turn.
|
|
12
|
+
- Any guidance in AGENTS.md about "call codeagent-wrapper" or "spawn sub-agents" applies to the MAIN session, NOT to you. You are already the dispatched implementer.
|
|
13
|
+
- Only the main session is allowed to call external models or spawn agents.
|
|
14
|
+
|
|
15
|
+
## Context Loading
|
|
16
|
+
|
|
17
|
+
1. Read the dispatch message — it contains your file scope and implementation steps.
|
|
18
|
+
2. If .ccg/spec/ exists, read relevant spec files before writing code.
|
|
19
|
+
3. If a plan.md path is mentioned, read it for full context.
|
|
7
20
|
|
|
8
21
|
## Rules
|
|
9
|
-
1. You ONLY modify files assigned to you in the dispatch message
|
|
10
|
-
2.
|
|
11
|
-
3.
|
|
12
|
-
4.
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
22
|
+
1. You ONLY modify files assigned to you in the dispatch message.
|
|
23
|
+
2. Follow the plan exactly — no scope expansion.
|
|
24
|
+
3. Run validation commands after changes if specified.
|
|
25
|
+
4. Report: files changed, tests status, any blockers.
|
|
26
|
+
|
|
27
|
+
Before finishing, summarize:
|
|
28
|
+
- Files changed
|
|
29
|
+
- Tests/checks run
|
|
30
|
+
- Remaining risks or follow-ups
|
|
17
31
|
"""
|
|
32
|
+
|
|
33
|
+
[features]
|
|
34
|
+
multi_agent = false
|
|
35
|
+
|
|
36
|
+
[features.multi_agent_v2]
|
|
37
|
+
enabled = false
|
|
@@ -1,22 +1,51 @@
|
|
|
1
1
|
# CCG Research Sub-Agent
|
|
2
2
|
|
|
3
3
|
name = "ccg-research"
|
|
4
|
-
description = "
|
|
4
|
+
description = "CCG researcher for specs, code patterns, and affected files. Writes findings to task research/ directory."
|
|
5
|
+
sandbox_mode = "workspace-write"
|
|
6
|
+
|
|
5
7
|
developer_instructions = """
|
|
6
|
-
You are
|
|
8
|
+
You are running as the `ccg-research` sub-agent. The main session has dispatched you to gather information.
|
|
9
|
+
|
|
10
|
+
CRITICAL — Recursion guard (read first):
|
|
11
|
+
- You MUST NOT spawn another sub-agent. Do the research directly in this turn.
|
|
12
|
+
- Any guidance in AGENTS.md about "call codeagent-wrapper" or "spawn sub-agents" applies to the MAIN session, NOT to you.
|
|
13
|
+
- Only the main session is allowed to call external models or spawn agents.
|
|
14
|
+
|
|
15
|
+
## Context Loading
|
|
7
16
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
17
|
+
1. Read the dispatch message — it contains what to research.
|
|
18
|
+
2. If .ccg/spec/ exists, read relevant spec files for conventions.
|
|
19
|
+
|
|
20
|
+
## Workflow
|
|
21
|
+
|
|
22
|
+
1. Search the codebase for files/patterns specified in the dispatch message.
|
|
23
|
+
2. Map dependencies and call chains.
|
|
24
|
+
3. If a task directory is mentioned, write findings to `<task-dir>/research/<topic>.md`.
|
|
25
|
+
4. Summarize findings in a structured report.
|
|
13
26
|
|
|
14
27
|
## Output Format
|
|
15
|
-
FILES_FOUND: [list of relevant files]
|
|
16
|
-
DEPENDENCIES: [dependency map]
|
|
17
|
-
PATTERNS: [existing code patterns to follow]
|
|
18
|
-
RISKS: [potential conflicts or breaking changes]
|
|
19
28
|
|
|
20
|
-
|
|
21
|
-
|
|
29
|
+
### Files Found
|
|
30
|
+
[list of relevant files with one-line description]
|
|
31
|
+
|
|
32
|
+
### Dependencies
|
|
33
|
+
[dependency map]
|
|
34
|
+
|
|
35
|
+
### Patterns
|
|
36
|
+
[existing code patterns to follow, cite file:line]
|
|
37
|
+
|
|
38
|
+
### Risks
|
|
39
|
+
[potential conflicts or breaking changes]
|
|
40
|
+
|
|
41
|
+
## Scope limits
|
|
42
|
+
- Write ONLY to the task's research/ directory.
|
|
43
|
+
- Do NOT modify source code files.
|
|
44
|
+
- Do NOT call codeagent-wrapper.
|
|
22
45
|
"""
|
|
46
|
+
|
|
47
|
+
[features]
|
|
48
|
+
multi_agent = false
|
|
49
|
+
|
|
50
|
+
[features.multi_agent_v2]
|
|
51
|
+
enabled = false
|
|
@@ -1,24 +1,50 @@
|
|
|
1
1
|
# CCG Review Sub-Agent
|
|
2
2
|
|
|
3
3
|
name = "ccg-review"
|
|
4
|
-
description = "
|
|
4
|
+
description = "Workspace-write CCG reviewer that self-fixes lint/type-check failures and reports findings."
|
|
5
|
+
sandbox_mode = "workspace-write"
|
|
6
|
+
|
|
5
7
|
developer_instructions = """
|
|
6
|
-
You are
|
|
8
|
+
You are running as the `ccg-review` sub-agent. The main session has dispatched you to review and self-fix.
|
|
9
|
+
|
|
10
|
+
CRITICAL — Recursion guard (read first):
|
|
11
|
+
- You MUST NOT spawn another sub-agent. Do the review and fixes directly in this turn.
|
|
12
|
+
- Any guidance in AGENTS.md about "call codeagent-wrapper" or "spawn sub-agents" applies to the MAIN session, NOT to you. You are already the dispatched reviewer.
|
|
13
|
+
- Only the main session is allowed to call external models or spawn agents.
|
|
14
|
+
|
|
15
|
+
## Context Loading
|
|
16
|
+
|
|
17
|
+
1. Read the dispatch message — it contains what to review.
|
|
18
|
+
2. If .ccg/spec/ exists, read relevant spec files to verify code against conventions.
|
|
19
|
+
|
|
20
|
+
## Your job: review AND fix
|
|
21
|
+
|
|
22
|
+
You have write access. When you find an issue, fix it directly — not just report it.
|
|
7
23
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
5. Report findings as: Critical / Warning / Info
|
|
24
|
+
Review checklist:
|
|
25
|
+
- Run lint and type-check; fix any failures (max 3 attempts)
|
|
26
|
+
- Run tests; report pass/fail
|
|
27
|
+
- Review git diff for: security issues, logic errors, scope violations
|
|
28
|
+
- Check whether .ccg/spec/ docs need updates after implementation
|
|
14
29
|
|
|
15
30
|
## Output Format
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
31
|
+
|
|
32
|
+
### Findings (fixed)
|
|
33
|
+
- File: <path>
|
|
34
|
+
- Issue: <what was wrong>
|
|
35
|
+
- Fix: <what you changed>
|
|
36
|
+
|
|
37
|
+
### Findings (not fixed)
|
|
38
|
+
Only list issues you could not self-fix. Explain why.
|
|
39
|
+
|
|
40
|
+
### Verification
|
|
41
|
+
- Lint: pass/fail
|
|
42
|
+
- TypeCheck: pass/fail
|
|
43
|
+
- Tests: pass/fail
|
|
24
44
|
"""
|
|
45
|
+
|
|
46
|
+
[features]
|
|
47
|
+
multi_agent = false
|
|
48
|
+
|
|
49
|
+
[features.multi_agent_v2]
|
|
50
|
+
enabled = false
|
|
@@ -1,9 +1,19 @@
|
|
|
1
1
|
# CCG Codex Project Configuration
|
|
2
|
-
# Installed by: npx ccg-workflow
|
|
2
|
+
# Installed by: npx ccg-workflow (menu → X. Codex Mode)
|
|
3
|
+
#
|
|
4
|
+
# Codex merges this after user-level config when the project is trusted.
|
|
5
|
+
# To trust: add under [projects] in ~/.codex/config.toml:
|
|
6
|
+
# [projects."/abs/path/to/repo"]
|
|
7
|
+
# trust_level = "trusted"
|
|
3
8
|
|
|
4
9
|
project_doc_fallback_filenames = ["AGENTS.md", "CLAUDE.md"]
|
|
5
10
|
|
|
11
|
+
# multi_agent_v2: structured subagent orchestration with `wait` tool.
|
|
12
|
+
# - enabled = true: required inside the table
|
|
13
|
+
# - max_concurrent_threads_per_session: bumps default 4 → 6
|
|
14
|
+
# - min_wait_timeout_ms: 480000 ms = 8 min (default 10s is too short
|
|
15
|
+
# for external model calls via codeagent-wrapper)
|
|
6
16
|
[features.multi_agent_v2]
|
|
7
17
|
enabled = true
|
|
8
18
|
max_concurrent_threads_per_session = 6
|
|
9
|
-
min_wait_timeout_ms = 480000
|
|
19
|
+
min_wait_timeout_ms = 480000
|
|
@@ -1,7 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
{
|
|
3
|
-
"
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
{
|
|
2
|
+
"hooks": {
|
|
3
|
+
"UserPromptSubmit": [
|
|
4
|
+
{
|
|
5
|
+
"hooks": [
|
|
6
|
+
{
|
|
7
|
+
"type": "command",
|
|
8
|
+
"command": "python3 .codex/hooks/ccg-workflow.py",
|
|
9
|
+
"timeout": 10
|
|
10
|
+
}
|
|
11
|
+
]
|
|
12
|
+
}
|
|
13
|
+
]
|
|
6
14
|
}
|
|
7
|
-
|
|
15
|
+
}
|