name: nazgul:task description: Task lifecycle management — skip, unblock, add, prioritize, info, and list tasks. Use when you need to manage individual tasks in the Nazgul pipeline. context: fork allowed-tools: Read, Write, Edit, Bash, Glob, Grep metadata: author: Jose Mejia version: 2.7.1
Nazgul Task
Examples
/nazgul:task— List all tasks with status summary/nazgul:task info TASK-003— Show full details and review history for a task/nazgul:task skip TASK-005— Skip a task and promote unblocked downstream tasks/nazgul:task unblock TASK-004— Reset a blocked task back to READY/nazgul:task add "Implement rate limiting"— Create a new task/nazgul:task prioritize TASK-006 --before TASK-003— Reorder task execution
Arguments
$ARGUMENTS
Current State
- Task list: !
ls nazgul/tasks/TASK-*.md 2>/dev/null || echo "No tasks" - Plan: !
head -50 nazgul/plan.md 2>/dev/null || echo "No plan"
Instructions
Parse $ARGUMENTS for a subcommand and its parameters. If no subcommand is provided, default to list.
Subcommands
list (default)
Produce a quick status table of all tasks:
Nazgul Tasks
═══════════════════════════════════════════════════════════
ID Status Description
─────────────────────────────────────────────────────────
TASK-001 DONE Set up project scaffolding
TASK-002 IN_PROGRESS Implement auth module
TASK-003 READY Add payment processing
TASK-004 BLOCKED Deploy to staging
TASK-005 PLANNED Write integration tests
─────────────────────────────────────────────────────────
Total: 5 | Done: 1 | Active: 2 | Blocked: 1 | Planned: 1
- Read each
nazgul/tasks/TASK-*.mdfile - Extract: task ID, status, and the first line of the description
- Sort by task ID (numeric order)
- Format as the table above
- Include a summary line at the bottom with counts by status category
skip TASK-NNN
Set the specified task's status to SKIPPED.
- Validate the task file exists:
nazgul/tasks/TASK-NNN.md - If not found, error: "Task TASK-NNN not found."
- Use sed to update the
Status:field toSKIPPEDin the task manifest - Scan all other task manifests for dependencies that reference TASK-NNN
- For any task whose ONLY remaining non-DONE/non-SKIPPED dependency was TASK-NNN, promote its status from
PLANNEDtoREADY - Output: "TASK-NNN set to SKIPPED. [N] downstream task(s) promoted to READY."
unblock TASK-NNN
Reset a BLOCKED task back to READY so it can be picked up by the loop.
- Validate the task file exists:
nazgul/tasks/TASK-NNN.md - If not found, error: "Task TASK-NNN not found."
- If the task is not BLOCKED, warn: "TASK-NNN is not blocked (current status: [status])."
- Update
Status:toREADY - Clear the
blocked_reason:field (set to empty or remove the line) - Reset
retry:count to0/3 - Output: "TASK-NNN unblocked and set to READY. It will be picked up in the next iteration."
add "description"
Create a new task manifest and append it to the plan.
- Scan existing task files to determine the next available TASK-NNN number
- Create
nazgul/tasks/TASK-NNN.mdwith the following template:
# TASK-NNN: [description]
- **Status:** PLANNED
- **Priority:** medium
- **Dependencies:** none
- **Retry:** 0/3
- **Created:** [ISO 8601 timestamp]
- **Source:** manual (via /nazgul:task add)
## Description
[description]
## Acceptance Criteria
- [ ] TBD — define acceptance criteria
## Implementation Notes
_To be filled by implementer._
- If there are no dependencies (check if any were specified in the description), set status to
READYinstead ofPLANNED - Append the task to
nazgul/plan.mdin the task list section - Output: "Created TASK-NNN: [description]. Status: [PLANNED|READY]."
prioritize TASK-NNN --before TASK-MMM
Reorder tasks in the plan so TASK-NNN appears before TASK-MMM.
- Validate both task files exist
- Read
nazgul/plan.md - Find the lines referencing both tasks in the plan's task list
- Remove TASK-NNN's line from its current position
- Insert it immediately before TASK-MMM's line
- Write the updated plan.md
- Output: "TASK-NNN moved before TASK-MMM in the plan."
Note: This changes execution order but does NOT override dependency constraints. If TASK-NNN depends on TASK-MMM, warn the user about the circular dependency.
info TASK-NNN
Show full details for a specific task.
- Validate the task file exists:
nazgul/tasks/TASK-NNN.md - If not found, error: "Task TASK-NNN not found."
- Read and display the full contents of
nazgul/tasks/TASK-NNN.md - Check for review history: look for files matching
nazgul/reviews/TASK-NNN-*.md - If review files exist, display them in chronological order:
Task Details
═══════════════════════════════════════
[full task manifest contents]
Review History
─────────────────────────────────────
[review 1 contents]
[review 2 contents]
...
- Check for delegation briefs:
nazgul/tasks/TASK-NNN-delegation.md - If a delegation brief exists, include it in the output
Error Handling
- If Nazgul is not initialized (no
nazgul/config.json): "Nazgul not initialized. Run/nazgul:initfirst." - If no tasks exist: "No tasks found. Run
/nazgul:startto generate a plan." - If an unknown subcommand is provided: "Unknown subcommand: [X]. Available: list, skip, unblock, add, prioritize, info"
Expert Next.js App Router
Developpement
Un skill qui transforme Claude en expert Next.js App Router.
Générateur de README
Developpement
Crée des README.md professionnels et complets pour vos projets.
Rédacteur de Documentation API
Developpement
Génère de la documentation API complète au format OpenAPI/Swagger.