Task Management Skill
When to Use
Use this skill when the user wants to:
- Create, list, update, or manage development tasks
- Track task status and dependencies
- Start working on a task
- Organize tasks by project or priority
- User invokes
/task-management:manage-tasksor mentions task management
Command Structure
The user's command will be in the format: /task-management:manage-tasks <subcommand> [args]
Subcommands
create
Create a new task with optional metadata.
Process:
- Parse the task description and optional flags
- Generate a unique task ID (format: TASK-NNN)
- Create task file in
.claude/tasks/<task-id>.md - Add to task index
- Confirm creation to user
Task File Format:
---
id: TASK-123
title: Task description
status: backlog
priority: medium
created: 2026-02-05
updated: 2026-02-05
project:
assignee:
tags: []
blocks: []
depends_on: []
---
## Description
[Task description]
## Notes
[Task notes and updates]
## History
- 2026-02-05: Created
list
List tasks with optional filtering.
Process:
- Read task index
- Apply filters (status, project, priority)
- Format and display tasks in a table
- Show summary statistics
Output Format:
ID | Title | Status | Priority | Project
----------|--------------------------|-------------|----------|----------
TASK-123 | Implement OAuth2 flow | in-progress | high | auth
TASK-124 | Add login form | backlog | medium | auth
TASK-125 | Setup CI/CD | ready | high | infra
3 tasks (1 in-progress, 1 ready, 1 backlog)
show
Show detailed information about a specific task.
Process:
- Read task file
- Display full task details including:
- Metadata (status, priority, dates)
- Description
- Dependencies (blocks/depends_on)
- Notes and history
- Related git branches/commits
update
Update task metadata.
Process:
- Read task file
- Update specified fields
- Add update to history
- Save task file
- Update task index
- Confirm changes to user
start
Start working on a task (sets status to in-progress and optionally creates git branch).
Process:
- Read task file
- Check for blocking dependencies
- Update status to "in-progress"
- If auto_create_branch enabled:
- Create git branch:
task-<id>-<slugified-title> - Checkout branch
- Create git branch:
- Add TodoWrite items based on task description
- Confirm task started
link
Create dependency relationships between tasks.
Process:
- Read both task files
- Add relationship:
blocks: Task A blocks Task B (add to A.blocks, add to B.depends_on)depends-on: Task A depends on Task B (add to A.depends_on, add to B.blocks)
- Save both task files
- Confirm link created
archive
Archive completed or old tasks.
Process:
- Find tasks matching criteria:
- Status: completed
- Optional: Updated before specific date
- Move tasks to
.claude/tasks/archive/ - Update task index
- Report archived count
Implementation Notes
- Store tasks in
.claude/tasks/directory - Maintain index file at
.claude/tasks/index.json - Use YAML frontmatter for metadata
- Generate sequential task IDs
- Integrate with TodoWrite for active tasks
- Check
.claude/task-management.local.mdfor project-specific config
Error Handling
- If task ID doesn't exist: "Task not found: TASK-123"
- If invalid subcommand: Show usage help
- If missing required args: Show subcommand help
- If dependency cycle detected: "Cannot create circular dependency"
Examples
Create task:
User: /task-management:manage-tasks create "Implement user authentication" --priority high --project auth
You: Created task TASK-123: "Implement user authentication"
Status: backlog
Priority: high
Project: auth
List tasks:
User: /task-management:manage-tasks list --status in-progress
You: [Display table of in-progress tasks]
Start task:
User: /task-management:manage-tasks start TASK-123
You: Started TASK-123: "Implement user authentication"
Created branch: task-123-implement-user-authentication
I've added the following items to your todo list:
- Research authentication options
- Design auth flow
- Implement backend
- Implement frontend
- Write tests