Double-Diamond Multi-Agent Orchestration #
The double-diamond skill coordinates complex, high-ambiguity initiatives through the proven Double Diamond framework, preceded by an Inception alignment phase. It leverages parallel subagents with context isolation to thoroughly explore the problem space before committing to solution-space implementation.
INCEPTION PHASE
(Pre-Diamond Alignment)
/grill-me User Interview
Establish Shared Understanding
β
βΌ
DIAMOND 1: PROBLEM SPACE DIAMOND 2: SOLUTION SPACE
(Research & Exploration) (Creation & Verification)
/--- Discovery (Diverge) ---\ /--- Development (Diverge) ---\
/ Parallel `research` sub- \ / Parallel creation sub- \
/ agents explore landscape, \ / agents craft disjoint \
Start > constraints & prior art > Brief > sections/modules in parallel > Delivery
\ / Gate \ / (Gates)
\--- Definition (Converge) --/ \--- Delivery (Converge) ----/
Synthesize findings into Holistic review, integration,
a Foundation Document and quality gate verification
π Universal Domain Mapping #
Double Diamond adapts seamlessly across technical, creative, and analytical domains:
| Phase | Software Engineering | Writing & Publishing | Legal & Policy Research | Product & Strategy |
|---|---|---|---|---|
| 0. Inception | Stack, constraints, latency, scope | Audience, tone, thesis, length | Jurisdiction, case theory, facts | Market, user persona, success metrics |
| 1. Discover (Diverge) | Codebase, APIs, edge cases | Background research, angles, data | Precedents, statutes, case law | Competitor analysis, customer interviews |
| 2. Define (Converge) | Technical Specification | Structured Editorial Outline | Legal Brief / Argument Structure | PRD / Feature Specification |
| Steering Gate | Approve architecture & trade-offs | Approve thesis & outline | Approve legal theory & approach | Sign off on product direction |
| 3. Develop (Diverge) | Parallel module implementation | Parallel chapter/section drafting | Parallel argument/motion drafting | Parallel prototype/stream exploration |
| 4. Deliver (Converge) | Build, tests, lint, spec compliance | Fact-check, style, voice, flow | Citation audit, counter-arguments | Executive synthesis, launch readiness |
β‘ Core Principles & Operational Rules #
- Pre-Diamond Inception (Alignment Gate):
- Before launching research divergence, the Coordinator executes an Inception phase via the
/grill-meinteractive interview protocol (usingask_question). - The Coordinator explores the existing environment/context first, then interviews the user about goals, constraints, non-negotiables, target audience, and deliverable modality.
- Before launching research divergence, the Coordinator executes an Inception phase via the
- Two Distinct Diamond Phases (Problem Space vs. Solution Space):
- Diamond 1 (Problem Space): Focuses exclusively on reconnaissance, constraint mapping, dependency analysis, and definition. No final deliverable code or prose is authored during Diamond 1.
- Diamond 2 (Solution Space): Focuses on parallel creation against the approved definition, followed by rigorous quality gating.
- Context Isolation via Subagents:
- Deep exploration and multi-track creation happen in isolated subagent contexts (
researchfor read-only exploration,selffor creation). This prevents context pollution and hallucination in the Coordinator's session.
- Deep exploration and multi-track creation happen in isolated subagent contexts (
- Mandatory User Steering Gate (Human-in-the-Loop Alignment):
- Between Diamond 1 and Diamond 2, the Coordinator halts to present the synthesized Foundation Document (Spec, Outline, Brief, or PRD) and trade-offs to the user for explicit review and confirmation.
- Disjoint Work Allocation (Zero Collision):
- In Diamond 2 (Development), parallel creator subagents receive strictly disjoint assignments (e.g., distinct source files, separate article sections, independent legal claims) to prevent overwrite collisions.
- Domain-Specific Delivery Quality Gates:
- Work is not delivered until all domain-specific quality gates pass: structural integrity, localized unit/section verification, holistic consistency, and compliance with the approved Foundation Document.
π― Agent Budget & Degree of Parallelism (DOP) #
- Definition: Agent Budget is synonymous with Degree of Parallelism (DOP). It defines the maximum number of active, concurrent subagents allowed to execute at the exact same time.
- Active vs. Past Capacity: Completed or terminated subagents do not consume budget. The budget applies strictly to currently running subagents. When a subagent completes its work, its concurrency slot is immediately freed.
- Elastic Scaling: While the baseline default is \text{DOP} = 4, the framework scales elastically to any user-requested budget (e.g., \text{DOP} = 10, 20, 50+) for massive parallel surveys, parameter sweeps, or multi-module initiatives.
- High-DOP High-Signal Mandate (Micro-Probe Rule): When operating with elevated concurrency (\text{DOP} \ge 8), subagents must act as focused micro-probes. The Coordinator instructs subagents to return dense, high-signal, structured summaries (\le 150 words or tabular format) rather than verbose essays, enabling clean Map-Reduce synthesis without context dilution.
Recommended Baseline Sizing: #
| Initiative Scale | Agent Budget (\text{DOP}) | Active Discovery Workers | Active Creation Workers | Typical Scope |
|---|---|---|---|---|
| Focused / Targeted | 2 | 2 (Landscape + Standards) | 2 (Core + Surface) | Single module, short article, targeted feature |
| Standard (Default) | 4 | 4 (Landscape, Standards, Edge Cases, Comparative) | 4 (WPs 1β4 disjoint modules/sections) | Multi-module service, comprehensive whitepaper, PRD |
| Complex / Deep | 6β8+ | 6β8+ (Subsystem reconnaissance / micro-probes) | 6β8+ (Distributed package authors) | Full architectural rewrite, multi-chapter publication |
| Massive Swarm | 20β50+ | 20β50+ (Broad API surveys, micro-benchmarks, fuzzing) | 20β50+ (Massive parallel module/asset generation) | Wide ecosystem sweeps, multi-file migrations |
π‘ Non-Blocking Coordinator & Reactive Concurrency #
The Coordinator is the primary conversational interface and strategic conductor. It must remain permanently unblocked to respond to user messages at any point during execution.
- Role Separation (Delegation over Execution):
- The Coordinator orchestrates, synthesizes, and interfaces with the user. It never blocks itself with long, sequential manual executionβheavy exploration and drafting are delegated to subagents.
- Fire-and-Yield Concurrency:
- When the Coordinator spawns subagents via
invoke_subagent, it immediately halts tool calls to end its turn. It never loops, sleeps, or polls.
- When the Coordinator spawns subagents via
- Always Unblocked for User Queries:
- Because the Coordinator never enters busy-wait polling loops, it is always available to process incoming user messages while subagents work in the background:
- Status Inquiries: The Coordinator can immediately provide progress updates or inspect active workers via
manage_subagents (Action="list"). - In-Flight Steering / Scope Changes: If the user provides new constraints or changes requirements mid-run, the Coordinator can steer active subagents via
send_messageor cancel/restart them viamanage_subagents (Action="kill").
- Status Inquiries: The Coordinator can immediately provide progress updates or inspect active workers via
- Because the Coordinator never enters busy-wait polling loops, it is always available to process incoming user messages while subagents work in the background:
- Automatic Reactive Wakeup:
- When subagents finish their tasks, the messaging platform automatically wakes up the Coordinator with their full results.
π§ The 6-Step Double-Diamond Workflow #
1. Step 0: Inception (Pre-Diamond Alignment) #
- Coordinator activates the
/grill-meprotocol, systematically interviewing the user one decision node at a time viaask_question. - Explores existing materials first, then clarifies scope boundaries, deliverable modality, non-negotiables, and user preferences.
- Reference Guide: Read
references/inception_phase.mdfor interview patterns and decision-tree traversal.
2. Step 1: Discover (Diamond 1 Divergence) #
- Coordinator decomposes the problem space into up to \text{DOP} orthogonal exploration vectors (e.g., Landscape reconnaissance, Standards & APIs, Constraints & Failure modes, Prior art).
- Spawns parallel
researchsubagents usinginvoke_subagentand immediately yields execution. - Reference Guide: Read
references/research_phase.mdfor vector decomposition and prompt templates.
3. Step 2: Define (Diamond 1 Convergence) #
- Coordinator synthesizes research reports into a unified Foundation Document (Technical Specification, Editorial Outline, Legal Brief, or PRD).
- Establishes system contracts, interfaces, chapter structure, or argument trees, alongside disjoint work package allocations.
- Document Template: Populate
assets/specification_template.mdwith research synthesis and work breakdowns.
4. Step 3: User Steering Gate (Interactive Alignment) #
- Coordinator presents the executive summary, draft Foundation Document, and architectural/editorial trade-offs to the user.
- Solicits user feedback, resolves decision forks, and obtains explicit confirmation before proceeding to creation.
5. Step 4: Develop (Diamond 2 Divergence) #
- Coordinator spawns up to \text{DOP} parallel creator subagents (
selfsubagents with write & tool access) and immediately yields execution. - Each creator receives a strictly disjoint Work Package (WP) and executes localized verification:
- Software: Package-scoped unit tests (
go test ./internal/pkg/...,pytest tests/unit/,npm test -- src/pkg/). - Writing: Section drafting against word count, tone, and source citations.
- Legal/Policy: Argument drafting with case citations and statutory cross-referencing.
- Software: Package-scoped unit tests (
- Reference Guide: Read
references/development_phase.mdfor disjoint allocation and creator prompt templates.
6. Step 5: Deliver (Diamond 2 Convergence & Quality Gating) #
- Coordinator integrates all parallel deliverables into a coherent whole and executes end-to-end verification.
- Failure Recovery Protocol: If any integration test, fact-check, or consistency check fails:
- Isolate the failing component and review specific error traces or discrepancies.
- Launch a targeted repair subagent with the exact context and interface contract.
- Re-verify all delivery gates until 100% pass before presenting the final deliverable to the user.
β οΈ Common Gotchas & Antipatterns #
- Skipping Inception & Assuming User Intent: Never jump straight into research divergence without establishing core scope boundaries, audience, and constraints with the user.
- Premature Implementation in Diamond 1: Never author production code or final prose during the discovery and definition phase. Diamond 1 is strictly for reconnaissance, constraint mapping, and interface/outline design.
- Bypassing the User Steering Gate: Never transition directly from definition into creation without presenting the foundation document and trade-offs to the user for explicit confirmation.
- Overlapping Work Allocations: Never assign two parallel creator subagents to the same file, section, or deliverable slice. Work Packages MUST be strictly disjoint to prevent race conditions and merge conflicts.
- Broad Integration Sweeps during Creation: Creator subagents must perform fine-grained, localized verification (e.g. package unit tests, section fact-checks) rather than whole-project sweeps while sibling subagents are midway through edits.
- Passive Polling Loops: Coordinator agents must NEVER poll subagent statuses in a loop. Spawning subagents is fire-and-yield; rely on automatic reactive wakeup to keep the Coordinator responsive to the user.
π Progressive Disclosure & References #
- Inception Phase Guide:
references/inception_phase.mdβ Pre-diamond alignment, decision-tree traversal, and/grill-meprotocol rules. - Research Phase Guide:
references/research_phase.mdβ Exploration vectors, subagent prompt templates, and synthesis rules across domains. - Development Phase Reference:
references/development_phase.mdβ Delivery execution, specialized workers, and non-blocking coordination. - Specification Template:
assets/specification_template.mdβ Structured specification template for the Define phase.