Help us improve
Share bugs, ideas, or general feedback.
From strikethroo
Executes a single task from a Strikethroo plan, including dependency validation, status checks, pre-execution hooks, agent deployment, and structured result output.
npx claudepluginhub e0ipso/strikethrooHow this skill is triggered — by the user, by Claude, or both
Slash command
/strikethroo:st-execute-taskThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Drive the execution of a single task within an existing Strikethroo plan.
Orchestrates the full Strikethroo workflow: plan creation, task generation, and blueprint execution in a single automated sequence. Use when the user requests the complete end-to-end workflow for a work order.
Executes multi-phase implementation plans by dispatching tasks to sub-agents, tracking progress per-task in plan.json, and coordinating sequential phases.
Executes implementation plans from plan.md files via Superpower Loop phases: task creation, batch execution with verification, git commits. Use after plan ready or on 'execute the plan'.
Share bugs, ideas, or general feedback.
Drive the execution of a single task within an existing Strikethroo plan.
The skill is assistant-agnostic and self-contained: every script it invokes
lives under this skill's scripts/ directory and is referenced by relative
path.
The user supplies the numeric plan ID and task ID conversationally. Treat them as the only authoritative source of intent. Do not invent answers to clarifying questions — prompt the user instead.
completed,
in-progress, or needs-clarification, halt and provide guidance on
resolving the blocker.scripts/check-task-dependencies.cjs
exits 1, stop and report unresolved dependencies. Do not proceed until they
are satisfied.PRE_TASK_EXECUTION.md,
PRE_TASK_ASSIGNMENT.md, or POST_ERROR_DETECTION.md fails, or the
implementing agent encounters an unrecoverable error, set the task status
to failed, document the error in Noteworthy Events, and emit the
structured result with Exit Code: 1.Run scripts/find-strikethroo-root.cjs from the user's working directory.
The script walks up looking for .ai/strikethroo/.init-metadata.json and
prints the absolute path of the resolved root on success.
If the script exits non-zero, the working directory is not inside an
initialized strikethroo workspace. Stop and ask the user to run the project
initializer (e.g. npx strikethroo init) before continuing. Do
not attempt to execute a task outside of a valid root.
For every subsequent step, treat the path printed by this script as <root>.
Run scripts/validate-plan-blueprint.cjs <plan-id> planFile to obtain the
absolute path of the plan file. The same script also accepts these field
names (single-field output mode) and exposes them on demand:
planDir — absolute path of the plan directorytaskCount — number of existing task files in that plan's tasks/blueprintExists — yes or notaskManagerRoot — absolute path of <root>planId — the resolved numeric plan IDIf the script exits non-zero, stop and ask the user to confirm the plan ID. Do not guess a different ID.
Treat the plan directory path returned by this script as <plan-dir>.
Locate the specific task file inside <plan-dir>/tasks/. Match using both
padded and unpadded forms of the task ID:
<plan-dir>/tasks/<task-id>--*.md<plan-dir>/tasks/0<task-id>--*.mdIf no file matches, stop and report that the task ID was not found in the
plan. List the available task files in <plan-dir>/tasks/ to help the user
identify the correct ID.
Treat the resolved file path as <task-file>.
Read the YAML frontmatter of <task-file> and extract the status field.
completed, in-progress, or
needs-clarification.pending or failed.If execution is blocked, stop and explain why, including guidance on how to resolve the blocker (e.g., use execute-blueprint to re-execute a completed task, or resolve clarification questions first).
Reference for orchestrators and execution flow:
pending → in-progress (execution starts)in-progress → completed (successful execution)in-progress → failed (execution error)failed → in-progress (retry attempt)pending → needs-clarification (set externally by orchestrator or reviewer)needs-clarification → pending (clarification resolved, set externally)Run scripts/check-task-dependencies.cjs <plan-id> <task-id>. The script
validates that every dependency declared in the task frontmatter has status
completed.
If the script exits 1, stop and report that the task is blocked by unresolved dependencies. Do not proceed until dependencies are satisfied.
Read <root>/config/hooks/PRE_TASK_ASSIGNMENT.md and follow its instructions
for selecting the appropriate agent or skill set for this task.
Rewrite the YAML frontmatter of <task-file>, setting status: "in-progress".
Preserve all other frontmatter fields exactly.
Deploy an agent using your internal Task tool. The agent MUST perform these steps in order:
<root>/config/hooks/PRE_TASK_EXECUTION.md before starting any
implementation work.<task-file> and implement
according to its requirements, including:
After the agent finishes, rewrite the YAML frontmatter of <task-file> based
on the outcome:
status: "completed" if the task was implemented successfully and
all acceptance criteria are met.status: "failed" if the task could not be completed, acceptance
criteria were not met, or an unrecoverable error occurred.Preserve all other frontmatter fields exactly.
If anything significant occurred during execution — decisions made, issues
encountered, deviations from the plan, or follow-up actions required —
append a "Noteworthy Events" section to the end of <task-file>:
## Noteworthy Events
- [YYYY-MM-DD] [Event description with sufficient context for the orchestrator]
If no noteworthy events occurred, do not add the section.
If any error occurred during execution, read
<root>/config/hooks/POST_ERROR_DETECTION.md and execute its instructions.
Document the error in Noteworthy Events and ensure the task status is set to
failed if it is not already.
End the session with exactly this block as the final output:
---
Task Execution Result:
- Plan ID: [numeric-id]
- Task ID: [numeric-id]
- Exit Code: [0 for success, 1 for failure]