Execute implementation from task list with dependency-aware ordering
Executes implementation tasks from a structured list in dependency order, creating or modifying code files, running tests, and updating progress tracking.
When to use
Use this when you have a specification and task list and want to systematically implement the code changes, ensuring dependencies are respected and progress is tracked.
How to invoke
Manual via /speckit-helper:implement, or Claude can auto-invoke when relevant.
/plugin marketplace add datamaker-kr/synapse-claude-marketplace/plugin install speckit-helper@synapse-marketplace[feature-slug] [--task T001] [--phase setup|foundation|stories|finalization]Execute implementation tasks from the task list in dependency-aware order, guided by the
specification and plan. Each task is implemented according to its spec reference, tested
where possible, and marked complete in tasks.md.
This command is the execution engine of the speckit workflow. It reads the structured task
list, resolves dependencies, implements each task by creating or modifying code files, runs
tests when a test framework is available, and tracks progress by updating tasks.md. It
can operate on a single task, an entire phase, or automatically pick the next available
tasks in dependency order.
Determine the feature-slug from $ARGUMENTS.
$ARGUMENTS is empty, use Glob to list directories under .speckit/:
/speckit-helper:specify first."Extract targeting flags from $ARGUMENTS:
--task T001 — execute a single specific task by its ID.--phase <name> — execute all uncompleted tasks in the named phase.
Valid phase names: setup, foundation, stories, finalization.
Phase names are matched case-insensitively against phase headers in tasks.md.--task nor --phase is provided, operate in auto mode: pick the next
uncompleted task(s) in dependency order.Before executing any tasks, check for quality gate status:
.speckit/<feature-slug>/checklists/*.md files.- [ ]).Quality gate warning: X unchecked items across Y checklists.
Consider running /speckit-helper:checklist <feature-slug> to review.
Proceeding with implementation...
Read the required documents:
.speckit/<feature-slug>/tasks.md.
/speckit-helper:tasks
to generate a task list from the specification.".speckit/<feature-slug>/spec.md.
/speckit-helper:specify
first.".speckit/<feature-slug>/plan.md (optional).
.speckit/<feature-slug>/data-model.md (optional).
Parse tasks.md to build the full task list with dependency information.
Task line format:
- [ ] T001 [P] [US1] path/to/file.ext — Description (S) [Spec §2.1]
Determine which tasks to execute:
Single task mode (--task T001):
[X]), inform the user and stop:
"Task T001 is already completed."[P]) are completed. If not, warn but proceed:
"Warning: T001 has uncompleted prerequisites: T002, T003."Phase mode (--phase setup):
- [ ]) in that phase.Auto mode (no flags):
[P] (parallelizable) uncompleted tasks, OR[P] tasks remain.For each target task, in order:
[Spec §X.Y] reference.spec.md to understand the requirement.plan.md exists, read the relevant architectural guidance.data-model.md for field definitions.contracts/*.md file.Based on the task description and spec context:
If the target file does not exist: Create it with the appropriate content.
plan.md specifies a directory structure, follow it.If the target file already exists: Read it first, then modify it.
For complex tasks (L): Break the implementation into logical steps:
Respect existing project conventions:
.eslintrc, .prettierrc, pyproject.toml, etc.)After implementing the task, attempt to run relevant tests:
Detect the test framework by checking for:
jest.config.*, vitest.config.* (JavaScript/TypeScript)pytest.ini, pyproject.toml [tool.pytest], setup.cfg [tool:pytest] (Python)*_test.go files (Go)Cargo.toml [dev-dependencies] (Rust)pom.xml <surefire> or build.gradle (Java)If a test framework is detected:
If tests fail:
If no test framework is detected:
If implementation succeeded (and tests passed or no tests exist):
tasks.md to change the task's checkbox from - [ ] to - [X]:
- [X] T001 [P] [US1] src/config/auth.ts — Configure authentication middleware (S) [Spec §2.1]
Completed T001: Configure authentication middleware [Phase 1: Setup]
After all target tasks have been processed:
Directory hygiene: If new directories were created during implementation:
.gitignore exists at the project root..gitignore..gitignore without confirmation.Dependency check: If new dependencies were added (e.g., new import statements
referencing uninstalled packages):
npm, yarn, pnpm, pip, cargo, go mod).Print a structured summary of the implementation session:
--- Implementation Summary ---
Feature: <feature-slug>
Mode: <single-task | phase | auto>
Target: <task ID or phase name>
Tasks completed: N
T001 — Configure authentication middleware (S) [Setup]
T002 — Add auth environment variables (S) [Setup]
Tasks failed: M
T003 — Tests failing, manual review needed
Tasks remaining: R (across all phases)
Phase 2: Foundation — 4 tasks
Phase 3: Stories (P1) — 6 tasks
Phase 4: Finalization — 3 tasks
Test results:
Passed: X | Failed: Y | Skipped: Z
Suggested next step:
/speckit-helper:implement <feature-slug> --phase foundation
If .speckit/<feature-slug>/tasks.md does not exist:
.speckit/<feature-slug>/tasks.md.
Run /speckit-helper:tasks <feature-slug> to generate tasks from the specification."If .speckit/<feature-slug>/spec.md does not exist:
/speckit-helper:specify first."If --task T999 references a task ID that does not exist in tasks.md:
If --phase integration does not match any phase header in tasks.md:
If tests fail after implementation:
If a target file was modified outside the speckit workflow since the last task:
tasks.md. Sequential tasks
within a phase are executed in order. [P] tasks can be executed in any order.[X] and pick up where the previous session left off.--phase
and run /speckit-helper:analyze between phases to catch consistency issues early.WebSearch or WebFetch are needed during implementation (e.g., to check library
documentation or API references), they are available but should be used sparingly.