Move
Commands orchestration 115
npx claude-code-templates@latest --command orchestration/move Content
Task Move Command
Move tasks between status folders following the task management protocol.
Usage
/task-move TASK-ID new-status [reason]Description
Updates task status by moving files between status folders and updating tracking information. Follows all protocol rules including validation and audit trails.
Basic Commands
Start Working on a Task
/task-move TASK-001 in_progressMoves from todos → in_progress
Complete Implementation
/task-move TASK-001 qa "Implementation complete, ready for testing"Moves from in_progress → qa
Task Passed QA
/task-move TASK-001 completed "All tests passed"Moves from qa → completed
Block a Task
/task-move TASK-004 on_hold "Waiting for TASK-001 API completion"Moves to on_hold with reason
Unblock a Task
/task-move TASK-004 todos "Dependencies resolved"Moves from on_hold → todos
Failed QA
/task-move TASK-001 in_progress "Failed integration test - fixing null pointer"Moves from qa → in_progress
Bulk Operations
Move Multiple Tasks
/task-move TASK-001,TASK-002,TASK-003 in_progressMove by Filter
/task-move --filter "priority:high status:todos" in_progressMove with Pattern
/task-move TASK-00* qa "Batch testing ready"Validation Rules
The command enforces:
- Valid Transitions: Only allowed status changes
- One Task Per Agent: Warns if agent has task in_progress
- Dependency Check: Warns if dependencies not met
- File Existence: Verifies task exists before moving
Status Transition Map
todos ──────→ in_progress ──────→ qa ──────→ completed
↓ ↓ ↓
└───────────→ on_hold ←─────────┘
↓
todos/in_progressOptions
Force Move
/task-move TASK-001 completed --forceBypasses validation (use with caution)
Dry Run
/task-move TASK-001 qa --dry-runShows what would happen without executing
With Assignment
/task-move TASK-001 in_progress --assign dev-frontendAssigns task to specific agent
With Time Estimate
/task-move TASK-001 in_progress --estimate 4hUpdates time estimate when starting
Error Handling
Task Not Found
Error: TASK-999 not found in any status folder
Suggestion: Use /task-status to see available tasksInvalid Transition
Error: Cannot move from 'completed' to 'todos'
Valid transitions from completed: None (terminal state)Agent Conflict
Warning: dev-frontend already has TASK-002 in progress
Continue? (y/n)Dependency Block
Warning: TASK-004 depends on TASK-001 (currently in_progress)
Moving to on_hold instead? (y/n)Automation
Auto-move on Completion
/task-move TASK-001 --auto-progressAutomatically moves to next status when conditions met
Scheduled Moves
/task-move TASK-005 in_progress --at "tomorrow 9am"Conditional Moves
/task-move TASK-007 qa --when "TASK-006 completed"Examples
Example 1: Developer Workflow
# Start work
/task-move TASK-001 in_progress
# Complete and test
/task-move TASK-001 qa "Implementation done, tests passing"
# After review
/task-move TASK-001 completed "Code review approved"Example 2: Handling Blocks
# Block due to dependency
/task-move TASK-004 on_hold "Waiting for auth API from TASK-001"
# Unblock when ready
/task-move TASK-004 todos "TASK-001 now in QA, API available"Example 3: QA Workflow
# QA picks up task
/task-move TASK-001 qa --assign qa-engineer
# Found issues
/task-move TASK-001 in_progress "Bug: handling empty responses"
# Fixed and retesting
/task-move TASK-001 qa "Bug fixed, ready for retest"Status Update Details
Each move updates:
- File Location: Physical file movement
- Status Tracker: TASK-STATUS-TRACKER.yaml entry
- Task Metadata: Status field in task file
- Execution Tracker: Overall progress metrics
Best Practices
- Always Provide Reasons: Especially for blocks and failures
- Check Dependencies: Before moving to in_progress
- Update Estimates: When starting work
- Clear Block Reasons: Help others understand delays
Integration
- Use after
/task-statusto see available tasks - Updates reflected in
/task-report - Triggers notifications if configured
- Logs all moves for audit trail
Notes
- Moves are atomic - either fully complete or rolled back
- Status history is permanent and cannot be edited
- Timestamp uses current time in ISO-8601 format
- Agent name is automatically detected from context