claude-code-workflow 7.2.25 → 7.2.27
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/.claude/CLAUDE.md +20 -0
- package/.claude/agents/action-planning-agent.md +6 -0
- package/.claude/agents/cli-explore-agent.md +63 -77
- package/.claude/agents/cli-lite-planning-agent.md +10 -11
- package/.claude/agents/issue-plan-agent.md +7 -2
- package/.claude/commands/workflow/spec/setup.md +1 -1
- package/.claude/skills/review-cycle/phases/review-module.md +4 -4
- package/.claude/skills/review-cycle/phases/review-session.md +4 -4
- package/.claude/skills/team-arch-opt/SKILL.md +1 -1
- package/.claude/skills/team-arch-opt/roles/coordinator/commands/monitor.md +3 -1
- package/.claude/skills/team-arch-opt/roles/refactorer/role.md +3 -1
- package/.claude/skills/team-arch-opt/specs/team-config.json +2 -2
- package/.claude/skills/team-coordinate/SKILL.md +4 -3
- package/.claude/skills/team-coordinate/roles/coordinator/commands/analyze-task.md +1 -1
- package/.claude/skills/team-coordinate/roles/coordinator/commands/dispatch.md +3 -2
- package/.claude/skills/team-coordinate/roles/coordinator/commands/monitor.md +3 -2
- package/.claude/skills/team-coordinate/roles/coordinator/role.md +16 -15
- package/.claude/skills/team-coordinate/specs/pipelines.md +7 -4
- package/.claude/skills/team-coordinate/specs/role-spec-template.md +1 -0
- package/.claude/skills/team-lifecycle-v4/SKILL.md +1 -1
- package/.claude/skills/team-lifecycle-v4/roles/coordinator/commands/dispatch.md +14 -2
- package/.claude/skills/team-lifecycle-v4/roles/coordinator/commands/monitor.md +24 -2
- package/.claude/skills/team-lifecycle-v4/roles/executor/role.md +3 -1
- package/.claude/skills/team-perf-opt/SKILL.md +1 -1
- package/.claude/skills/team-perf-opt/roles/optimizer/role.md +3 -1
- package/.claude/skills/team-perf-opt/specs/team-config.json +2 -2
- package/.claude/skills/team-quality-assurance/SKILL.md +1 -1
- package/.claude/skills/team-quality-assurance/roles/coordinator/commands/dispatch.md +4 -2
- package/.claude/skills/team-quality-assurance/roles/coordinator/commands/monitor.md +4 -2
- package/.claude/skills/team-quality-assurance/roles/executor/role.md +3 -1
- package/.claude/skills/team-testing/SKILL.md +1 -1
- package/.claude/skills/team-testing/roles/coordinator/commands/dispatch.md +5 -2
- package/.claude/skills/team-testing/roles/coordinator/commands/monitor.md +4 -2
- package/.claude/skills/team-testing/roles/executor/role.md +3 -1
- package/.claude/skills/workflow-multi-cli-plan/SKILL.md +2 -2
- package/.claude/skills/workflow-plan/phases/03-conflict-resolution.md +2 -2
- package/.claude/skills/workflow-plan/phases/05-plan-verify.md +2 -2
- package/.claude/skills/workflow-tdd-plan/phases/02-context-gathering.md +3 -3
- package/.claude/skills/workflow-tdd-plan/phases/04-conflict-resolution.md +2 -2
- package/.claude/skills/workflow-test-fix/phases/02-test-context-gather.md +2 -2
- package/.codex/AGENTS.md +16 -0
- package/ccw/dist/tools/index.d.ts.map +1 -1
- package/ccw/dist/tools/index.js +2 -0
- package/ccw/dist/tools/index.js.map +1 -1
- package/ccw/dist/tools/json-builder.d.ts +17 -0
- package/ccw/dist/tools/json-builder.d.ts.map +1 -0
- package/ccw/dist/tools/json-builder.js +746 -0
- package/ccw/dist/tools/json-builder.js.map +1 -0
- package/ccw/dist/tools/schema-registry.d.ts +71 -0
- package/ccw/dist/tools/schema-registry.d.ts.map +1 -0
- package/ccw/dist/tools/schema-registry.js +136 -0
- package/ccw/dist/tools/schema-registry.js.map +1 -0
- package/package.json +1 -1
- package/.codex/prompts/prep-cycle.md +0 -416
- package/.codex/prompts/prep-plan.md +0 -371
|
@@ -34,8 +34,20 @@ RoleSpec: ~ or <project>/.claude/skills/team-lifecycle-v4/roles/<role>/role.md
|
|
|
34
34
|
|
|
35
35
|
## InnerLoop Flag Rules
|
|
36
36
|
|
|
37
|
-
- true: Role has 2+ serial same-prefix tasks (writer: DRAFT-001->004)
|
|
38
|
-
- false: Role has 1 task, or tasks are parallel
|
|
37
|
+
- true: Role has 2+ serial same-prefix tasks (writer: DRAFT-001->004) where each blockedBy the previous
|
|
38
|
+
- false: Role has 1 task, or tasks are parallel (no mutual blockedBy)
|
|
39
|
+
|
|
40
|
+
### Parallel Detection for IMPL Tasks
|
|
41
|
+
|
|
42
|
+
When creating IMPL-{1..N} tasks from PLAN-001 output:
|
|
43
|
+
|
|
44
|
+
1. Read plan.json → extract `tasks[]` with their `depends_on` fields
|
|
45
|
+
2. Build dependency graph among IMPL tasks only
|
|
46
|
+
3. Classify:
|
|
47
|
+
- **Serial chain**: IMPL-002 blockedBy IMPL-001 → both get `InnerLoop: true`, single worker
|
|
48
|
+
- **Parallel set**: IMPL-001..N all blockedBy PLAN-001 only (no mutual deps) → each gets `InnerLoop: false`, separate workers
|
|
49
|
+
- **Mixed DAG**: Some parallel, some serial → group into independent chains, each chain gets one worker with `InnerLoop: true`; independent chains spawn in parallel
|
|
50
|
+
4. Set `InnerLoop` in each task description accordingly
|
|
39
51
|
|
|
40
52
|
## CHECKPOINT Task Rules
|
|
41
53
|
|
|
@@ -36,9 +36,29 @@ Worker completed. Process and advance.
|
|
|
36
36
|
- CHECKPOINT-* with verdict "warn" -> log risks to wisdom, proceed normally
|
|
37
37
|
- CHECKPOINT-* with verdict "pass" -> proceed normally
|
|
38
38
|
- QUALITY-001 -> display quality gate, pause for user commands
|
|
39
|
-
- PLAN-001 ->
|
|
39
|
+
- PLAN-001 -> dynamicImplDispatch (see below)
|
|
40
40
|
6. -> handleSpawnNext
|
|
41
41
|
|
|
42
|
+
### dynamicImplDispatch (PLAN-001 callback)
|
|
43
|
+
|
|
44
|
+
When PLAN-001 completes, coordinator creates IMPL tasks based on complexity:
|
|
45
|
+
|
|
46
|
+
1. Read `<session>/plan/plan.json` → extract `complexity`, `tasks[]`
|
|
47
|
+
2. Route by complexity (per specs/pipelines.md §6):
|
|
48
|
+
|
|
49
|
+
| Complexity | Action |
|
|
50
|
+
|------------|--------|
|
|
51
|
+
| Low (1-2 modules) | Create single IMPL-001, blockedBy: [PLAN-001], InnerLoop: true |
|
|
52
|
+
| Medium (3-4 modules) | Create IMPL-{1..N}, each blockedBy: [PLAN-001] only, InnerLoop: false |
|
|
53
|
+
| High (5+ modules) | Create IMPL-{1..N} with DAG deps from plan.json, InnerLoop per dispatch rules |
|
|
54
|
+
|
|
55
|
+
3. For each IMPL task: TaskCreate with structured description (dispatch.md template)
|
|
56
|
+
4. Set blockedBy:
|
|
57
|
+
- **Parallel tasks**: blockedBy: [PLAN-001] (or [CHECKPOINT-003] if supervision enabled)
|
|
58
|
+
- **Serial chain within DAG**: blockedBy includes upstream IMPL task IDs
|
|
59
|
+
5. Update team-session.json: `pipeline.tasks_total`, `pipeline.impl_topology: "single"|"parallel"|"dag"`
|
|
60
|
+
6. Log via team_msg: `{ type: "state_update", data: { impl_count: N, topology: "..." } }`
|
|
61
|
+
|
|
42
62
|
## handleCheck
|
|
43
63
|
|
|
44
64
|
Read-only status report, then STOP.
|
|
@@ -71,7 +91,9 @@ Find ready tasks, spawn workers, STOP.
|
|
|
71
91
|
2. No ready + work in progress -> report waiting, STOP
|
|
72
92
|
3. No ready + nothing in progress -> handleComplete
|
|
73
93
|
4. Has ready -> for each:
|
|
74
|
-
a. Check
|
|
94
|
+
a. Check inner_loop: parse task description `InnerLoop:` field (NOT role.md default)
|
|
95
|
+
- InnerLoop: true AND same-role worker already active -> skip (worker picks up next task)
|
|
96
|
+
- InnerLoop: false OR no active same-role worker -> spawn new worker
|
|
75
97
|
b. **CHECKPOINT-* task** -> wake resident supervisor (see below)
|
|
76
98
|
c. Other tasks -> standard spawn:
|
|
77
99
|
- TaskUpdate -> in_progress
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
role: executor
|
|
3
3
|
prefix: IMPL
|
|
4
|
-
inner_loop:
|
|
4
|
+
inner_loop: dynamic
|
|
5
5
|
message_types:
|
|
6
6
|
success: impl_complete
|
|
7
7
|
progress: impl_progress
|
|
@@ -12,6 +12,8 @@ message_types:
|
|
|
12
12
|
|
|
13
13
|
Code implementation worker with dual execution modes.
|
|
14
14
|
|
|
15
|
+
> **inner_loop: dynamic** — Dispatch sets per-task: `true` for serial IMPL chains (IMPL-001→002→003 with inter-dependencies), `false` for parallel IMPL sets (independent modules). When false, each IMPL task gets its own worker.
|
|
16
|
+
|
|
15
17
|
## Identity
|
|
16
18
|
- Tag: [executor] | Prefix: IMPL-*
|
|
17
19
|
- Responsibility: Implement code from plan tasks via agent or CLI delegation
|
|
@@ -90,7 +90,7 @@ Execute built-in Phase 1 (task discovery) -> role Phase 2-4 -> built-in Phase 5
|
|
|
90
90
|
})
|
|
91
91
|
```
|
|
92
92
|
|
|
93
|
-
**Inner Loop roles** (optimizer): Set `inner_loop
|
|
93
|
+
**Inner Loop roles** (optimizer): Set `inner_loop` dynamically — `true` for single mode, `false` for fan-out/independent (parallel branches).
|
|
94
94
|
**Single-task roles** (profiler, strategist, benchmarker, reviewer): Set `inner_loop: false`.
|
|
95
95
|
|
|
96
96
|
## User Commands
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
role: optimizer
|
|
3
3
|
prefix: IMPL
|
|
4
|
-
inner_loop:
|
|
4
|
+
inner_loop: dynamic
|
|
5
5
|
additional_prefixes: [FIX]
|
|
6
6
|
message_types:
|
|
7
7
|
success: impl_complete
|
|
@@ -11,6 +11,8 @@ message_types:
|
|
|
11
11
|
|
|
12
12
|
# Code Optimizer
|
|
13
13
|
|
|
14
|
+
> **inner_loop: dynamic** — Dispatch sets per-task: `true` for single mode (one IMPL task with iterative fix cycles), `false` for fan-out/independent modes (IMPL-B01..N run as separate parallel workers). When false, each branch gets its own worker.
|
|
15
|
+
|
|
14
16
|
Implement optimization changes following the strategy plan. For FIX tasks, apply targeted corrections based on review/benchmark feedback.
|
|
15
17
|
|
|
16
18
|
## Modes
|
|
@@ -65,10 +65,10 @@
|
|
|
65
65
|
"type": "code_generation",
|
|
66
66
|
"description": "Implements optimization changes following the strategy plan",
|
|
67
67
|
"role_spec": "roles/optimizer/role.md",
|
|
68
|
-
"inner_loop":
|
|
68
|
+
"inner_loop": "dynamic",
|
|
69
69
|
"frontmatter": {
|
|
70
70
|
"prefix": "IMPL",
|
|
71
|
-
"inner_loop":
|
|
71
|
+
"inner_loop": "dynamic",
|
|
72
72
|
"additional_prefixes": ["FIX"],
|
|
73
73
|
"discuss_rounds": [],
|
|
74
74
|
"delegates_to": [],
|
|
@@ -38,7 +38,7 @@ Skill(skill="team-quality-assurance", args="task description")
|
|
|
38
38
|
| scout | [roles/scout/role.md](roles/scout/role.md) | SCOUT-* | false |
|
|
39
39
|
| strategist | [roles/strategist/role.md](roles/strategist/role.md) | QASTRAT-* | false |
|
|
40
40
|
| generator | [roles/generator/role.md](roles/generator/role.md) | QAGEN-* | false |
|
|
41
|
-
| executor | [roles/executor/role.md](roles/executor/role.md) | QARUN-* |
|
|
41
|
+
| executor | [roles/executor/role.md](roles/executor/role.md) | QARUN-* | dynamic |
|
|
42
42
|
| analyst | [roles/analyst/role.md](roles/analyst/role.md) | QAANA-* | false |
|
|
43
43
|
|
|
44
44
|
## Role Router
|
|
@@ -87,8 +87,10 @@ SCOUT-002 (scout): Regression scan after fixes
|
|
|
87
87
|
|
|
88
88
|
## InnerLoop Flag Rules
|
|
89
89
|
|
|
90
|
-
-
|
|
91
|
-
-
|
|
90
|
+
- **executor**: dynamic per pipeline mode:
|
|
91
|
+
- Discovery/Testing: `true` (serial layer chain, single executor handles GC loops)
|
|
92
|
+
- Full: `false` for parallel QARUN tasks (QARUN-L1-001 and QARUN-L2-001 have independent blockedBy, each gets own worker)
|
|
93
|
+
- **scout, strategist, generator, analyst**: always false
|
|
92
94
|
|
|
93
95
|
## Dependency Validation
|
|
94
96
|
|
|
@@ -132,10 +132,12 @@ Find ready tasks, spawn workers, STOP.
|
|
|
132
132
|
| SCOUT-* | scout | false |
|
|
133
133
|
| QASTRAT-* | strategist | false |
|
|
134
134
|
| QAGEN-* | generator | false |
|
|
135
|
-
| QARUN-* | executor |
|
|
135
|
+
| QARUN-* | executor | dynamic |
|
|
136
136
|
| QAANA-* | analyst | false |
|
|
137
137
|
|
|
138
|
-
b. Check
|
|
138
|
+
b. Check inner_loop: parse task description `InnerLoop:` field (NOT role.md default)
|
|
139
|
+
- InnerLoop: true AND same-role worker already active -> skip (worker picks up next task)
|
|
140
|
+
- InnerLoop: false OR no active same-role worker -> spawn new worker
|
|
139
141
|
c. TaskUpdate -> in_progress
|
|
140
142
|
d. team_msg log -> task_unblocked
|
|
141
143
|
e. Spawn team-worker:
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
role: executor
|
|
3
3
|
prefix: QARUN
|
|
4
|
-
inner_loop:
|
|
4
|
+
inner_loop: dynamic
|
|
5
5
|
additional_prefixes: [QARUN-gc]
|
|
6
6
|
message_types:
|
|
7
7
|
success: tests_passed
|
|
@@ -12,6 +12,8 @@ message_types:
|
|
|
12
12
|
|
|
13
13
|
# Test Executor
|
|
14
14
|
|
|
15
|
+
> **inner_loop: dynamic** — Dispatch sets per-task: `true` for serial layer chains (discovery/testing mode), `false` for parallel layer execution (full mode where QARUN-L1-001 and QARUN-L2-001 run independently). When false, each QARUN task gets its own worker.
|
|
16
|
+
|
|
15
17
|
Run test suites, collect coverage data, and perform automatic fix cycles when tests fail. Implements the execution side of the Generator-Executor (GC) loop.
|
|
16
18
|
|
|
17
19
|
## Phase 2: Environment Detection
|
|
@@ -37,7 +37,7 @@ Skill(skill="team-testing", args="task description")
|
|
|
37
37
|
| coordinator | [roles/coordinator/role.md](roles/coordinator/role.md) | — | — |
|
|
38
38
|
| strategist | [roles/strategist/role.md](roles/strategist/role.md) | STRATEGY-* | false |
|
|
39
39
|
| generator | [roles/generator/role.md](roles/generator/role.md) | TESTGEN-* | true |
|
|
40
|
-
| executor | [roles/executor/role.md](roles/executor/role.md) | TESTRUN-* |
|
|
40
|
+
| executor | [roles/executor/role.md](roles/executor/role.md) | TESTRUN-* | dynamic |
|
|
41
41
|
| analyst | [roles/analyst/role.md](roles/analyst/role.md) | TESTANA-* | false |
|
|
42
42
|
|
|
43
43
|
## Role Router
|
|
@@ -84,8 +84,11 @@ TESTANA-001 (analyst): Defect pattern analysis, quality report
|
|
|
84
84
|
|
|
85
85
|
## InnerLoop Flag Rules
|
|
86
86
|
|
|
87
|
-
-
|
|
88
|
-
-
|
|
87
|
+
- **generator**: always true (GC loop iterations within a single layer)
|
|
88
|
+
- **executor**: dynamic per pipeline mode:
|
|
89
|
+
- Targeted/Standard: `true` (serial layer chain, single executor handles GC loops)
|
|
90
|
+
- Comprehensive: `false` for parallel TESTRUN tasks (TESTRUN-001 and TESTRUN-002 have independent blockedBy, each gets own worker)
|
|
91
|
+
- **strategist, analyst**: always false
|
|
89
92
|
|
|
90
93
|
## Dependency Validation
|
|
91
94
|
|
|
@@ -27,7 +27,7 @@ Event-driven pipeline coordination. Beat model: coordinator wake -> process -> s
|
|
|
27
27
|
|--------|------|-----------|------------|
|
|
28
28
|
| STRATEGY-* | strategist | `~ or <project>/.claude/skills/team-testing/roles/strategist/role.md` | false |
|
|
29
29
|
| TESTGEN-* | generator | `~ or <project>/.claude/skills/team-testing/roles/generator/role.md` | true |
|
|
30
|
-
| TESTRUN-* | executor | `~ or <project>/.claude/skills/team-testing/roles/executor/role.md` |
|
|
30
|
+
| TESTRUN-* | executor | `~ or <project>/.claude/skills/team-testing/roles/executor/role.md` | dynamic |
|
|
31
31
|
| TESTANA-* | analyst | `~ or <project>/.claude/skills/team-testing/roles/analyst/role.md` | false |
|
|
32
32
|
|
|
33
33
|
## handleCallback
|
|
@@ -136,7 +136,9 @@ Find ready tasks, spawn workers, STOP.
|
|
|
136
136
|
3. No ready + nothing in progress -> handleComplete
|
|
137
137
|
4. Has ready -> for each ready task:
|
|
138
138
|
a. Determine role from prefix (use Role-Worker Map)
|
|
139
|
-
b. Check
|
|
139
|
+
b. Check inner_loop: parse task description `InnerLoop:` field (NOT role.md default)
|
|
140
|
+
- InnerLoop: true AND same-role worker already active -> skip (worker picks up next task)
|
|
141
|
+
- InnerLoop: false OR no active same-role worker -> spawn new worker
|
|
140
142
|
c. TaskUpdate -> in_progress
|
|
141
143
|
d. team_msg log -> task_unblocked
|
|
142
144
|
e. Spawn team-worker:
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
role: executor
|
|
3
3
|
prefix: TESTRUN
|
|
4
|
-
inner_loop:
|
|
4
|
+
inner_loop: dynamic
|
|
5
5
|
message_types:
|
|
6
6
|
success: tests_passed
|
|
7
7
|
failure: tests_failed
|
|
@@ -11,6 +11,8 @@ message_types:
|
|
|
11
11
|
|
|
12
12
|
# Test Executor
|
|
13
13
|
|
|
14
|
+
> **inner_loop: dynamic** — Dispatch sets per-task: `true` for serial GC loops (single layer pipeline), `false` for parallel layer execution (comprehensive pipeline where TESTRUN-001 and TESTRUN-002 run independently). When false, each TESTRUN task gets its own worker.
|
|
15
|
+
|
|
14
16
|
Execute tests, collect coverage, attempt auto-fix for failures. Acts as the Critic in the Generator-Critic loop. Reports pass rate and coverage for coordinator GC decisions.
|
|
15
17
|
|
|
16
18
|
## Phase 2: Context Loading
|
|
@@ -246,8 +246,8 @@ Agent({
|
|
|
246
246
|
description: "Generate implementation plan",
|
|
247
247
|
prompt: `
|
|
248
248
|
## Schema Reference
|
|
249
|
-
Execute:
|
|
250
|
-
Execute:
|
|
249
|
+
Execute: ccw tool exec json_builder '{"cmd":"info","schema":"plan"}'
|
|
250
|
+
Execute: ccw tool exec json_builder '{"cmd":"info","schema":"task"}'
|
|
251
251
|
|
|
252
252
|
## Output Format: Two-Layer Structure
|
|
253
253
|
- plan.json: Overview with task_ids[] referencing .task/ files (NO tasks[] array)
|
|
@@ -70,7 +70,7 @@ Task(subagent_type="cli-execution-agent", run_in_background=false, prompt=`
|
|
|
70
70
|
## Analysis Steps
|
|
71
71
|
|
|
72
72
|
### 0. Load Output Schema (MANDATORY)
|
|
73
|
-
Execute:
|
|
73
|
+
Execute: ccw tool exec json_builder '{"cmd":"info","schema":"conflict"}' (get schema summary)
|
|
74
74
|
|
|
75
75
|
### 1. Load Context
|
|
76
76
|
- Read existing files from conflict_detection.existing_files
|
|
@@ -119,7 +119,7 @@ Task(subagent_type="cli-execution-agent", run_in_background=false, prompt=`
|
|
|
119
119
|
|
|
120
120
|
Output to conflict-resolution.json (generated in Phase 4)
|
|
121
121
|
|
|
122
|
-
**Schema Reference**: Execute
|
|
122
|
+
**Schema Reference**: Execute ccw tool exec json_builder '{"cmd":"info","schema":"conflict"}' to get schema summary
|
|
123
123
|
|
|
124
124
|
Return JSON following the schema. Key requirements:
|
|
125
125
|
- Minimum 2 strategies per conflict, max 4
|
|
@@ -195,8 +195,8 @@ Task(
|
|
|
195
195
|
## Plan Verification Task
|
|
196
196
|
|
|
197
197
|
### MANDATORY FIRST STEPS
|
|
198
|
-
1.
|
|
199
|
-
2.
|
|
198
|
+
1. Execute: ccw tool exec json_builder '{"cmd":"info","schema":"plan-verify"}' (dimensions & rules)
|
|
199
|
+
2. Execute: ccw tool exec json_builder '{"cmd":"info","schema":"verify"}' (output schema)
|
|
200
200
|
3. Read: ${session_file} (user intent)
|
|
201
201
|
4. Read: ${PLANNING_NOTES} (constraints & N+1 context)
|
|
202
202
|
5. Read: ${IMPL_PLAN} (implementation plan)
|
|
@@ -99,7 +99,7 @@ Execute **${angle}** exploration for TDD task planning context. Analyze codebase
|
|
|
99
99
|
## MANDATORY FIRST STEPS (Execute by Agent)
|
|
100
100
|
1. Run: ccw tool exec get_modules_by_depth '{}' (project structure)
|
|
101
101
|
2. Run: rg -l "{keyword_from_task}" --type ts (locate relevant files)
|
|
102
|
-
3. Execute:
|
|
102
|
+
3. Execute: ccw tool exec json_builder '{"cmd":"init","schema":"explore","output":"${sessionFolder}/exploration-${angle}.json"}' (init output + get schema info)
|
|
103
103
|
|
|
104
104
|
## Exploration Strategy (${angle} focus)
|
|
105
105
|
|
|
@@ -121,7 +121,7 @@ Execute **${angle}** exploration for TDD task planning context. Analyze codebase
|
|
|
121
121
|
|
|
122
122
|
**File**: ${sessionFolder}/exploration-${angle}.json
|
|
123
123
|
|
|
124
|
-
**Schema Reference**:
|
|
124
|
+
**Schema Reference**: Skeleton initialized via json_builder in step 3. Use `set` to populate fields, `validate` before returning.
|
|
125
125
|
|
|
126
126
|
**Required Fields** (all ${angle} focused):
|
|
127
127
|
- project_structure: Modules/architecture relevant to ${angle}
|
|
@@ -141,7 +141,7 @@ Execute **${angle}** exploration for TDD task planning context. Analyze codebase
|
|
|
141
141
|
- _metadata.exploration_angle: "${angle}"
|
|
142
142
|
|
|
143
143
|
## Success Criteria
|
|
144
|
-
- [ ] Schema
|
|
144
|
+
- [ ] Schema initialized via json_builder init
|
|
145
145
|
- [ ] get_modules_by_depth.sh executed
|
|
146
146
|
- [ ] At least 3 relevant files identified with ${angle} rationale
|
|
147
147
|
- [ ] Patterns are actionable (code examples, not generic advice)
|
|
@@ -70,7 +70,7 @@ Task(subagent_type="cli-execution-agent", run_in_background=false, prompt=`
|
|
|
70
70
|
## Analysis Steps
|
|
71
71
|
|
|
72
72
|
### 0. Load Output Schema (MANDATORY)
|
|
73
|
-
Execute:
|
|
73
|
+
Execute: ccw tool exec json_builder '{"cmd":"info","schema":"conflict"}'
|
|
74
74
|
|
|
75
75
|
### 1. Load Context
|
|
76
76
|
- Read existing files from conflict_detection.existing_files
|
|
@@ -119,7 +119,7 @@ Task(subagent_type="cli-execution-agent", run_in_background=false, prompt=`
|
|
|
119
119
|
|
|
120
120
|
Output to conflict-resolution.json (generated in Phase 4)
|
|
121
121
|
|
|
122
|
-
**Schema Reference**: Execute
|
|
122
|
+
**Schema Reference**: Execute ccw tool exec json_builder '{"cmd":"info","schema":"conflict"}' to get schema summary
|
|
123
123
|
|
|
124
124
|
Return JSON following the schema. Key requirements:
|
|
125
125
|
- Minimum 2 strategies per conflict, max 4
|
|
@@ -223,7 +223,7 @@ Execute **${angle}** exploration for task planning context. Analyze codebase fro
|
|
|
223
223
|
## MANDATORY FIRST STEPS (Execute by Agent)
|
|
224
224
|
1. Run: ccw tool exec get_modules_by_depth '{}' (project structure)
|
|
225
225
|
2. Run: rg -l "{keyword_from_task}" --type ts (locate relevant files)
|
|
226
|
-
3. Execute:
|
|
226
|
+
3. Execute: ccw tool exec json_builder '{"cmd":"init","schema":"explore","output":"${sessionFolder}/exploration-${angle}.json"}' (init output + get schema info)
|
|
227
227
|
|
|
228
228
|
## Exploration Strategy (${angle} focus)
|
|
229
229
|
|
|
@@ -265,7 +265,7 @@ Execute **${angle}** exploration for task planning context. Analyze codebase fro
|
|
|
265
265
|
- _metadata.exploration_angle: "${angle}"
|
|
266
266
|
|
|
267
267
|
## Success Criteria
|
|
268
|
-
- [ ] Schema
|
|
268
|
+
- [ ] Schema initialized via json_builder init
|
|
269
269
|
- [ ] get_modules_by_depth.sh executed
|
|
270
270
|
- [ ] At least 3 relevant files identified with ${angle} rationale
|
|
271
271
|
- [ ] Patterns are actionable (code examples, not generic advice)
|
package/.codex/AGENTS.md
CHANGED
|
@@ -105,6 +105,22 @@ ACE search_context (semantic) → smart_search (structured) → read_file (batch
|
|
|
105
105
|
|
|
106
106
|
**NEVER** use shell commands (`cat`, `find`, `grep`) when MCP tools are available.
|
|
107
107
|
|
|
108
|
+
## Workflow Session Awareness
|
|
109
|
+
|
|
110
|
+
| Workflow | Directory | Summary File |
|
|
111
|
+
|----------|-----------|-------------|
|
|
112
|
+
| `workflow-plan` | `.workflow/active/WFS-*/` | `workflow-session.json` |
|
|
113
|
+
| `workflow-lite-plan` | `.workflow/.lite-plan/{slug}-{date}/` | `plan.json` |
|
|
114
|
+
| `analyze-with-file` | `.workflow/.analysis/ANL-*/` | `conclusions.json` |
|
|
115
|
+
| `multi-cli-plan` | `.workflow/.multi-cli-plan/*/` | `session-state.json` |
|
|
116
|
+
| `lite-fix` | `.workflow/.lite-fix/*/` | `fix-plan.json` |
|
|
117
|
+
| Other | `.workflow/.debug/`, `.workflow/.scratchpad/`, `.workflow/archives/` | — |
|
|
118
|
+
|
|
119
|
+
Before starting work, scan recent sessions (7 days) to avoid conflicts and reuse prior work:
|
|
120
|
+
- Overlapping file scope → warn, suggest referencing prior session
|
|
121
|
+
- Complementary findings → feed into current task context
|
|
122
|
+
|
|
123
|
+
|
|
108
124
|
## Execution Checklist
|
|
109
125
|
|
|
110
126
|
**Before**:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAc,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAc,MAAM,kBAAkB,CAAC;AAgC/D,UAAU,UAAU;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE;QACV,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACpC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;IACF,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAChE;AA8DD;;GAEG;AACH,iBAAS,YAAY,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAK5C;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAM9D;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAEvD;AA6CD;;GAEG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,OAAO,CAAC;IAC7F,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC,CAsDD;AA+BD;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAa7D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,UAAU,EAAE,CAEhD;AAgCD,OAAO,EAAE,YAAY,EAAE,CAAC;AAGxB,YAAY,EAAE,UAAU,EAAE,CAAC;AAG3B,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACnH,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC"}
|
package/ccw/dist/tools/index.js
CHANGED
|
@@ -24,6 +24,7 @@ import * as contextCacheMod from './context-cache.js';
|
|
|
24
24
|
import * as skillContextLoaderMod from './skill-context-loader.js';
|
|
25
25
|
import * as askQuestionMod from './ask-question.js';
|
|
26
26
|
import * as teamMsgMod from './team-msg.js';
|
|
27
|
+
import * as jsonBuilderMod from './json-builder.js';
|
|
27
28
|
// Import legacy JS tools
|
|
28
29
|
import { uiGeneratePreviewTool } from './ui-generate-preview.js';
|
|
29
30
|
import { uiInstantiatePrototypesTool } from './ui-instantiate-prototypes.js';
|
|
@@ -266,6 +267,7 @@ registerTool(toLegacyTool(contextCacheMod));
|
|
|
266
267
|
registerTool(toLegacyTool(skillContextLoaderMod));
|
|
267
268
|
registerTool(toLegacyTool(askQuestionMod));
|
|
268
269
|
registerTool(toLegacyTool(teamMsgMod));
|
|
270
|
+
registerTool(toLegacyTool(jsonBuilderMod));
|
|
269
271
|
// Register legacy JS tools
|
|
270
272
|
registerTool(uiGeneratePreviewTool);
|
|
271
273
|
registerTool(uiInstantiatePrototypesTool);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,IAAI,MAAM,MAAM,CAAC;AAGxB,sDAAsD;AACtD,OAAO,KAAK,WAAW,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,oBAAoB,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,kBAAkB,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,uBAAuB,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,sBAAsB,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,qBAAqB,MAAM,2BAA2B,CAAC;AACnE,OAAO,KAAK,kBAAkB,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,qBAAqB,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,iBAAiB,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,cAAc,MAAM,mBAAmB,CAAC;AACpD,uEAAuE;AACvE,OAAO,KAAK,WAAW,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,gBAAgB,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,cAAc,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,aAAa,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,eAAe,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,qBAAqB,MAAM,2BAA2B,CAAC;AACnE,OAAO,KAAK,cAAc,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,UAAU,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* JSON Builder Tool - Schema-aware structured JSON construction/validation.
|
|
3
|
+
*
|
|
4
|
+
* Commands:
|
|
5
|
+
* init — Create empty schema-compliant JSON skeleton
|
|
6
|
+
* set — Set/append fields with instant validation
|
|
7
|
+
* validate — Full schema + semantic validation
|
|
8
|
+
* merge — Merge multiple same-schema JSONs
|
|
9
|
+
* info — Get schema summary (replaces agent reading raw schema)
|
|
10
|
+
*
|
|
11
|
+
* Replaces agent hand-writing JSON + self-validation with tool-assisted
|
|
12
|
+
* incremental build + automatic validation.
|
|
13
|
+
*/
|
|
14
|
+
import type { ToolSchema, ToolResult } from '../types/tool.js';
|
|
15
|
+
export declare const schema: ToolSchema;
|
|
16
|
+
export declare function handler(params: Record<string, unknown>): Promise<ToolResult>;
|
|
17
|
+
//# sourceMappingURL=json-builder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json-builder.d.ts","sourceRoot":"","sources":["../../src/tools/json-builder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAiC/D,eAAO,MAAM,MAAM,EAAE,UAwBpB,CAAC;AAIF,wBAAsB,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CAoBlF"}
|