Awesome-omni-skill taskmaster
Use when any agent must operate Taskmaster with an MCP-first approach and automatic CLI fallback for init, PRD parsing, task lifecycle, dependencies, and status workflows.
git clone https://github.com/diegosouzapw/awesome-omni-skill
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/tools/taskmaster" ~/.claude/skills/diegosouzapw-awesome-omni-skill-taskmaster && rm -rf "$T"
skills/tools/taskmaster/SKILL.mdTaskmaster MCP-First Operations
When to Use
Use this skill when an agent needs to execute any Taskmaster workflow through Taskmaster MCP first, with Taskmaster CLI fallback only when MCP is unavailable or fails.
MCP scope for this skill:
- Allowed MCP integration:
only.mcp_task-master-ai - Do not use any other MCP tool while executing this skill.
Typical triggers:
- Initialize Taskmaster in a repository.
- Parse a PRD and generate tasks.
- Expand tasks into subtasks.
- Create, update, move, prioritize, or delete tasks.
- Change task status (
,pending
,in-progress
,done
, and other status values supported by the installed CLI version).cancelled - Add, remove, or validate dependencies.
- Work with tags or contexts.
- Query progress, next task, or task details.
Do not use this skill for source-code implementation or git workflows.
Inputs
Inputs:
- Repository absolute path.
- Requested action intent (for example:
,init
,parse-prd
,expand
,set-status
,add-dependency
).next-task - Action parameters (task IDs, PRD path, status values, dependency IDs, tag/context names, and flags).
- Safety flags when needed:
(boolean)allow_install
(boolean for destructive actions)confirmed
If any required input is missing, stop and return a structured input error.
Procedure
Procedure:
- Resolve the CLI executable (test one by one and only test the next if first fails) in this order:
task-mastertaskmaster
Try to run the first one and if it fails, try the next one, but if one of them succeeds, continue with that one.npx -y task-master-ai
- Route the intent using the command catalog below.
- If the exact command is not available in the installed version, use the closest official alias shown in
.<tm> --help - For destructive operations (delete, clear, overwrite, force replace), require
.confirmed=true - Execute only Taskmaster CLI commands, do not edit tasks.json manually or with any other tool.
- Run post-action verification with one read command (
,list
, or equivalent) on the same channel used for execution (CLI).show - Return a structured execution report with exact commands/methods, outcomes
Command Catalog (CLI Reference)
Use these commands as the default reference. Always confirm with
--help before execution.
Project bootstrap and setup:
task-master inittask-master init --rules cursor,windsurf,vscode
(when present in installed version)task-master migrate
PRD and planning:
task-master parse-prd <prd-file.txt>task-master parse-prd <prd-file.txt> --num-tasks=5task-master parse-prd <prd-file.txt> --num-tasks=0
Task inspection:
task-master listtask-master list --status=<status>
// Shows all tasks with their subtaskstask-master list --with-subtaskstask-master list --status=<status> --with-subtaskstask-master next
// Shows the task defailt, with the subtaskstask-master show <id>task-master show --id=<id>task-master show 1,3,5task-master show 1.2
Task creation and updates:
task-master add-task --prompt="<description>"task-master add-task --prompt="<description>" --researchtask-master add-task --prompt="<description>" --dependencies=1,2,3task-master add-task --prompt="<description>" --priority=hightask-master update --from=<id> --prompt="<prompt>"task-master update --from=<id> --prompt="<prompt>" --researchtask-master update-task --id=<id> --prompt="<prompt>"task-master update-task --id=<id> --prompt="<prompt>" --researchtask-master update-subtask --id=<parentId.subtaskId> --prompt="<prompt>"task-master update-subtask --id=<parentId.subtaskId> --prompt="<prompt>" --research
Task lifecycle and status:
task-master set-status --id=<id> --status=<status>task-master set-status --id=1,2,3 --status=<status>task-master set-status --id=1.1,1.2 --status=<status>
Task expansion and decomposition:
task-master expand --id=<id> --num=<number>task-master expand --id=<id> --num=0task-master expand --id=<id> --prompt="<context>"task-master expand --id=<id> --researchtask-master expand --alltask-master expand --all --forcetask-master expand --all --researchtask-master clear-subtasks --id=<id>task-master clear-subtasks --id=1,2,3task-master clear-subtasks --all
Complexity analysis:
task-master analyze-complexitytask-master analyze-complexity --output=my-report.jsontask-master analyze-complexity --model=<model>task-master analyze-complexity --threshold=6task-master analyze-complexity --file=custom-tasks.jsontask-master analyze-complexity --researchtask-master complexity-reporttask-master complexity-report --file=my-report.json
Dependencies:
task-master add-dependency --id=<id> --depends-on=<id>task-master remove-dependency --id=<id> --depends-on=<id>task-master validate-dependenciestask-master fix-dependencies
Task moves and restructuring:
task-master move --from=<id> --to=<id>task-master move --from=5.2 --to=7.3task-master move --from=10,11,12 --to=16,17,18task-master move --from=5 --from-tag=backlog --to-tag=in-progresstask-master move --from=5,6,7 --from-tag=backlog --to-tag=done --with-dependenciestask-master move --from=5 --from-tag=backlog --to-tag=in-progress --ignore-dependencies
Tag and context management:
task-master tagstask-master tags --show-metadatatask-master add-tag <tag-name>task-master add-tag <tag-name> --description="<description>"task-master add-tag --from-branchtask-master add-tag <new-tag> --copy-from-currenttask-master add-tag <new-tag> --copy-from=<source-tag>task-master use-tag <tag-name>task-master rename-tag <old-name> <new-name>task-master copy-tag <source-tag> <target-tag>task-master copy-tag <source-tag> <target-tag> --description="<description>"task-master delete-tag <tag-name>task-master delete-tag <tag-name> --yes
Rules management:
task-master rules add <profile1,profile2,...>task-master rules remove <profile1,profile2,...>task-master rules remove <profile1,profile2,...> --forcetask-master rules setup
Model configuration:
task-master modelstask-master models --set-main=<model>task-master models --set-research=<model>task-master models --set-fallback=<model>task-master models --set-main=<model> --ollamatask-master models --set-research=<model> --openroutertask-master models --set-main=<model> --codex-clitask-master models --set-fallback=<model> --codex-clitask-master models --setup
Research:
task-master research "<query>"task-master research "<query>" --id=15,16task-master research "<query>" --files=src/a.js,src/b.jstask-master research "<query>" --context="<context>" --treetask-master research "<query>" --detail=hightask-master research "<query>" --file=custom-tasks.jsontask-master research "<query>" --tag=<tag-name>task-master research "<query>" --save-filetask-master research "<query>" --save-to=15task-master research "<query>" --save-to=15.2
Task file generation:
task-master generate
Intent-to-Command Routing Hints
Use this mapping when parent agents provide high-level intent:
->initialize taskmasterinit
->create tasks from PRDparse-prd
->expand taskexpand --id=<id>
->expand pending tasksexpand --all
->mark task started/done/cancelledset-status
->change downstream tasks after scope changeupdate --from=<id>
->update one task onlyupdate-task
->append implementation notes to a subtaskupdate-subtask
->add/remove dependency
oradd-dependencyremove-dependency
->fix dependency graphfix-dependencies
->switch work contextuse-tag
->view next executable tasknext
Outputs
Outputs:
- Markdown report with these sections:
PreconditionsCommand ResolutionExecuted CommandsResult DataValidationFinal Status
Final Status must be one of:
successpartialfailed
Examples
Input:
- Repository:
/repo/app - Action:
set-status - Params:
,task_id=12status=in-progress
Output:
: Taskmaster executable resolved toPreconditions
; repository containstask-master
..taskmaster/
: intentCommand Resolution
mapped to installed version commandset-status
.<tm> set-status
:Executed Commands
.<tm> set-status --id=12 --status=in-progress
: taskResult Data
status updated.12
:Validation
confirms<tm> show 12
.in-progress
:Final Status
.success
Input:
- Repository:
/repo/app - Action:
parse-prd - Params:
,input=.taskmaster/docs/prd.md
,num_tasks=20research=true
Output:
: Taskmaster initialized.Preconditions
: intentCommand Resolution
mapped toparse-prd
.<tm> parse-prd
:Executed Commands
.<tm> parse-prd .taskmaster/docs/prd.md --num-tasks=20 --research
: 20 tasks created.Result Data
:Validation
shows new tasks.<tm> list
:Final Status
.success
Notes and Edge Cases
Notes:
- Do not execute source-code changes, git writes, or unrelated shell commands in this skill.
- NEVER manipulate the tasks.json file directly or using any other tool except the task-master CLI. Use the provided commands to manage tasks.