Claude-skill-registry format-todo-list
Generate properly formatted TodoWrite lists for orchestrator progress tracking. Use when creating phase checklists, updating task status, or ensuring consistent todo formatting.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/format-todo-list" ~/.claude/skills/majiayu000-claude-skill-registry-format-todo-list && rm -rf "$T"
manifest:
skills/data/format-todo-list/SKILL.mdsource content
Format Todo List
Create properly structured todo lists for TodoWrite tool with correct status and activeForm fields.
When to Use
- Creating initial phase checklists in orchestrators
- Updating todo list status
- Ensuring consistent todo formatting
- Generating progress tracking lists
Instructions
Step 1: Receive Todo Items
Accept array of todo items with status.
Expected Input:
{ "todos": [ { "content": "Phase 1: Discovery", "status": "completed" }, { "content": "Phase 2: Implementation", "status": "in_progress" }, { "content": "Phase 3: Validation", "status": "pending" } ] }
Step 2: Generate Active Forms
Create activeForm for each todo based on content.
Rules:
- Convert imperative to present continuous
- "Run X" → "Running X"
- "Create X" → "Creating X"
- "Fix X" → "Fixing X"
- "Validate X" → "Validating X"
Step 3: Validate Status
Ensure status is valid TodoWrite value.
Valid Statuses:
: Not startedpending
: Currently activein_progress
: Finishedcompleted
Step 4: Format for TodoWrite
Structure data for TodoWrite tool.
Expected Output:
{ "todos": [ { "content": "Phase 1: Discovery", "status": "completed", "activeForm": "Discovering and analyzing" }, { "content": "Phase 2: Implementation", "status": "in_progress", "activeForm": "Implementing changes" }, { "content": "Phase 3: Validation", "status": "pending", "activeForm": "Validating results" } ] }
Error Handling
- Invalid Status: Return error listing valid statuses
- Missing Content: Return error for empty content
- Empty Array: Return error requesting at least one todo
Examples
Example 1: Phase Checklist
Input:
{ "todos": [ { "content": "Phase 0: Pre-flight validation", "status": "completed" }, { "content": "Phase 1: Bug detection", "status": "in_progress" }, { "content": "Phase 2: Bug fixes", "status": "pending" }, { "content": "Phase 3: Verification", "status": "pending" } ] }
Output:
{ "todos": [ { "content": "Phase 0: Pre-flight validation", "status": "completed", "activeForm": "Validating pre-flight checks" }, { "content": "Phase 1: Bug detection", "status": "in_progress", "activeForm": "Detecting bugs" }, { "content": "Phase 2: Bug fixes", "status": "pending", "activeForm": "Fixing bugs" }, { "content": "Phase 3: Verification", "status": "pending", "activeForm": "Verifying fixes" } ] }
Example 2: Simple Task List
Input:
{ "todos": [ { "content": "Run type check", "status": "completed" }, { "content": "Run build", "status": "completed" }, { "content": "Run tests", "status": "in_progress" } ] }
Output:
{ "todos": [ { "content": "Run type check", "status": "completed", "activeForm": "Running type check" }, { "content": "Run build", "status": "completed", "activeForm": "Running build" }, { "content": "Run tests", "status": "in_progress", "activeForm": "Running tests" } ] }
Example 3: Priority-Based List
Input:
{ "todos": [ { "content": "Fix critical bugs", "status": "completed" }, { "content": "Fix high-priority bugs", "status": "in_progress" }, { "content": "Fix medium-priority bugs", "status": "pending" } ] }
Output:
{ "todos": [ { "content": "Fix critical bugs", "status": "completed", "activeForm": "Fixing critical bugs" }, { "content": "Fix high-priority bugs", "status": "in_progress", "activeForm": "Fixing high-priority bugs" }, { "content": "Fix medium-priority bugs", "status": "pending", "activeForm": "Fixing medium-priority bugs" } ] }
Validation
- Generates activeForm for all items
- Validates status values
- Handles various content formats
- Preserves original content
- Returns proper TodoWrite structure
Supporting Files
: TodoWrite format template (see Supporting Files section)template.json