<a name="readme-top"></a>
<div align='center'> <a href="https://trendshift.io/repositories/13971" target="_blank"><img src="https://trendshift.io/api/badge/repositories/13971" alt="eyaltoledano%2Fclaude-task-master | Trendshift" style="width: 250px; height: 55px;" width="250" height="55"/></a> </div> <p align="center"> <a href="https://tryhamster.com/product/taskmaster"><img src="./images/logo.png?raw=true" alt="Taskmaster logo"></a> </p> <p align="center"> <b>Taskmaster</b>: A task management system for AI-driven development, designed to work seamlessly with any AI chat. </p> <p align="center"> <a href="https://discord.gg/taskmasterai" target="_blank"><img src="https://dcbadge.limes.pink/api/server/https://discord.gg/taskmasterai?style=flat" alt="Discord"></a> | <a href="https://tryhamster.com/docs/taskmaster" target="_blank">Docs</a> </p> <p align="center"> <a href="https://github.com/eyaltoledano/claude-task-master/actions/workflows/ci.yml"><img src="https://github.com/eyaltoledano/claude-task-master/actions/workflows/ci.yml/badge.svg" alt="CI"></a> <a href="https://github.com/eyaltoledano/claude-task-master/stargazers"><img src="https://img.shields.io/github/stars/eyaltoledano/claude-task-master?style=social" alt="GitHub stars"></a> <a href="https://badge.fury.io/js/task-master-ai"><img src="https://badge.fury.io/js/task-master-ai.svg" alt="npm version"></a> <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT%20with%20Commons%20Clause-blue.svg" alt="License"></a> </p> <p align="center"> <a href="https://www.npmjs.com/package/task-master-ai"><img src="https://img.shields.io/npm/d18m/task-master-ai?style=flat" alt="NPM Downloads"></a> <a href="https://www.npmjs.com/package/task-master-ai"><img src="https://img.shields.io/npm/dm/task-master-ai?style=flat" alt="NPM Downloads"></a> <a href="https://www.npmjs.com/package/task-master-ai"><img src="https://img.shields.io/npm/dw/task-master-ai?style=flat" alt="NPM Downloads"></a> </p>By @eyaltoledano & @RalphEcom
A task management system for AI-driven development with Claude, designed to work seamlessly with Cursor AI.
Documentation
Quick Links
- Quick Start Guide
- Installation
- API Keys & Providers
- Supported Editors
- MCP Tools Reference
- CLI Commands Reference
- Task Structure
- Task Dependencies
- Tags & Workstreams
- Research Command
- Loop Command
- AI Providers Overview
- Team Collaboration
- Best Practices
- FAQ
- Changelog
More from Hamster
Quick Install for Cursor 1.0+ (One-Click)
Note: After clicking the link, you'll still need to add your API keys to the configuration. The link installs the MCP server with placeholder keys that you'll need to replace with your actual API keys.
Claude Code Quick Install
For Claude Code users:
claude mcp add taskmaster-ai -- npx -y task-master-aiDon't forget to add your API keys to the configuration:
- in the root .env of your Project
- in the "env" section of your mcp config for taskmaster-ai
Requirements
Taskmaster utilizes AI across several commands, and those require a separate API key. You can use a variety of models from different AI providers provided you add your API keys. For example, if you want to use Claude 3.7, you'll need an Anthropic API key.
You can define 3 types of models to be used: the main model, the research model, and the fallback model (in case either the main or research fail). Whatever model you use, its provider API key must be present in either mcp.json or .env.
At least one (1) of the following is required:
- Anthropic API key (Claude API)
- OpenAI API key
- Google Gemini API key
- Perplexity API key (for research model)
- xAI API Key (for research or main model)
- OpenRouter API Key (for research or main model)
- Claude Code (no API key required - requires Claude Code CLI)
- Codex CLI (OAuth via ChatGPT subscription - requires Codex CLI)
Using the research model is optional but highly recommended. You will need at least ONE API key (unless using Claude Code or Codex CLI with OAuth). Adding all API keys enables you to seamlessly switch between model providers at will.
Quick Start
Option 1: MCP (Recommended)
MCP (Model Control Protocol) lets you run Task Master directly from your editor.
1. Add your MCP config at the following path depending on your editor
| Editor | Scope | Linux/macOS Path | Windows Path | Key |
|---|---|---|---|---|
| Cursor | Global | ~/.cursor/mcp.json | %USERPROFILE%\.cursor\mcp.json | mcpServers |
| Project | <project_folder>/.cursor/mcp.json | <project_folder>\.cursor\mcp.json | mcpServers | |
| Windsurf | Global | ~/.codeium/windsurf/mcp_config.json | %USERPROFILE%\.codeium\windsurf\mcp_config.json | mcpServers |
| VS Code | Project | <project_folder>/.vscode/mcp.json | <project_folder>\.vscode\mcp.json | servers |
| Q CLI | Global | ~/.aws/amazonq/mcp.json | mcpServers |
Manual Configuration
Cursor & Windsurf & Q Developer CLI (mcpServers)
{
"mcpServers": {
"task-master-ai": {
"command": "npx",
"args": ["-y", "task-master-ai"],
"env": {
// "TASK_MASTER_TOOLS": "all", // Options: "all", "standard", "core", or comma-separated list of tools
"ANTHROPIC_API_KEY": "YOUR_ANTHROPIC_API_KEY_HERE",
"PERPLEXITY_API_KEY": "YOUR_PERPLEXITY_API_KEY_HERE",
"OPENAI_API_KEY": "YOUR_OPENAI_KEY_HERE",
"GOOGLE_API_KEY": "YOUR_GOOGLE_KEY_HERE",
"MISTRAL_API_KEY": "YOUR_MISTRAL_KEY_HERE",
"GROQ_API_KEY": "YOUR_GROQ_KEY_HERE",
"OPENROUTER_API_KEY": "YOUR_OPENROUTER_KEY_HERE",
"XAI_API_KEY": "YOUR_XAI_KEY_HERE",
"AZURE_OPENAI_API_KEY": "YOUR_AZURE_KEY_HERE",
"OLLAMA_API_KEY": "YOUR_OLLAMA_API_KEY_HERE"
}
}
}
}π Replace
YOUR_β¦_KEY_HEREwith your real API keys. You can remove keys you don't use.
Note: If you see
0 tools enabledin the MCP settings, restart your editor and check that your API keys are correctly configured.
VSβ―Code (servers + type)
{
"servers": {
"task-master-ai": {
"command": "npx",
"args": ["-y", "task-master-ai"],
"env": {
// "TASK_MASTER_TOOLS": "all", // Options: "all", "standard", "core", or comma-separated list of tools
"ANTHROPIC_API_KEY": "YOUR_ANTHROPIC_API_KEY_HERE",
"PERPLEXITY_API_KEY": "YOUR_PERPLEXITY_API_KEY_HERE",
"OPENAI_API_KEY": "YOUR_OPENAI_KEY_HERE",
"GOOGLE_API_KEY": "YOUR_GOOGLE_KEY_HERE",
"MISTRAL_API_KEY": "YOUR_MISTRAL_KEY_HERE",
"GROQ_API_KEY": "YOUR_GROQ_KEY_HERE",
"OPENROUTER_API_KEY": "YOUR_OPENROUTER_KEY_HERE",
"XAI_API_KEY": "YOUR_XAI_KEY_HERE",
"AZURE_OPENAI_API_KEY": "YOUR_AZURE_KEY_HERE",
"OLLAMA_API_KEY": "YOUR_OLLAMA_API_KEY_HERE"
},
"type": "stdio"
}
}
}π Replace
YOUR_β¦_KEY_HEREwith your real API keys. You can remove keys you don't use.
2. (Cursor-only) Enable Taskmaster MCP
Open Cursor Settings (Ctrl+Shift+J) β‘ Click on MCP tab on the left β‘ Enable task-master-ai with the toggle
3. (Optional) Configure the models you want to use
In your editor's AI chat pane, say:
Change the main, research and fallback models to <model_name>, <model_name> and <model_name> respectively.For example, to use Claude Code (no API key required):
Change the main model to claude-code/sonnetTable of available models | Claude Code setup
4. Initialize Task Master
In your editor's AI chat pane, say:
Initialize taskmaster-ai in my project5. Make sure you have a PRD (Recommended)
For new projects: Create your PRD at .taskmaster/docs/prd.txt.
For existing projects: You can use scripts/prd.txt or migrate with task-master migrate
An example PRD template is available after initialization in .taskmaster/templates/example_prd.txt.
[!NOTE] While a PRD is recommended for complex projects, you can always create individual tasks by asking "Can you help me implement [description of what you want to do]?" in chat.
Always start with a detailed PRD.
The more detailed your PRD, the better the generated tasks will be.
6. Common Commands
Use your AI assistant to:
- Parse requirements:
Can you parse my PRD at scripts/prd.txt? - Plan next step:
What's the next task I should work on? - Implement a task:
Can you help me implement task 3? - View multiple tasks:
Can you show me tasks 1, 3, and 5? - Expand a task:
Can you help me expand task 4? - Research fresh information:
Research the latest best practices for implementing JWT authentication with Node.js - Research with context:
Research React Query v5 migration strategies for our current API implementation in src/api.js
More examples on how to use Task Master in chat
Option 2: Using Command Line
Installation
# Install globally
npm install -g task-master-ai
# OR install locally within your project
npm install task-master-aiInitialize a new project
# If installed
β¦