skills/task-decomposer/SKILL.md
Produces phased task boards from feature requests: dependency-mapped work items, parallelization flags, risk flags, edge cases, test matrices. Triggers on: "decompose this feature", "task breakdown with dependencies", "phased implementation plan", "work breakdown structure". NOT for effort estimates, use estimate-calibrator.
npx skillsauth add mathews-tom/armory task-decomposerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Transforms ambiguous feature requests into concrete, implementable task sequences: identifies acceptance criteria, decomposes into tracer-bullet vertical slices with effort sizing, maps dependencies and parallelization, enumerates edge cases, plans testing, labels HITL/AFK readiness, and flags risks — producing a ready-to-execute task board.
When to use this skill vs native decomposition: The base model decomposes features well in an ad-hoc format. Use this skill specifically when you need the structured output: phased task tables with dependency mapping, parallelization flags, risk flags, and integrated test strategy. If you just need a quick list of steps, ask directly without invoking this skill.
| File | Contents | Load When |
| -------------------------------------- | --------------------------------------------------------------- | ------------------------------- |
| references/decomposition-patterns.md | Feature → task decomposition strategies, granularity guidelines | Always |
| references/edge-case-checklist.md | Common edge case categories by domain (web, API, data, CLI) | Edge case identification needed |
| references/dependency-mapping.md | Dependency graph construction, critical path identification | Multi-task breakdown |
| references/sizing-guide.md | Effort estimation guidance (S/M/L), complexity indicators | Effort sizing needed |
Before decomposing, check for repo-local agent context:
docs/agents/domain.md for CONTEXT.md, CONTEXT-MAP.md, and ADR lookup rulesdocs/agents/triage-labels.md for readiness labels when tasks become issuesCONTEXT.md or relevant context-local glossary for task titles and acceptance criteria.out-of-scope/ for durable rejections that may affect scopeContinue if these files are absent, but state that the plan is using inferred vocabulary.
Break the feature into tracer-bullet slices first, then split oversized slices into tasks. Each slice should deliver a narrow but complete path through the affected layers. Avoid horizontal breakdowns where one issue only creates schema, another only creates API, and another only creates UI unless the work is pure infrastructure.
| Granularity | Size | Example | | ----------- | ---------------------------------------------- | ---------------------------- | | Too coarse | "Build the search feature" | Not actionable | | Right level | "Exact-match product search returns results end-to-end" | Single PR, testable | | Too fine | "Import the search library" | Not independently meaningful |
Right granularity test: Each task should be completable in a single PR, testable in isolation, and deliverable independently. A completed vertical slice should be demoable or verifiable without waiting for unrelated slices.
Group tasks into phases:
| Phase | Purpose | Contains | | ----- | ------- | -------- | | Setup | Shared contracts or migrations that unblock slices | Types, schemas, fixtures | | Slice 1 | First end-to-end behavior | Minimal data, logic, API, UI/CLI path | | Slice N | Incremental capability | One user-visible behavior or operational capability | | Hardening | Cross-slice edge cases and quality gates | Performance, security, docs, cleanup |
Label each slice:
For each task, enumerate edge cases:
For each task, identify what to test:
| Test Level | What to Test | Who Writes | | ----------- | ------------------------------------- | ----------------------- | | Unit | Individual functions, pure logic | During implementation | | Integration | Component interactions, API endpoints | After integration phase | | Manual | User flows, visual correctness | After polish phase |
Identify which tasks depend on others:
For each risk, identify mitigation:
| Risk Type | Example | Mitigation | | ------------------- | ----------------------------------- | ----------------------------------------------- | | Technical unknown | "Never used WebSockets before" | Spike/prototype first | | External dependency | "Requires API access we don't have" | Request early, use mocks | | Scope uncertainty | "Requirements may change" | Implement core first, defer edge cases | | Performance risk | "May be slow with 1M rows" | Add benchmark task, define acceptable threshold |
## Task Decomposition: {Feature Name}
### Feature Summary
{One paragraph describing what this feature does and why}
### Acceptance Criteria
- [ ] {Testable statement 1}
- [ ] {Testable statement 2}
- [ ] {Testable statement 3}
### Scope
- **In scope:** {what's included}
- **Out of scope:** {what's excluded}
### Task Breakdown
#### Phase 1: Foundation
| # | Slice / Task | Type | Effort | Dependencies | Parallel |
|---|--------------|------|--------|--------------|----------|
| 1.1 | {task description} | {AFK/HITL} | {S/M/L} | None | Yes |
| 1.2 | {task description} | {AFK/HITL} | {S/M/L} | 1.1 | No |
#### Phase 2: Vertical Slices
| # | Slice / Task | Type | Effort | Dependencies | Parallel |
|---|--------------|------|--------|--------------|----------|
| 2.1 | {end-to-end behavior} | {AFK/HITL} | {S/M/L} | 1.x | Yes |
| 2.2 | {end-to-end behavior} | {AFK/HITL} | {S/M/L} | 1.x | Yes |
#### Phase 3: Hardening
| # | Task | Type | Effort | Dependencies | Parallel |
|---|------|------|--------|--------------|----------|
| 3.1 | {cross-slice quality gate} | {AFK/HITL} | {S/M/L} | 2.x | No |
### Edge Cases
| # | Edge Case | Handling | Phase |
|---|-----------|----------|-------|
| 1 | {edge case} | {how to handle} | {which phase} |
### Test Strategy
#### Unit Tests
- {Component}: {what to test}
#### Integration Tests
- {Flow}: {what to test}
#### Manual Verification
- {Scenario}: {what to check}
### Risk Flags
- {Risk}: {mitigation strategy}
### Agent Brief Notes
- {Any interface contracts, acceptance criteria, or out-of-scope boundaries that should be copied into ready-for-agent issues}
| Problem | Resolution | | -------------------------------- | ------------------------------------------------------------------------------------------------------ | | Feature description is vague | State assumptions, decompose what's known, mark uncertain tasks with "pending clarification." | | Feature is too large (20+ tasks) | Split into multiple features. A feature that takes months is a project, not a feature. | | No clear acceptance criteria | Help the user define them: "What does done look like? What would you demo?" | | Technical stack unknown | Decompose at the logical level (data model, business logic, API, UI) without implementation specifics. |
Push back if:
testing
Create, review, and restyle data visualizations using Edward Tufte principles: high data-ink ratio, direct labels, range-frame axes, small multiples, accessible color, responsive charts, and honest comparisons. Triggers on: "create a chart", "style this chart", "review this graph", "Tufte chart", "data visualization", "Recharts", "Plotly", "matplotlib", "Chart.js", "ECharts", "D3". Use when generating or critiquing charts, dashboards, sparklines, and data tables.
testing
Manages dependent branch stacks and stacked pull requests using safe Git topology rules. Triggers on: "create stacked PRs", "publish this stack", "sync my PR stack", "rebase this stack", "merge the stack", "retarget child PRs", "split this branch into stacked PRs", "validate this stack", "cleanup stacked branches". Use when local branches or one source branch need to become a dependency-ordered PR stack with correct parent bases, validation, synchronization, merge order, and cleanup.
development
Scaffolds per-repository agent context so coding agents share the same issue tracker rules, triage label vocabulary, domain glossary, ADR layout, and handoff conventions. Triggers on: "set up project context", "configure agent docs", "create CONTEXT.md", "setup agent workflow", "agent issue tracker setup", "triage labels", "domain glossary for agents". Use when a repo needs durable context files before planning, triage, debugging, TDD, architecture review, or multi-agent implementation.
development
Hypothesis-driven debugging with ranked hypotheses, git bisect strategy, instrumentation planning, and minimal reproduction design. Triggers on: "debug this systematically", "root cause analysis", "bisect this bug", "rank hypotheses", "isolate this issue", "minimal reproduction". NOT for general reasoning.