From Builder
Decompose a requirement into the smallest INDEPENDENTLY-VERIFIABLE units, then harden each with an explicit edge-case enumeration drawn from a fixed taxonomy plus the codebase-specific risks in MEMORY.md. Use during planning (to write the PLAN.md '## Tasks' breakdown) and during implementation/QA (to drive and verify the edge-case coverage map). Proportional by design: a one-line change is ONE task — never explode a trivial spec into dozens of tasks.
How this skill is triggered — by the user, by Claude, or both
Slash command
/builder:micro-decomposeThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Large context is where small edge-case bugs hide: when a change is reasoned about
Large context is where small edge-case bugs hide: when a change is reasoned about all-at-once, the boundary case gets lost behind the architecture. This skill fixes that by (1) splitting a requirement into atomic, independently-verifiable tasks, and (2) forcing every task's edge cases onto the page — never left only in the model's head — so they can be implemented, traced to code/tests, and gated deterministically.
It is used in three places: the planner writes the breakdown into PLAN.md; the
implementer works it task-by-task and records a coverage map; QA verifies that map.
Split a requirement only as far as each unit is independently verifiable — no further.
Each task carries only its own intent + edge-case list, so the implementer can work it with a small, focused context. That small context is the entire point: it is what stops a boundary case from slipping while attention is elsewhere.
For each task, walk this taxonomy and keep the categories that genuinely apply to that task's inputs, state, and contracts. Drop the irrelevant ones — don't pad. Then extend with codebase-specific cases pulled from MEMORY.md's risk map / invariants, and cite them by name so the link is auditable.
For each kept case, state the intended handling, not just the risk. "null order → throw
ArgumentNullException before any state mutation" beats "handle nulls." A case with no
handling is not enumerated — it is a TODO in disguise.
.claude/builder/PLAN.md under ## Tasks, one block
per task (schema below). validate-plan.sh deterministically requires — when
micro_decomposition is on — a ## Tasks section with ≥1 block, and that each block
carries a non-empty Edge cases: list and a Definition of Done:. It names the exact
offending task id when one is incomplete..claude/builder/CHANGELOG.md: every enumerated case → handled at file:line |
covered by <test> | DEFERRED: <reason>. No silent skips — an unhandled case is either
handled or explicitly deferred with a reason.## Tasks block schema (FIXED — the gate parses it)### Task <id> — <short intent>
- Files/functions: <exact repo-relative paths / symbols this unit touches>
- Existing pattern: <the established pattern this follows + callers of any changed symbol>
- Behavior: <precise input → output; the ONE thing this unit does>
- Edge cases:
- <case> → <intended handling> (≥1 bullet; name any MEMORY.md risks you pulled in)
- Definition of Done: <observable, testable completion — includes the edge coverage, not just "compiles">
Files/functions, Existing pattern, and Behavior are doctrine; the deterministic gate
(validate-plan.sh) enforces only the non-empty Edge cases: list and the Definition of Done:.
Explore before writing a task: recall existing patterns, then grep ALL callers of any symbol
you'll change — so each unit follows convention and accounts for its blast radius (no duplicate
implementations, no broken callers). Keep ids stable and short (1, 2, … or 1.1) so the
coverage map and QA can refer back to them. When micro_decomposition is off, skip the breakdown
and use the single-pass flow.
npx claudepluginhub hafizmirhamza276-lab/backend-agentic-marketplace --plugin builderGuides completion of development work by verifying tests, detecting environment, and presenting structured options for merge, PR, or cleanup.
Enforces test-driven development: write failing test first, then minimal code to pass. Use when implementing features or bugfixes.
Guides creation and editing of skills using test-driven development with pressure scenarios and subagents to verify agent compliance.