Назад към всички

task-planning

// Generate phased, dependency-ordered tasks from specs. Identifies parallelization opportunities. task planning, dependency ordering, phased breakdown, parallel tasks Use when: converting specifications to implementation tasks DO NOT use when: writing specs - use spec-writing. Not for execution - use

$ git log --oneline --stat
stars:201
forks:38
updated:March 4, 2026
SKILL.mdreadonly
SKILL.md Frontmatter
nametask-planning
descriptionGenerate phased, dependency-ordered tasks from specs. Identifies parallelization opportunities. task planning, dependency ordering, phased breakdown, parallel tasks Use when: converting specifications to implementation tasks DO NOT use when: writing specs - use spec-writing. Not for execution - use speckit-implement.
version1.7.1
alwaysApplyfalse
categoryplanning
tagsspeckit,tasks,planning,implementation,dependencies
dependenciessuperpowers:writing-plans,superpowers:executing-plans
tools
modulesphase-structure.md,dependency-patterns.md,tech-stack-patterns
progressive_loadingtrue
usage_patternstask-generation,dependency-ordering,implementation-planning
complexityintermediate
model_hintstandard
estimated_tokens1200

Task Planning

Overview

Transforms specifications and implementation plans into actionable, dependency-ordered tasks. Creates phased breakdowns that guide systematic implementation.

When To Use

  • Converting specifications to implementation tasks
  • Planning feature implementation order
  • Identifying parallel execution opportunities
  • Breaking down complex features into phases

When NOT To Use

  • Writing specifications - use spec-writing

Task Phases

Tasks follow a 5-phase structure from setup through polish:

  • Phase 0: Setup - Project initialization, dependencies, configuration
  • Phase 1: Foundation - Data models, interfaces, test infrastructure
  • Phase 2: Core Implementation - Business logic, APIs, services
  • Phase 3: Integration - External services, middleware, logging
  • Phase 4: Polish - Optimization, documentation, final testing

For detailed phase definitions, selection guidelines, and anti-patterns, see modules/phase-structure.md.

Task Format

Each task includes:

  • ID: Unique identifier (TASK-001)
  • Description: Clear action statement
  • Phase: Which phase it belongs to
  • Dependencies: Tasks that must complete first
  • Parallel Marker: [P] if can run concurrently
  • Files: Affected file paths
  • Criteria: How to verify completion

Dependency Rules

Dependencies define execution order and identify parallelization opportunities:

  • Sequential Tasks: Execute in strict order when dependencies exist
  • Parallel Tasks [P]: Can run concurrently when ALL nonconflicting conditions are met
  • File Coordination: Tasks affecting same files MUST run sequentially

Nonconflicting Criteria for Parallel Execution:

  • ✅ Files: No file overlap between tasks
  • ✅ State: No shared configuration or global state
  • ✅ Dependencies: All prerequisites satisfied
  • ✅ Code paths: No merge conflicts possible
  • ✅ Outputs: Tasks don't need each other's results

Mark tasks with [P] ONLY if they pass ALL criteria above.

For fan-out/fan-in patterns, task ID conventions, and validation rules, see modules/dependency-patterns.md.

Example Task Entry

## Phase 2: Core Implementation

### TASK-007 - Implement user authentication service [P]
**Dependencies**: TASK-003, TASK-004
**Files**: src/services/auth.ts, src/types/user.ts
**Criteria**: All auth tests pass, tokens are valid JWT

Verification: Run pytest -v to verify tests pass.

Quality Checklist

  • All requirements mapped to tasks
  • Dependencies are explicit
  • Parallel opportunities identified
  • Tasks are right-sized (not too large/small)
  • Each task has clear completion criteria

Related Skills

  • spec-writing: Creating source specifications
  • speckit-orchestrator: Workflow coordination

Troubleshooting

Common Issues

Command not found Ensure all dependencies are installed and in PATH

Permission errors Check file permissions and run with appropriate privileges

Unexpected behavior Enable verbose logging with --verbose flag