perspective-swarm
Enable rapid multi-perspective brainstorming through parallel agent execution, producing a confidence-weighted synthesis that surfaces convergent insights and divergent alternatives.
Protocol Status
Document type: Protocol specification Orchestrator: brainstorming-pm/SKILL.md
This document defines the perspective-swarm protocol: the stages, archetypes, state machine, quality gates, and operational parameters for multi-perspective brainstorming. It is a declarative specification, not an executable skill.
For orchestration and execution, see brainstorming-pm/SKILL.md , which handles session management, tool selection, agent delegation, model selection, and user interaction.
Handoff metadata (discovery, categories, payload schema) is defined in the brainstorming-pm skill, which is the discoverable entry point for this workflow.
When to Use
-
You need diverse viewpoints on a decision, problem, or creative challenge
-
Time is limited (15-30 minutes) but you want rigorous multi-angle analysis
-
You want to identify both consensus themes and unique insights
-
The problem benefits from optimistic, critical, analytical, innovative, and pragmatic lenses
When NOT to Use
-
Deep literature review needed (use lit-pm instead)
-
Single-perspective analysis is sufficient
-
Implementation or execution is the goal (this produces analysis only)
-
Domain-specific expertise required (this uses general archetypes)
Workflow Overview
User
Prompt
|
+-------v-------+
| Stage 1: | Frame problem, validate input
| FRAMING | Generate 5 agent prompts
+-------+-------+
|
| [Optional: User confirms framing]
|
+------------------v-----------------------------------+ | Stage 2: DIVERGING (Parallel) | | +-----+ +-----+ +-----+ +-----+ +-----+ | | |Opt. | |Crit.| |Anal.| |Innov| |Prag.| | | +--+--+ +--+--+ +--+--+ +--+--+ +--+--+ | +----+-------+-------+-------+-------+-----------------+ +-------+-------+-------+-------+ | +------v------+ | Stage 3: | Identify convergent/divergent insights | CONVERGING | Apply confidence weighting +------+------+ | +------v------+ | Stage 4: | Present synthesis | OUTPUT | Accept / Refine / Handoff to workflow +-------------+
Detailed Workflow
Stage 1: Problem Framing (2-5 minutes)
State: FRAMING
Validate user prompt:
-
Minimum 10 characters
-
Maximum 1000 characters
-
At least one clear question or challenge
-
No prohibited content
Identify problem type: decision | creative | analytical | strategic
Reframe challenge in neutral language (no leading/biasing)
Generate 5 archetype-specific prompts (see references/persona-archetypes.md)
Create session directory: /tmp/swarm-session-{YYYYMMDD}-{HHMMSS}-{uuid4-8char}/
-
{uuid4-8char} is the first 8 characters of a uuid4 (e.g., a1b2c3d4 )
Create session lock: Write .session.lock file with workflow_id and timestamp
-
Lock prevents concurrent access to same session
-
Stale locks (> 30 minutes) may be overwritten
Save framing output: stage-1-framing.yaml
Quality Gate:
-
Problem clearly articulated
-
All 5 agent prompts generated
-
No leading/biasing language in framing
Optional Checkpoint: Present reframed challenge to user before proceeding to Stage 2. User can:
-
Approve and continue
-
Refine the framing
-
Abort
Stage 2: Parallel Perspective Generation (5-15 minutes)
State: DIVERGING
The orchestrator launches 5 parallel agents via Task tool. Each agent:
Adopts archetype lens (Optimist, Critic, Analyst, Innovator, Pragmatist)
Conducts brief research: 1-2 WebSearch queries
-
On WebSearch failure: proceed with reasoning-only, reduce confidence by 1
Generates perspective report (target ~2000 tokens):
-
Key insight (1-2 sentences)
-
Supporting evidence (2-3 bullet points with sources)
-
Confidence level (1-5, self-assessed)
-
Blind spots acknowledged
Saves output: perspectives/{archetype}.md
Token Budget Note: The 2000 token target is advisory. Agents are instructed to target ~2000 tokens but enforcement is prompt-based only. Slight overages are acceptable; significant overages should be flagged in validation warnings.
Timeouts:
-
Per-agent: 10 minutes
-
Stage total: 15 minutes
-
On timeout: Mark incomplete, proceed with available
Quality Gate (per agent):
-
Key insight present (required)
-
At least 1 evidence point (required)
-
Confidence level 1-5 (required, clamp if out of range)
-
Blind spots acknowledged (required)
Minimum agents required: 4 of 5
On < 4 agents: The orchestrator presents user options:
PERSPECTIVE GENERATION INCOMPLETE: Only {N} of 5 agents completed
Completed: {list} Failed: {list with reasons}
Options: (A) Retry failed agents (estimated +5 min) (B) Proceed with {N} perspectives (reduced diversity) (C) Abort workflow
Stage 3: Convergence Analysis & Synthesis (5-10 minutes)
State: CONVERGING
During Stage 3, the orchestrator executes two parallel tracks: (A) convergence analysis (primary), and (B) workflow discovery (secondary, non-blocking). See references/workflow-discovery.md for parallel execution details.
The orchestrator collects all perspective outputs
The convergence analysis identifies convergent insights:
-
Themes appearing in 2+ perspectives
-
Apply confidence weighting (see references/convergence-algorithm.md)
Identify divergent insights:
-
Unique insights from single perspectives
-
Attribute to originating archetype
Handle missing archetypes (if 4 agents):
Missing Compensation
Optimist Add: "Consider opportunities we may be missing"
Critic Add explicit risk caveat section
Analyst Note reduced quantitative rigor
Innovator Note potentially conservative recommendations
Pragmatist Flag implementation feasibility as uncertain
Conflicts are presented neutrally:
-
All sides shown with evidence strength noted
-
No forced artificial consensus
The orchestrator generates the synthesis document: stage-3-synthesis.md
Quality Gate:
-
All available perspectives incorporated
-
At least 2 convergent insights OR explicit "portfolio of options" framing
-
At least 3 divergent insights captured
-
Conflicts presented neutrally
-
Blind spots aggregated
Stage 4: User Review & Optional Handoff
State: AWAITING_USER
Pre-requisite: Discovery results available from Stage 3 (cached in available-workflows.yaml ). If Stage 3 discovery did not complete, the orchestrator runs discovery synchronously (5-second timeout) before presenting options.
The orchestrator presents synthesis to user with options:
Synthesis Complete
[Executive summary]
Core Options: (A) Accept - Workflow complete (B) Refine - Provide feedback, return to Stage 3
Continue with another workflow: {If handoff-eligible workflows found, display top 3-5 by relevance}
Example output when workflows available: (C) [research] lit-pm - Comprehensive literature review (4-24 hours) (D) [implementation] programming-pm - Software implementation (2-8 hours) (E) [creative] pov-expansion - Cross-domain perspective analysis (2-3 hours)
Example output when NO workflows found:
No handoff-eligible workflows detected.
To enable handoffs, add handoff: metadata to skill SKILL.md files.
See: references/workflow-discovery.md
Select an option:
On Accept: State -> COMPLETED On Refine: State -> CONVERGING (with user feedback) On Handoff (C/D/E...):
-
Validate selected workflow still available
-
Generate handoff-payload.yaml (see references/handoff-schema.md)
-
Invoke target skill with payload path
-
State -> COMPLETED (on successful handoff)
Relevance Scoring: Workflows are ranked by relevance to synthesis content:
-
Category match to problem_type: +3 points
-
High uncertainty signals + research category: +2 points
-
Implementation keywords + implementation category: +2 points
-
Low convergence + research category: +2 points
-
Project-scope workflows: +1 point priority bonus
Session Directory Structure
/tmp/swarm-session-{YYYYMMDD}-{HHMMSS}-{uuid4-8char}/ ├── .session.lock # Prevents concurrent access ├── workflow-state.yaml # Resumable state ├── stage-1-framing.yaml # Problem framing output ├── perspectives/ # Parallel outputs │ ├── optimist.md │ ├── critic.md │ ├── analyst.md │ ├── innovator.md │ └── pragmatist.md ├── stage-3-synthesis.md # Final synthesis ├── available-workflows.yaml # Discovered handoff targets (cached) └── handoff-payload.yaml # (if handoff requested)
State Machine
States: INITIALIZED | FRAMING | DIVERGING | CONVERGING | AWAITING_USER | COMPLETED | FAILED | ABORTED
Transitions: INITIALIZED -> FRAMING : on session start FRAMING -> DIVERGING : on framing complete (+ optional user confirmation) DIVERGING -> CONVERGING : on min 4 agents complete DIVERGING -> FAILED : on < 4 agents AND user chooses abort CONVERGING -> AWAITING_USER: on synthesis complete AWAITING_USER -> CONVERGING: on user refinement request AWAITING_USER -> COMPLETED : on user accept AWAITING_USER -> COMPLETED : on successful lit-pm handoff ANY -> ABORTED : on user abort ANY -> FAILED : on unrecoverable error
Note: The state machine has 8 states total (INITIALIZED, FRAMING, DIVERGING, CONVERGING, AWAITING_USER, COMPLETED, FAILED, ABORTED).
Session Lock Protocol
On session initialization:
-
Create .session.lock file in session directory
-
Write content: {workflow_id}\n{ISO8601_timestamp}
-
Before any operation, verify lock file matches current workflow_id
On resume detection:
-
Check if .session.lock exists
-
If lock timestamp > 30 minutes old, consider stale and overwritable
-
If lock is fresh (< 30 minutes), warn user that session may be in use
.session.lock format
workflow_id: swarm-20260204-183000-a1b2c3d4 locked_at: 2026-02-04T18:30:00Z
Error Handling
WebSearch Failure
classification: transient: retry after 30 seconds rate_limited: exponential backoff (30s, 60s, 120s) no_results: proceed without search, note "limited research" service_down: proceed with reasoning-only, reduce confidence by 1
fallback_behavior:
- Agent proceeds with pure reasoning
- Marks output as "unverified by external sources"
- Auto-reduces confidence by 1 level
Session Recovery
On invocation, the orchestrator checks for existing sessions:
Found incomplete session from {timestamp}: {original_prompt} Session state: {stage} - {status}
Options: (A) Resume from {checkpoint} (B) Start fresh (archives previous) (C) Abort
Resource Limits
resource_limits: max_concurrent_agents: 5 max_websearch_per_agent: 2 max_webfetch_per_agent: 1 target_tokens_per_perspective: 2000 # Advisory, not enforced session_expiry: 24 hours
Timeout Configuration
Stage Timeout Exceeded Action
1 (Framing) 5 min Escalate to user
2 (Perspectives) 15 min total Proceed with available (min 4)
2 (per agent) 10 min Mark incomplete, proceed
3 (Synthesis) 10 min Deliver partial synthesis
4 (User Review) No timeout User-controlled
Global 45 min Safety ceiling, escalate
Quality Gates Summary
Gate Stage Pass Threshold
Input Validation 1 Prompt meets criteria
Framing 1 All checks pass
Per-Agent 2 4/4 required elements
Minimum Coverage 2
= 4 of 5 agents
Synthesis 3 All checks pass
User Approval 4 Accept, Refine, or Handoff
Dependencies
-
Any skill with handoff: metadata is a valid handoff target
-
Discovery algorithm documented in: references/workflow-discovery.md
-
Handoff schema documented in: references/handoff-schema.md
-
Adapts patterns from: parallel-coordinator , synthesizer
Known handoff-eligible skills (as of implementation):
-
lit-pm
-
Comprehensive literature review [research]
-
programming-pm
-
Software implementation [implementation]
-
pov-expansion
-
Cross-domain perspectives [creative, analysis]
Orchestration
This protocol is designed to be executed by the brainstorming-pm orchestrator skill. See brainstorming-pm/SKILL.md for:
-
Execution instructions and stage-by-stage orchestration
-
Tool selection (Task tool for Stage 2, inline for Stage 3)
-
Model selection guidance
-
Delegation patterns and quality gate evaluation
Model Selection
Model selection guidance for each workflow component is documented in brainstorming-pm/references/model-selection.md . Summary:
Component Current Target
Orchestrator Inherited Claude Opus 4.5
Perspective Agents Inherited Claude Sonnet 4.5
LLM Grouping Inherited (inline) Claude Haiku 4.5
Notes
Parallel Independence: Perspective agents MUST NOT see each other's outputs during Stage 2. This preserves diversity and prevents premature convergence (research-validated).
No Forced Consensus: The synthesis should present conflicts neutrally. Disagreement between perspectives is valuable signal, not noise.
Divergent Value: Unique insights from a single perspective may be the most valuable output. Do not penalize or bury non-convergent views.
Research Limitation: This skill provides rapid analysis (15-30 min), not comprehensive research. For deep dives, hand off to lit-pm.
References
-
persona-archetypes.md - Archetype definitions
-
convergence-algorithm.md - Weighting logic
-
workflow-state-schema.md - Session state format
-
handoff-schema.md - Generic handoff payload format (v2.0)
-
workflow-discovery.md - Handoff target discovery algorithm
-
brainstorming-pm/SKILL.md - Orchestrator skill
-
model-selection.md - Model selection guidance
Examples
- product-decision-example.md - Complete walkthrough