Claude-skill-registry decompose-task

Decompose a phase plan into atomic beads and sub-beads. Use when breaking down a phase into tasks, when the user mentions "decompose" or "break down", when creating beads from a plan, or when structuring work for parallel execution.

install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/decompose-task" ~/.claude/skills/majiayu000-claude-skill-registry-decompose-task && rm -rf "$T"
manifest: skills/data/decompose-task/SKILL.md
source content

Decompose Task — Orchestrator

Break a phase into atomic beads and sub-beads for agent execution.

Pattern: This skill uses the orchestrator-subagent pattern. Each phase runs in a fresh context to prevent "context bombing" on large phases. See

docs/guides/ORCHESTRATOR_SUBAGENT_PATTERN.md
.

When This Applies

SignalAction
User says "decompose" or "break down"Run full protocol
Have a phase plan readyDecompose into beads
User says "/decompose-task"Run full protocol
Need to structure work for agentsCreate bead hierarchy

Tool Reference

File Operations

ToolPurpose
Read(phase_doc_path)
Read phase document
Read(north_star_path)
Read North Star for context
Write(file_path, content)
Write manifest, reports

Beads (Task Tracking)

CommandPurpose
bd create --title "..." --body "..."
Create parent bead
bd create --parent <id> --title "..."
Create sub-bead
bd dep add <child> <blocker>
Set dependency
bd list --json
List all beads

BV (Graph Intelligence)

CommandPurpose
bv --robot-suggest
Find missing dependencies
bv --robot-plan
Validate execution order
bv --robot-alerts
Check for risks/cycles

Sub-Bead Suffix Convention

SuffixPurpose
.1
Schema/types/models
.2-.3
Core implementation
.4-.8
Tests
.9
Integration/wiring
.10
Documentation

Architecture

┌─────────────────────────────────────────────────────────────────┐
│                  DECOMPOSE-TASK ORCHESTRATOR                     │
│  - Creates session: sessions/decompose-{timestamp}/              │
│  - Manages TodoWrite state                                       │
│  - Spawns subagents with minimal context                         │
│  - Passes manifest (not phase doc) to Create Beads phase         │
└─────────────────────────────────────────────────────────────────┘
                              │
         ┌────────────────────┼────────────────────┐
         │                    │                    │
         ▼                    ▼                    ▼
┌─────────────────┐  ┌─────────────────┐  ┌─────────────────┐
│  Understand     │  │    Manifest     │  │  Create Beads   │
│  agents/        │  │  agents/        │  │  agents/        │
│  understand.md  │  │  manifest.md    │  │  create-beads.md│
└────────┬────────┘  └────────┬────────┘  └────────┬────────┘
         │                    │                    │
    01_understanding     02_manifest.md      03_beads_created
         │                    │                    │
         └────────────────────┼────────────────────┘
                              │
         ┌────────────────────┼────────────────────┐
         ▼                    ▼
┌─────────────────┐  ┌─────────────────┐
│  Dependencies   │  │    Validate     │ → Ready for execution
│  agents/        │  │  agents/        │
│  dependencies.md│  │  validate.md    │
└────────┬────────┘  └────────┬────────┘
         │                    │
    04_dependencies      05_validation

Subagents

PhaseAgentInputOutput
1
agents/understand.md
phase_docgoals, components, ambiguities
2
agents/manifest.md
understandinglossless item list
3
agents/create-beads.md
manifest (NOT phase doc)parent + sub-beads
4
agents/dependencies.md
beads createddependency graph
5
agents/validate.md
dependenciesvalidation report

Why Subagents for Decomposition

The "Create Beads" phase is the most lossy. When an agent reads a 1000-line phase doc directly, it summarizes. With subagents:

MonolithicSubagent Pattern
Agent reads phase doc, summarizesManifest captures everything first
Create Beads sees summarized versionCreate Beads sees manifest (lossless)
"4 tests for X"Actual test code in manifest
Context bombingFresh context per phase

Key insight: The manifest becomes the source of truth. Create Beads never reads the original phase doc—it reads the manifest.


Execution Flow

1. Setup (Orchestrator)

1. Create session directory:
   mkdir -p sessions/decompose-{timestamp}

2. Initialize TodoWrite with phases:
   - [ ] Phase 1: Understand
   - [ ] Phase 2: Manifest
   - [ ] Phase 3: Create Beads
   - [ ] Phase 4: Dependencies
   - [ ] Phase 5: Validate

3. Gather inputs:
   - phase_doc_path: Path to phase document
   - north_star_path: Path to North Star Card

2. Phase 1: Understand

Spawn:

agents/understand.md

Input:

{
  "phase_doc_path": "PLAN/phase-2.md",
  "session_dir": "sessions/decompose-{timestamp}",
  "north_star_path": "PLAN/00_north_star.md"
}

Output: understanding_path + goals + ambiguities

3. Phase 2: Manifest

Spawn:

agents/manifest.md

Input:

{
  "session_dir": "sessions/decompose-{timestamp}",
  "understanding_path": "<from Phase 1>",
  "phase_doc_path": "PLAN/phase-2.md"
}

Output: manifest_path + item counts + gaps

4. Phase 3: Create Beads (CRITICAL)

Spawn:

agents/create-beads.md

Input:

{
  "session_dir": "sessions/decompose-{timestamp}",
  "manifest_path": "<from Phase 2>",
  "north_star_path": "PLAN/00_north_star.md",
  "phase_name": "Phase 2: User Auth"
}

CRITICAL: Input is

manifest_path
, NOT
phase_doc_path
. The manifest is the lossless source of truth.

Output: beads_created_path + bead IDs

5. Phase 4: Dependencies

Spawn:

agents/dependencies.md

Input:

{
  "session_dir": "sessions/decompose-{timestamp}",
  "beads_created_path": "<from Phase 3>"
}

Output: dependencies_path + execution order

6. Phase 5: Validate

Spawn:

agents/validate.md

Input:

{
  "session_dir": "sessions/decompose-{timestamp}",
  "dependencies_path": "<from Phase 4>",
  "manifest_path": "<from Phase 2>"
}

Output: validation_path + ready_for_execution

7. Finalize (Orchestrator)

  1. Update TodoWrite (all phases complete)
  2. If validation failed, report issues
  3. Output summary to user

Templates

Located in

.claude/templates/planning/
:

  • content-manifest.md
    — Pre-decomposition checklist
  • sub-bead-structure.md
    — Standard suffix pattern
  • decompose-output.md
    — Output summary format

1. Understand

Read the phase. Identify:

  • Goal
  • Components/files
  • Dependencies (what must exist first)
  • Deliverables (how we know it's done)

If vague → ask for clarification before decomposing.


2. Manifest

Use content-manifest template. List everything:

  • Components
  • Files to create/modify
  • Tests required
  • Dependencies
  • Acceptance criteria

3. Create Beads

Terminology Clarification

TermWhen CreatedPurpose
Phase/Epic beadPlanningContainer for a phase's work
Task beadsPlanningIndividual work items under a phase
ADaPT sub-beadsExecution (after 3 failures)Decompose failing task

Phase/Epic bead (container for the phase):

bd create "Phase N: <Title>" -t epic -p 1 -d '<description>'

Task beads (the actual work items):

bd create "<Task title>" --parent <phase-id> --priority 1 -d '<Full description>'

Note: Task beads use suffixes

.1
,
.2
, etc. for organization. This is DIFFERENT from ADaPT sub-beads which are created when execution fails. See
templates/planning/sub-bead-structure.md
for ADaPT.

Critical Rules

RuleWhy
LOSSLESSEvery detail from phase must appear in a sub-bead
FULL CODEComplete code with all imports, not snippets
FULL TESTSActual test code, not "4 tests for X"
NO SUMMARIZINGCopy verbatim, don't paraphrase
STANDALONEEach sub-bead executable without referencing others
NORTH STARCopy North Star Card into every sub-bead

4. Set Dependencies

bd dep add <child-id> <blocker-id> --type blocks

Common pattern:

  • Schema (.1) → blocks → Implementation (.2, .3)
  • Implementation → blocks → Tests (.4-.8)
  • All sub-beads → block → Parent completion

5. Validate

bv --robot-suggest   # Duplicates, missing deps, cycle breaks
bv --robot-plan      # Can work proceed in order?
bv --robot-alerts    # Stale, cascades, drift signals

Fix issues before agents start executing.


Sizing Guidelines

MetricTarget
Sub-bead size~500 lines
Work duration30-120 min
ResponsibilitySingle thing done well
TestabilityIndependently verifiable

If too large → decompose further.


When to STOP and Ask

  1. Phase too vague — Can't identify concrete deliverables
  2. Phase too large — Would result in 20+ sub-beads (split phase)
  3. Unclear dependencies — Don't know what must exist first
  4. Multiple valid approaches — Need architectural decision first

Task Bead Suffix Convention (Planning-Time)

IMPORTANT DISTINCTION:

  • Planning-time task beads (this section): Created upfront when decomposing phases
  • ADaPT sub-beads: Created ONLY when execution fails after 3 iterations

Both use the same

.1
,
.2
naming, but serve different purposes. See
.claude/templates/planning/sub-bead-structure.md
for ADaPT sub-beads.

SuffixPurpose
.1
Schema/types/models
.2-.3
Core implementation
.4-.8
Tests
.9
Integration/wiring
.10
Documentation (if needed)

Example: For epic

user-auth
(Phase bead):

  • user-auth.1
    → User model schema (task bead)
  • user-auth.2
    → JWT validation logic (task bead)
  • user-auth.3
    → Session management (task bead)
  • user-auth.4
    → Unit tests for JWT (task bead)
  • user-auth.5
    → Integration tests (task bead)

If

user-auth.2
fails after 3 iterations during execution:

  • user-auth.2.1
    → ADaPT sub-bead for specific failing component

Anti-Patterns

Don'tDo
Summarize: "4 tests for validation"Include full test code
Reference elsewhere: "See phase plan"Copy verbatim
Skip imports: Partial codeFull runnable code
Huge beads: 2000+ linesSplit further
Forget tests: Implementation without .4-.8Always include

Output Format

Use decompose-output template. Include:

  • Parent bead ID
  • Sub-beads table with IDs, titles, estimates, dependencies
  • Verification checklist
  • Next steps

See Also

  • bead-workflow/
    — Bead lifecycle
  • .claude/templates/planning/
    — Templates
  • docs/workflow/DECOMPOSITION.md
    — Full guide