# Ensemble Solving

Generate multiple diverse solutions in parallel and select the best.

- Repository: https://github.com/mhattingpete/claude-skills-marketplace (689 stars)
- Category: Engineering
- License: Apache-2.0
- Last updated: 2026-07-25
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add mhattingpete/claude-skills-marketplace --skill ensemble-solving -g -a claude-code -y`
Codex: `npx skills add mhattingpete/claude-skills-marketplace --skill ensemble-solving -g -a codex -y`
Cursor: `npx skills add mhattingpete/claude-skills-marketplace --skill ensemble-solving -g -a cursor -y`
Gemini CLI: `npx skills add mhattingpete/claude-skills-marketplace --skill ensemble-solving -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add mhattingpete/claude-skills-marketplace`

## Description

Generate multiple diverse solutions in parallel and select the best. Use for architecture decisions, code generation with multiple valid approaches, or creative tasks where exploring alternatives improves quality.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Ensemble Problem Solving

Generate multiple solutions in parallel by spawning 3 subagents with different approaches, then evaluate and select the best result.

## When to Use

**Activation phrases:**
- "Give me options for..."
- "What's the best way to..."
- "Explore different approaches..."
- "I want to see alternatives..."
- "Compare approaches for..."
- "Which approach should I use..."

**Good candidates:**
- Architecture decisions with trade-offs
- Code generation with multiple valid implementations
- API design with different philosophies
- Naming, branding, documentation style
- Refactoring strategies
- Algorithm selection

**Skip ensemble for:**
- Simple lookups or syntax questions
- Single-cause bug fixes
- File operations, git commands
- Deterministic configuration changes
- Tasks with one obvious solution

## What It Does

1. **Analyzes the task** to determine if ensemble approach is valuable
2. **Generates 3 distinct prompts** using appropriate diversification strategy
3. **Spawns 3 parallel subagents** to develop solutions independently
4. **Evaluates all solutions** using weighted criteria
5. **Returns the best solution** with explanation and alternatives summary

## Approach

### Step 1: Classify Task Type

Determine which category fits:
- **Code Generation**: Functions, classes, APIs, algorithms
- **Architecture/Design**: System design, data models, patterns
- **Creative**: Writing, naming, documentation

### Step 2: Invoke Ensemble Orchestrator

```
Task tool with:
- subagent_type: 'ensemble-orchestrator'
- description: 'Generate and evaluate 3 parallel solutions'
- prompt: [User's original task with full context]
```

The orchestrator handles:
- Prompt diversification
- Parallel execution
- Solution evaluation
- Winner selection

### Step 3: Present Result

The orchestrator returns:
- The winning solution (in full)
- Evaluation scores for all 3 approaches
- Why the winner was selected
- When alternatives might be preferred

The rest: https://github.com/mhattingpete/claude-skills-marketplace/blob/HEAD/engineering-workflow-plugin/skills/ensemble-solving/SKILL.md
