| name | ralph-specum-tasks |
| description | This skill should be used only when the user explicitly asks to use `$ralph-specum-tasks`, or explicitly asks Ralph Specum in Codex to run the tasks phase. |
| metadata | {"surface":"helper","action":"tasks"} |
Ralph Specum Tasks
You are a coordinator, not a task planner -- delegate ALL work to a task-planner sub-agent.
Derive RALPH_CODEX_PLUGIN_ROOT from this loaded skill by resolving two parent directories from the SKILL.md directory. Never derive it from the project working directory.
Contract
- Resolve the active spec by explicit path, exact name, or
.current-spec
- Require
requirements.md and design.md
- Merge state fields only
- Keep the Ralph disk contract unchanged
Action
- Resolve the active spec. If none exists, stop.
- Require
requirements.md and design.md. Read research.md when present, .progress.md, and current state.
- Run
phase_gate.py mode through "$RALPH_CODEX_PLUGIN_ROOT/scripts/phase_gate.py" with STATE and exact --quick, exact --interactive, or no flag. Reject both, -q, variants, and natural-language substitutes.
- In interactive mode, require artifact approval for the current
design.md before starting tasks. Exact quick mode continues with the validated artifact.
- Run prototype record selection with the resolved
basePath before generation:
python3 "$RALPH_CODEX_PLUGIN_ROOT/scripts/prototype_records.py" select-downstream --base-path "$BASE_PATH" --state "$BASE_PATH/.ralph-state.json"
- Include only affected, valid,
gateApproved: true, non-superseded records returned by the selector. Exclude malformed, superseded, skipped, failed, inconclusive, cancelled, and normal-mode excluded records.
- Stop before generation when selection reports an
activePrototypes blocker for tasks. Name the active ID and route resume through $ralph-specum-prototype. Allow proven unrelated prototypes when the selector reports no task dependency.
- Stop when selection reports stale
design.md, stale task indexes, or a stale upstream artifact that design depends on. Route to the earliest stale phase and do not plan from stale design.
- Clear any prior approval gate by merging
awaitingApproval: false before generation.
- Respect
granularity from state. Allow --tasks-size fine|coarse to override it. Treat task sizing as administration, not an interview question. In exact quick mode, default unset granularity to fine.
- When
research.md exists, require skill discovery pass 2 against the goal plus final research. When it is absent, require pass 1 against the goal alone. Run the applicable pass when the state lacks its revision. Select explicitly named skills and record harness-shadowed duplicates.
- Load
"$RALPH_CODEX_PLUGIN_ROOT/skills/interview-framework-codex/SKILL.md", its required algorithm and domain-modeling references, and all selected domain contracts in both interactive and quick mode. In interactive mode, follow the algorithm for critical delivery slicing, dependency order, rollout risk, and verification thresholds. Inspect commands, file layout, and existing test tools instead of asking.
- In interactive mode, require explicit
approve and delegate; in exact quick mode, record bypassed_quick. In both modes, run phase_gate.py check-delegation with the current loaded-manifest identity before creating the child.
- Delegate task planning to a
task-planner sub-agent. Pass the absolute helper path, state path, identity tuple, unique teammate dispatch identity, verbatim manifest, requirements, design, research, selected prototype evidence, the clean blocker/stale-gate result, and interview context. The child reloads and records the manifest, passes check-agent-write with that unique identity, and writes tasks.md. Do NOT write tasks.md yourself.
- Read the sub-agent's output and validate it exists.
- Count tasks and merge state with:
phase: "tasks"
awaitingApproval: true (or false when --quick is active)
taskIndex: first incomplete or totalTasks
totalTasks: counted tasks
- Update
.progress.md with the phase breakdown, next milestone, blockers, next step, chosen granularity, skill discovery, and verification strategy.
- If spec commits are enabled, commit only the spec artifacts.
Stop Behavior
- Without
--quick: STOP HERE. Display the walkthrough summary and approval prompt. Do NOT continue to implementation. Wait for the user to explicitly approve and request the next phase.
- With exact
--quick: Record the quick bypass, review, then continue directly into implementation.
Output Shape
Use atomic tasks with exact file targets, explicit success criteria, verification commands, and commit messages. Preserve POC-first ordering. Support [P] markers for safe parallel work, [VERIFY] checkpoints, and VE tasks when end-to-end verification is part of the plan.
Response Handoff
- After writing
tasks.md, name tasks.md and summarize the task plan briefly.
- When normalized
quickMode is false, end with exactly one explicit choice prompt:
approve current artifact
request changes
continue to implementation
- Treat
continue to implementation as approval of tasks.md.
- With exact
--quick, do not show this prompt; continue directly to implementation after the gates succeed.
- During artifact review,
apply the changes immediately delegates already-recorded feedback through a new unique dispatch, redisplays the artifact, and stays at this approval gate. Ask one focused change question only when no feedback is pending. Control-only continue, proceed, and go ahead approve nothing.