Development · 5 min

Task Move Command for Claude Code: Automate Your Task Status Workflow

Install the Task Move command for Claude Code to move tasks between status folders (todos, in progress, QA, completed) with validation, bulk operations, and a full audit trail.

  • 3 min de lectura
  • 8 secciones
  • Actualizado el 9 de octubre de 2026
En esta página

By Daniel Ávila and Claude Code Templates contributors. Original article.

What is the Task Move Command?

The Task Move command is a custom Claude Code slash command from the orchestration component category in Claude Code Templates. It manages a file-based task workflow, moving task files between status folders (todos, in_progress, qa, completed, on_hold) while enforcing valid transitions, checking dependencies, and logging every move to an audit trail. It's part of a broader task-orchestration suite that also includes commands for checking status, starting work, and generating reports.

Task FileTask Move CommandStatus FolderUpdatedAudit TrailLogged

Key Capabilities

  • Status Transitions (moves a task file between todos, in_progress, qa, completed, and on_hold)
  • Transition Validation (rejects invalid moves, e.g. jumping straight from completed back to todos)
  • Dependency Checks (warns when a task depends on another task that isn't finished yet)
  • Bulk Operations (move a comma-separated list, a wildcard pattern, or every task matching a --filter)
  • Dry Run Mode (--dry-run previews the move without touching any files)
  • Full Audit Trail (every move updates the task's metadata, the status tracker, and a permanent history log)

Installation

Install the Task Move command using the Claude Code Templates CLI:

npx claude-code-templates@latest --command orchestration/move

Where is the command installed?

The command file is downloaded and saved directly into .claude/commands/ in your project, the CLI flattens the orchestration/ category, keeping only the filename:

your-project/
├── .claude/
│   └── commands/
│       └── move.md    # ← Command installed here
├── tasks/
│   ├── todos/
│   ├── in_progress/
│   ├── qa/
│   ├── completed/
│   └── on_hold/
└── package.json

How to Use the Command

Start Claude Code in a project that already has a task folder structure (tasks/todos, tasks/in_progress, etc.), then call the command with a task ID and the target status:

# Start Claude Code
claude

# Then run the installed command
/move TASK-001 in_progress

Claude Code loads move.md, follows its protocol, and:

  • Verifies TASK-001 exists in its current status folder
  • Confirms the transition to in_progress is valid
  • Moves the file, updates its status metadata, and records the change in the audit trail

Usage Examples

Example 1: Standard Developer Workflow

claude

> /move TASK-001 in_progress
> /move TASK-001 qa "Implementation complete, ready for testing"
> /move TASK-001 completed "Code review approved"

Result: TASK-001 moves through todos → in_progress → qa → completed, with each transition timestamped and reasoned in the audit log.

Example 2: Blocking on a Dependency

claude

> /move TASK-004 on_hold "Waiting for auth API from TASK-001"

# Later, once TASK-001 is unblocked
> /move TASK-004 todos "Dependencies resolved"

Result: the command warns if TASK-004's dependency isn't met, and records the hold reason so any teammate can see why it stalled.

Example 3: Bulk Move with a Dry Run

claude

> /move --filter "priority:high status:todos" in_progress --dry-run

Result: a preview of every high-priority task that would move from todos to in_progress, without changing any files, useful for confirming a batch update before committing to it.

Status Transition Map

FromAllowed To
todosin_progress, on_hold
in_progressqa, on_hold
qacompleted, in_progress (failed QA)
on_holdtodos, in_progress
completedNone (terminal state)

Advanced Options

  • --force, bypasses transition validation (use with caution)
  • --dry-run, shows what would happen without executing the move
  • --assign <agent>, assigns the task to a specific agent as part of the move
  • --estimate <time>, updates the time estimate when starting work

Official Documentation

For more information about building and installing custom slash commands in Claude Code, see the official documentation.

Explore 800+ Claude Code Components

Discover agents, commands, MCPs, settings, hooks, skills and templates for your Claude Code workflow

Created by Daniel Ávila

Constrúyelo con gente que ya lo hizo.

Únete a la comunidad gratis: llamadas en vivo cada semana, un curso para empezar y gente que construye en tu idioma.

Únete gratis en Skool