claude-symphony 0.0.9 → 0.0.11

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 CHANGED
@@ -22,6 +22,10 @@ claude-symphony is a 10-stage software development workflow pipeline that orches
22
22
  - **Pipeline Forking**: Branch exploration for architecture alternatives with merge capabilities
23
23
  - **Stage Personas**: Optimized AI behavior profiles per stage (Creative Explorer, Precise Builder, etc.)
24
24
  - **Output Validation**: Automated quality checks with lint, typecheck, and coverage verification
25
+ - **Epic Cycles**: User-defined stage range repetition with context preservation between cycles
26
+ - **Implementation Order**: Frontend-first or backend-first development approach with reference links
27
+ - **Requirements Refinement**: 4-level breakdown system (Epic → Feature → Task → Subtask) with INVEST validation
28
+ - **Moodboard UX**: Interactive design reference collection with Claude Vision/Figma MCP analysis
25
29
  - **Dual Distribution**: Both NPM CLI and Claude Code plugin available
26
30
 
27
31
  ### Pipeline Stages
@@ -170,6 +174,15 @@ This monorepo contains three packages:
170
174
  | Pipeline Fork | `symphony fork` | `/fork` | Create/manage pipeline branches for exploration |
171
175
  | Output Validation | `symphony validate` | `/validate` | Validate stage outputs against quality criteria |
172
176
 
177
+ ### Workflow Commands
178
+
179
+ | Command | Plugin | Description |
180
+ |---------|--------|-------------|
181
+ | Epic Cycle | `/epic` | Manage epic cycles (new, set-scope, set-count, history) |
182
+ | Implementation Order | `/config order` | Set development order (frontend/backend/parallel) |
183
+ | Moodboard | `/moodboard` | Interactive design reference collection and analysis |
184
+ | Requirements Refine | `/refine` | Break down requirements (Epic → Feature → Task → Subtask) |
185
+
173
186
  ### Stage Shortcuts
174
187
 
175
188
  | Stage | CLI | Plugin |
@@ -226,7 +239,12 @@ Each project is fully self-contained with all pipeline components:
226
239
  ```
227
240
  my-project/ # PROJECT_ROOT
228
241
  ├── .claude/ # Claude Code configuration
229
- │ ├── commands/ # Slash commands (26 commands)
242
+ │ ├── commands/ # Slash commands (30+ commands)
243
+ │ │ ├── epic.md # /epic - Epic cycle management
244
+ │ │ ├── moodboard.md # /moodboard - Design collection
245
+ │ │ ├── refine.md # /refine - Requirements refinement
246
+ │ │ ├── config.md # /config - Implementation order
247
+ │ │ └── ...
230
248
  │ ├── hooks/ # Lifecycle hooks
231
249
  │ ├── skills/ # AI skills
232
250
  │ └── settings.json
@@ -242,14 +260,22 @@ my-project/ # PROJECT_ROOT
242
260
  │ ├── 02-research/
243
261
  │ └── ... (10 stages total)
244
262
  ├── config/ # Pipeline configuration
245
- │ ├── pipeline.yaml
246
- │ ├── context.yaml
247
- └── ... (15+ config files)
263
+ │ ├── pipeline.yaml # Core pipeline settings
264
+ │ ├── context.yaml # Context management
265
+ ├── epic_cycles.yaml # Epic cycle configuration
266
+ │ ├── implementation_order.yaml # Dev order settings
267
+ │ ├── requirements_refinement.yaml # Refinement rules
268
+ │ ├── ui-ux.yaml # Moodboard & design settings
269
+ │ └── ... (20+ config files)
248
270
  ├── state/ # Project state
249
271
  │ ├── progress.json # Pipeline progress
250
272
  │ ├── checkpoints/ # Recovery points
251
273
  │ └── context/ # Context snapshots
252
274
  ├── scripts/ # Helper scripts
275
+ │ ├── epic-cycle.sh # Epic cycle management
276
+ │ ├── moodboard-manager.sh # Moodboard collection
277
+ │ ├── requirements-refine.sh # Requirements refinement
278
+ │ └── ...
253
279
  ├── CLAUDE.md # Main AI instructions
254
280
  ├── src/ # Source code (from stage 06)
255
281
  └── package.json
@@ -266,6 +292,8 @@ my-project/ # PROJECT_ROOT
266
292
  7. **Multi-AI Collaboration** - Parallel, sequential, and debate modes for AI coordination
267
293
  8. **Pipeline Forking** - Branch exploration with merge capabilities
268
294
  9. **Smart Context Management** - Semantic compression and AI memory integration
295
+ 10. **Iterative Refinement Loops** - Epic cycles, requirements refinement, and moodboard feedback
296
+ 11. **Hierarchical Decomposition** - 4-level requirement breakdown (Epic → Feature → Task → Subtask)
269
297
 
270
298
  ## Documentation
271
299
 
package/bin/create.js CHANGED
@@ -3,7 +3,7 @@
3
3
  import fs from 'fs';
4
4
  import path from 'path';
5
5
  import { fileURLToPath } from 'url';
6
- import { input, confirm } from '@inquirer/prompts';
6
+ import { input, confirm, select } from '@inquirer/prompts';
7
7
  import yaml from 'js-yaml';
8
8
 
9
9
  const __filename = fileURLToPath(import.meta.url);
@@ -111,6 +111,66 @@ async function collectBriefInfo() {
111
111
  default: true
112
112
  });
113
113
 
114
+ // === Epic & Workflow Configuration ===
115
+ console.log('');
116
+ log('🔄 Epic & Workflow Configuration', 'yellow');
117
+ log(' (All settings can be modified later via commands)', 'reset');
118
+
119
+ // 1. Epic Cycles (High priority)
120
+ info.epicEnabled = await confirm({
121
+ message: '🔄 Enable Epic Cycles? (repeat stages for iterative refinement)',
122
+ default: false
123
+ });
124
+
125
+ if (info.epicEnabled) {
126
+ // 2. Epic Scope (High priority)
127
+ info.epicScope = await select({
128
+ message: '📍 Epic cycle scope: (which stages to repeat)',
129
+ choices: [
130
+ { name: 'Ideation (01-03) - concept exploration', value: 'ideation' },
131
+ { name: 'Design (01-05) - full design iteration', value: 'design' },
132
+ { name: 'Implementation (06-09) - code sprints', value: 'implementation' },
133
+ { name: 'Full Pipeline (01-10) - end-to-end', value: 'full' }
134
+ ],
135
+ default: 'design'
136
+ });
137
+
138
+ // 3. Total Cycles (High priority)
139
+ info.epicTotalCycles = await input({
140
+ message: '🔢 Total Epic cycles (1-5): (iterations for refinement)',
141
+ default: '2',
142
+ validate: (v) => {
143
+ const num = parseInt(v);
144
+ if (isNaN(num) || num < 1 || num > 5) return 'Enter 1-5';
145
+ return true;
146
+ }
147
+ });
148
+ }
149
+
150
+ // 4. Implementation Order (Medium priority)
151
+ info.implementationOrder = await select({
152
+ message: '🏗️ Implementation order: (frontend-first vs backend-first)',
153
+ choices: [
154
+ { name: 'Frontend First - UI then APIs', value: 'frontend_first' },
155
+ { name: 'Backend First - APIs then UI', value: 'backend_first' },
156
+ { name: 'Parallel - both simultaneously', value: 'parallel' },
157
+ { name: 'Decide Later', value: null }
158
+ ],
159
+ default: null
160
+ });
161
+
162
+ // 5. Requirements Refinement (Medium priority)
163
+ info.requirementsRefinement = await confirm({
164
+ message: '📋 Enable Requirements Refinement? (Epic→Feature→Task breakdown)',
165
+ default: true
166
+ });
167
+
168
+ // 6. Moodboard (Low priority)
169
+ info.moodboardEnabled = await confirm({
170
+ message: '🎨 Enable Moodboard collection? (visual references for UI/UX)',
171
+ default: true
172
+ });
173
+
114
174
  return info;
115
175
  }
116
176
 
@@ -182,6 +242,98 @@ function applyConfigSettings(targetDir, info) {
182
242
  // Silently continue if JSON parsing fails
183
243
  }
184
244
  }
245
+
246
+ // Scope preset mapping
247
+ const scopes = {
248
+ ideation: { start: '01-brainstorm', end: '03-planning' },
249
+ design: { start: '01-brainstorm', end: '05-task-management' },
250
+ implementation: { start: '06-implementation', end: '09-testing' },
251
+ full: { start: '01-brainstorm', end: '10-deployment' }
252
+ };
253
+
254
+ // Epic Cycles YAML
255
+ const epicPath = path.join(targetDir, 'config', 'epic_cycles.yaml');
256
+ if (fs.existsSync(epicPath)) {
257
+ try {
258
+ const config = yaml.load(fs.readFileSync(epicPath, 'utf8'));
259
+ config.epic_cycles.enabled = info.epicEnabled ?? false;
260
+ if (info.epicEnabled) {
261
+ config.epic_cycles.cycle_config.default_cycles = parseInt(info.epicTotalCycles) || 2;
262
+ const scope = scopes[info.epicScope] || scopes.design;
263
+ config.epic_cycles.cycle_scope.start_stage = scope.start;
264
+ config.epic_cycles.cycle_scope.end_stage = scope.end;
265
+ }
266
+ fs.writeFileSync(epicPath, yaml.dump(config, { lineWidth: -1 }));
267
+ } catch (e) { /* silent */ }
268
+ }
269
+
270
+ // Implementation Order YAML
271
+ const implPath = path.join(targetDir, 'config', 'implementation_order.yaml');
272
+ if (fs.existsSync(implPath)) {
273
+ try {
274
+ const config = yaml.load(fs.readFileSync(implPath, 'utf8'));
275
+ config.implementation_order.current_order = info.implementationOrder ?? null;
276
+ fs.writeFileSync(implPath, yaml.dump(config, { lineWidth: -1 }));
277
+ } catch (e) { /* silent */ }
278
+ }
279
+
280
+ // Requirements Refinement YAML
281
+ const reqPath = path.join(targetDir, 'config', 'requirements_refinement.yaml');
282
+ if (fs.existsSync(reqPath)) {
283
+ try {
284
+ const config = yaml.load(fs.readFileSync(reqPath, 'utf8'));
285
+ config.requirements_refinement.enabled = info.requirementsRefinement ?? true;
286
+ fs.writeFileSync(reqPath, yaml.dump(config, { lineWidth: -1 }));
287
+ } catch (e) { /* silent */ }
288
+ }
289
+
290
+ // UI-UX YAML (Moodboard)
291
+ const uiPath = path.join(targetDir, 'config', 'ui-ux.yaml');
292
+ if (fs.existsSync(uiPath)) {
293
+ try {
294
+ const config = yaml.load(fs.readFileSync(uiPath, 'utf8'));
295
+ if (config.moodboard?.collection_flow) {
296
+ config.moodboard.collection_flow.enabled = info.moodboardEnabled ?? true;
297
+ }
298
+ fs.writeFileSync(uiPath, yaml.dump(config, { lineWidth: -1 }));
299
+ } catch (e) { /* silent */ }
300
+ }
301
+
302
+ // Update progress.json with epic fields
303
+ if (fs.existsSync(progressPath)) {
304
+ try {
305
+ const progress = JSON.parse(fs.readFileSync(progressPath, 'utf8'));
306
+
307
+ // Epic cycle settings
308
+ if (progress.epic_cycle) {
309
+ progress.epic_cycle.enabled = info.epicEnabled ?? false;
310
+ if (info.epicEnabled) {
311
+ progress.epic_cycle.total_cycles = parseInt(info.epicTotalCycles) || 2;
312
+ const scope = scopes[info.epicScope] || scopes.design;
313
+ progress.epic_cycle.scope.start_stage = scope.start;
314
+ progress.epic_cycle.scope.end_stage = scope.end;
315
+ }
316
+ }
317
+
318
+ // Epic context in current_iteration
319
+ if (progress.current_iteration?.epic_context) {
320
+ progress.current_iteration.epic_context.enabled = info.epicEnabled ?? false;
321
+ progress.current_iteration.epic_context.total_cycles = parseInt(info.epicTotalCycles) || 1;
322
+ }
323
+
324
+ // Implementation order
325
+ if (progress.implementation_order) {
326
+ progress.implementation_order.selected = info.implementationOrder ?? null;
327
+ }
328
+
329
+ // Requirements refinement
330
+ if (progress.requirements_refinement) {
331
+ progress.requirements_refinement.active = info.requirementsRefinement ?? true;
332
+ }
333
+
334
+ fs.writeFileSync(progressPath, JSON.stringify(progress, null, 2));
335
+ } catch (e) { /* silent */ }
336
+ }
185
337
  }
186
338
 
187
339
  function generateBriefContent(projectName, info) {
@@ -305,6 +457,32 @@ ${colors.yellow}After creation:${colors.reset}
305
457
  copyRecursiveSync(templateDir, targetDir);
306
458
  log('✓ Template copy complete', 'green');
307
459
 
460
+ // 3.1 Remove any nested .git directories from the copied template
461
+ // This prevents nested git repositories which cause tracking issues
462
+ function removeNestedGitDirs(dir, isRoot = true) {
463
+ if (!fs.existsSync(dir)) return;
464
+
465
+ const items = fs.readdirSync(dir);
466
+ for (const item of items) {
467
+ const itemPath = path.join(dir, item);
468
+ const stat = fs.statSync(itemPath);
469
+
470
+ if (stat.isDirectory()) {
471
+ if (item === '.git' && !isRoot) {
472
+ // Remove nested .git directories (not the root one if it exists)
473
+ fs.rmSync(itemPath, { recursive: true, force: true });
474
+ log(` Removed nested .git from ${path.relative(targetDir, dir)}`, 'yellow');
475
+ } else if (item !== '.git') {
476
+ // Recurse into non-.git directories
477
+ removeNestedGitDirs(itemPath, false);
478
+ }
479
+ }
480
+ }
481
+ }
482
+
483
+ removeNestedGitDirs(targetDir);
484
+ log('✓ Cleaned up nested .git directories', 'green');
485
+
308
486
  // 4. Initialize progress.json
309
487
  const progressTemplatePath = path.join(targetDir, 'state', 'progress.json.template');
310
488
  const progressPath = path.join(targetDir, 'state', 'progress.json');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-symphony",
3
- "version": "0.0.9",
3
+ "version": "0.0.11",
4
4
  "description": "Multi-AI Orchestration Framework - Create new projects with 10-stage development workflow",
5
5
  "type": "module",
6
6
  "bin": {
@@ -0,0 +1,41 @@
1
+ # Synthesis Consolidator Skill
2
+
3
+ Consolidates outputs from parallel AI execution into a unified result.
4
+
5
+ ## Overview
6
+
7
+ When multiple AI models execute the same task in parallel, this skill helps Claude Code synthesize their outputs into a single, high-quality deliverable.
8
+
9
+ ## Trigger
10
+
11
+ - `/synthesize` command
12
+ - Auto-triggered after parallel execution completes
13
+
14
+ ## Workflow
15
+
16
+ 1. **Collect** - Gather all parallel model outputs
17
+ 2. **Analyze** - Identify commonalities and consensus
18
+ 3. **Evaluate** - Compare differences and unique insights
19
+ 4. **Synthesize** - Create unified output
20
+ 5. **Validate** - Verify completeness and quality
21
+
22
+ ## Configuration
23
+
24
+ See `config/ai_collaboration.yaml` for:
25
+ - `consolidation_workflow.synthesizer` - Default: claudecode
26
+ - `consolidation_workflow.quality_threshold` - Default: 0.8
27
+
28
+ ## Parallel-Capable Stages
29
+
30
+ | Stage | Primary Model | Secondary Model |
31
+ |-------|---------------|-----------------|
32
+ | 01-brainstorm | Gemini | ClaudeCode |
33
+ | 03-planning | Gemini | ClaudeCode |
34
+ | 04-ui-ux | Gemini | ClaudeCode |
35
+ | 07-refactoring | Codex | ClaudeCode |
36
+ | 09-testing | Codex | ClaudeCode |
37
+
38
+ ## Output
39
+
40
+ - Final synthesized output: Stage's required output file
41
+ - Synthesis log: `state/collaborations/synthesis_log.md`
@@ -0,0 +1,96 @@
1
+ # Synthesis Consolidator - Claude Code Instructions
2
+
3
+ ## Role
4
+ You are the **Synthesis Consolidator** for parallel AI execution results.
5
+
6
+ ## Protocol
7
+
8
+ ### Step 1: Collect Outputs
9
+ Read all parallel execution outputs:
10
+ - `outputs/output_gemini.md`
11
+ - `outputs/output_codex.md`
12
+ - `outputs/output_claudecode.md`
13
+
14
+ ### Step 2: Analyze Commonalities
15
+ Identify consensus items (present in 2+ outputs):
16
+ - Shared recommendations
17
+ - Common structural patterns
18
+ - Agreed approaches
19
+
20
+ ### Step 3: Evaluate Differences
21
+ For unique contributions:
22
+ | Situation | Action |
23
+ |-----------|--------|
24
+ | Unique + valuable | Include |
25
+ | Unique + questionable | Omit or flag |
26
+ | Conflicts consensus | Document as alternative |
27
+
28
+ ### Step 4: Create Synthesis
29
+ Generate unified output with:
30
+ - Consensus items (high confidence)
31
+ - Integrated unique insights
32
+ - Alternative approaches noted
33
+
34
+ ### Step 5: Validate
35
+ - [ ] All required sections present
36
+ - [ ] No critical information lost
37
+ - [ ] Reads as coherent document
38
+
39
+ ## Output
40
+ Save to stage's required output file and log to `state/collaborations/synthesis_log.md`
41
+
42
+ ## Synthesis Log Format
43
+
44
+ ```markdown
45
+ # Synthesis Log - {{STAGE_NAME}}
46
+
47
+ ## Timestamp
48
+ {{TIMESTAMP}}
49
+
50
+ ## Input Sources
51
+ | Model | Output File | Status |
52
+ |-------|-------------|--------|
53
+ | {{MODEL}} | {{FILE}} | {{STATUS}} |
54
+
55
+ ## Consensus Analysis
56
+ ### High Confidence Items (2+ models agree)
57
+ - {{ITEM}}
58
+
59
+ ### Unique Contributions
60
+ | Source | Contribution | Decision |
61
+ |--------|--------------|----------|
62
+ | {{MODEL}} | {{CONTRIBUTION}} | {{INCLUDED/EXCLUDED}} |
63
+
64
+ ## Quality Metrics
65
+ - Completeness: {{SCORE}}
66
+ - Coherence: {{SCORE}}
67
+ - Coverage: {{SCORE}}
68
+
69
+ ## Final Output
70
+ - File: {{OUTPUT_FILE}}
71
+ - Sections: {{SECTION_COUNT}}
72
+ - Word Count: {{WORD_COUNT}}
73
+ ```
74
+
75
+ ## Conflict Resolution Priority
76
+
77
+ 1. **Factual consistency** - Prefer verifiable facts
78
+ 2. **Technical accuracy** - Prefer correct technical details
79
+ 3. **Completeness** - Include rather than exclude when uncertain
80
+ 4. **Clarity** - Prefer clearer explanations
81
+
82
+ ## Commands
83
+
84
+ ```bash
85
+ # Trigger synthesis for current stage
86
+ /synthesize
87
+
88
+ # Verbose mode with detailed analysis
89
+ /synthesize --verbose
90
+
91
+ # Dry run - show what would be synthesized
92
+ /synthesize --dry-run
93
+
94
+ # Force re-synthesis even if output exists
95
+ /synthesize --force
96
+ ```
@@ -197,6 +197,15 @@ Visualizes context usage, tool activity, and todo progress in the statusline.
197
197
  | `/test` | 09-testing |
198
198
  | `/deploy` | 10-deployment |
199
199
 
200
+ ### Requirements & Design Commands
201
+ | Command | Description |
202
+ |---------|-------------|
203
+ | `/refine` | Interactive requirements refinement (Epic → Feature → Task) |
204
+ | `/refine --validate` | Validate requirements against INVEST criteria |
205
+ | `/moodboard` | Collect design references and analyze design tokens |
206
+ | `/moodboard analyze` | Extract colors, fonts, styles from collected images |
207
+ | `/moodboard skip` | Skip moodboard collection (use AI-generated design) |
208
+
200
209
  ## Skills (Auto-Activated)
201
210
 
202
211
  | Skill | Trigger | Description |
@@ -366,6 +375,19 @@ state/
366
375
  templates/ # State templates
367
376
  ```
368
377
 
378
+ ## Key File Locations
379
+
380
+ Quick reference for frequently accessed files:
381
+
382
+ | File | Location | Description |
383
+ |------|----------|-------------|
384
+ | **Project Brief** | `stages/01-brainstorm/inputs/project_brief.md` | Initial project requirements and scope |
385
+ | **Progress State** | `state/progress.json` | Pipeline progress and current state |
386
+ | **Configuration** | `config/*.yaml` | All configuration files |
387
+ | **HANDOFF** | `stages/XX-stage/HANDOFF.md` | Stage transition documents |
388
+ | **Checkpoints** | `state/checkpoints/` | Saved checkpoint files |
389
+ | **Stage Outputs** | `stages/XX-stage/outputs/` | Generated deliverables per stage |
390
+
369
391
  ## Design Patterns Applied
370
392
 
371
393
  1. **Sequential Workflow Architecture** - Sequential stage definition and auto-progression
@@ -377,6 +399,36 @@ state/
377
399
 
378
400
  ---
379
401
 
402
+ ## MCP Server Selection Guide
403
+
404
+ > Configuration file: `config/mcp_fallbacks.yaml`
405
+
406
+ ### Use Case by MCP Server
407
+
408
+ | MCP Server | Best For | Example Use Cases |
409
+ |------------|----------|-------------------|
410
+ | **Exa Search** | Web research, market analysis | Competitor research, trend analysis, API docs |
411
+ | **Context7** | Code documentation, library references | Framework docs, package APIs, code examples |
412
+ | **Firecrawl** | Deep website scraping | Extracting structured data, full page content |
413
+ | **Notion** | Task management, collaboration | Creating/updating tasks, project tracking |
414
+ | **Figma** | Design token extraction | Colors, typography, component specs |
415
+
416
+ ### Stage-Specific Recommendations
417
+
418
+ | Stage | Primary MCP | Fallback | Notes |
419
+ |-------|-------------|----------|-------|
420
+ | 02-research | Exa Search | Context7 | Use Exa for market data, Context7 for tech docs |
421
+ | 03-planning | Context7 | Exa Search | Architecture patterns, framework best practices |
422
+ | 04-ui-ux | Figma | - | Extract design tokens if Figma file available |
423
+ | 05-task-management | Notion | Markdown files | Falls back to local files if Notion not configured |
424
+
425
+ ### Fallback Conditions
426
+ - **API quota exceeded**: Automatic switch to fallback provider
427
+ - **Response quality insufficient**: Manual switch recommended
428
+ - **Timeout**: Retry with fallback after 30 seconds
429
+
430
+ ---
431
+
380
432
  ## Multi-AI Orchestration
381
433
 
382
434
  > Configuration files: `config/ai_collaboration.yaml`, `config/ai_benchmarking.yaml`
@@ -441,6 +493,50 @@ All defined AI models execute the same task in parallel, and each output is synt
441
493
 
442
494
  ---
443
495
 
496
+ ## Default Parallel Execution
497
+
498
+ ### Parallel Mode is NOW DEFAULT for:
499
+ | Stage | Models | Synthesizer |
500
+ |-------|--------|-------------|
501
+ | 01-brainstorm | Gemini + ClaudeCode | ClaudeCode |
502
+ | 03-planning | Gemini + ClaudeCode | ClaudeCode |
503
+ | 04-ui-ux | Gemini + ClaudeCode | ClaudeCode |
504
+ | 07-refactoring | Codex + ClaudeCode | ClaudeCode |
505
+ | 09-testing | Codex + ClaudeCode | ClaudeCode |
506
+
507
+ ### Execution Policy Configuration
508
+ > Configuration file: `config/ai_collaboration.yaml`
509
+
510
+ ```yaml
511
+ execution_policy:
512
+ default_mode: "parallel"
513
+ stage_classification:
514
+ parallel_capable: [01-brainstorm, 03-planning, 04-ui-ux, 07-refactoring, 09-testing]
515
+ sequential_only: [02-research, 05-task-management, 06-implementation, 08-qa, 10-deployment]
516
+ ```
517
+
518
+ ### Consolidation Workflow
519
+ Claude Code automatically consolidates parallel outputs:
520
+ 1. **Collect** - Gather all model outputs
521
+ 2. **Analyze** - Identify commonalities → HIGH CONFIDENCE
522
+ 3. **Evaluate** - Compare unique contributions
523
+ 4. **Synthesize** - Create final unified output
524
+ 5. **Validate** - Verify completeness and quality
525
+
526
+ ### Synthesis Commands
527
+ ```bash
528
+ /synthesize # Consolidate current stage outputs
529
+ /synthesize --verbose # Show detailed analysis
530
+ /synthesize --dry-run # Preview without writing
531
+ /synthesize --force # Re-synthesize even if output exists
532
+ ```
533
+
534
+ ### Quality Threshold
535
+ - Default: 0.8 (80%)
536
+ - Outputs below threshold trigger review prompt
537
+
538
+ ---
539
+
444
540
  ## Smart HANDOFF System
445
541
 
446
542
  > Configuration files: `config/handoff_intelligence.yaml`, `config/memory_integration.yaml`
@@ -1,6 +1,47 @@
1
1
  # claude-symphony AI Collaboration Configuration
2
2
  # Multi-AI orchestration modes and collaboration strategies
3
3
 
4
+ # Default execution policy for parallel-capable stages
5
+ execution_policy:
6
+ default_mode: "parallel"
7
+
8
+ stage_classification:
9
+ parallel_capable:
10
+ - "01-brainstorm"
11
+ - "03-planning"
12
+ - "04-ui-ux"
13
+ - "07-refactoring"
14
+ - "09-testing"
15
+ sequential_only:
16
+ - "02-research"
17
+ - "05-task-management"
18
+ - "06-implementation"
19
+ - "08-qa"
20
+ - "10-deployment"
21
+
22
+ # Consolidation workflow - Claude Code synthesis protocol
23
+ consolidation_workflow:
24
+ synthesizer: "claudecode"
25
+
26
+ phases:
27
+ - name: "collect"
28
+ description: "Gather all parallel model outputs"
29
+ - name: "analyze"
30
+ description: "Identify commonalities and consensus"
31
+ - name: "evaluate"
32
+ description: "Compare differences and unique insights"
33
+ - name: "synthesize"
34
+ description: "Create unified output"
35
+ - name: "validate"
36
+ description: "Verify completeness and quality"
37
+
38
+ output:
39
+ storage_path: "state/collaborations/"
40
+ input_pattern: "output_{model}.md"
41
+ synthesis_log: "synthesis_log.md"
42
+
43
+ quality_threshold: 0.8
44
+
4
45
  collaboration_modes:
5
46
  # Parallel Execution: Execute same task with multiple AIs simultaneously and synthesize
6
47
  parallel_execution:
@@ -187,13 +187,13 @@ stage_assignments:
187
187
 
188
188
  "03-planning":
189
189
  primary: "gemini"
190
- secondary: null
191
- collaboration: null
190
+ secondary: "claudecode"
191
+ collaboration: "parallel"
192
192
 
193
193
  "04-ui-ux":
194
194
  primary: "gemini"
195
- secondary: null
196
- collaboration: null
195
+ secondary: "claudecode"
196
+ collaboration: "parallel"
197
197
 
198
198
  "05-task-management":
199
199
  primary: "claudecode"
@@ -208,7 +208,7 @@ stage_assignments:
208
208
  "07-refactoring":
209
209
  primary: "codex"
210
210
  secondary: "claudecode"
211
- collaboration: "sequential"
211
+ collaboration: "parallel"
212
212
 
213
213
  "08-qa":
214
214
  primary: "claudecode"
@@ -217,8 +217,8 @@ stage_assignments:
217
217
 
218
218
  "09-testing":
219
219
  primary: "codex"
220
- secondary: null
221
- collaboration: null
220
+ secondary: "claudecode"
221
+ collaboration: "parallel"
222
222
 
223
223
  "10-deployment":
224
224
  primary: "claudecode"