Latest
Sign InSign Up
Product
Resources
DocsTaskmasterHamster StudioCareersAbout
Latest
Sign InSign Up

Same-day shipping for your product team

© 2025 Wheel Go Fast, Inc. All Rights Reserved.

GitHubDiscord
Latest
Resources
  • Docs
  • Careers
  • About
Legal
  • Terms of Service
  • Privacy Policy
  • Cookie Policy
    • Introduction
    • Quick Start
    • API Keys
    • FAQ
    • Contribute
    • Advanced Usage
    • Advanced Configuration
    • Advanced Tasks
    • MCP Tools
    • CLI Commands
    • Task Structure

Task Structure

Task Fields in tasks.json

Tasks in tasks.json have the following structure:

Field Description Example
id Unique identifier for the task. 1
title Brief, descriptive title. "Initialize Repo"
description What the task involves. "Create a new repository, set up initial structure."
status Current state. "pending", "done", "deferred"
dependencies Prerequisite task IDs. ✅ Completed, ⏱️ Pending [1, 2]
priority Task importance. "high", "medium", "low"
details Implementation instructions. "Use GitHub client ID/secret, handle callback..."
testStrategy How to verify success. "Deploy and confirm 'Hello World' response."
subtasks Nested subtasks related to the main task. [{"id": 1, "title": "Configure OAuth", ...}]

Task File Format

Individual task files follow this format:

# Task ID: <id>
# Title: <title>
# Status: <status>
# Dependencies: <comma-separated list of dependency IDs>
# Priority: <priority>
# Description: <brief description>
# Details:
<detailed implementation notes>

# Test Strategy:
<verification approach>

Features in Detail

Analyzing Task Complexity

The analyze-complexity command:

  • Analyzes each task using AI to assess its complexity on a scale of 1-10
  • Recommends optimal number of subtasks based on configured DEFAULT_SUBTASKS
  • Generates tailored prompts for expanding each task
  • Creates a comprehensive JSON report with ready-to-use commands
  • Saves the report to scripts/task-complexity-report.json by default

The generated report contains:

  • Complexity analysis for each task (scored 1-10)
  • Recommended number of subtasks based on complexity
  • AI-generated expansion prompts customized for each task
  • Ready-to-run expansion commands directly within each task analysis

Viewing Complexity Report

The complexity-report command:

  • Displays a formatted, easy-to-read version of the complexity analysis report
  • Shows tasks organized by complexity score (highest to lowest)
  • Provides complexity distribution statistics (low, medium, high)
  • Highlights tasks recommended for expansion based on threshold score
  • Includes ready-to-use expansion commands for each complex task
  • If no report exists, offers to generate one on the spot

Smart Task Expansion

The expand command automatically checks for and uses the complexity report:

When a complexity report exists:

  • Tasks are automatically expanded using the recommended subtask count and prompts
  • When expanding all tasks, they're processed in order of complexity (highest first)
  • Research-backed generation is preserved from the complexity analysis
  • You can still override recommendations with explicit command-line options

Example workflow:

# Generate the complexity analysis report with research capabilities
task-master analyze-complexity --research

# Review the report in a readable format
task-master complexity-report

# Expand tasks using the optimized recommendations
task-master expand --id=8
# or expand all tasks
task-master expand --all

Finding the Next Task

The next command:

  • Identifies tasks that are pending/in-progress and have all dependencies satisfied
  • Prioritizes tasks by priority level, dependency count, and task ID
  • Displays comprehensive information about the selected task:
    • Basic task details (ID, title, priority, dependencies)
    • Implementation details
    • Subtasks (if they exist)
  • Provides contextual suggested actions:
    • Command to mark the task as in-progress
    • Command to mark the task as done
    • Commands for working with subtasks

Viewing Specific Task Details

The show command:

  • Displays comprehensive details about a specific task or subtask
  • Shows task status, priority, dependencies, and detailed implementation notes
  • For parent tasks, displays all subtasks and their status
  • For subtasks, shows parent task relationship
  • Provides contextual action suggestions based on the task's state
  • Works with both regular tasks and subtasks (using the format taskId.subtaskId)

Best Practices for AI-Driven Development

  • 📝 Detailed PRD: The more detailed your PRD, the better the generated tasks will be.
  • 👀 Review Tasks: After parsing the PRD, review the tasks to ensure they make sense and have appropriate dependencies.
  • 📊 Analyze Complexity: Use the complexity analysis feature to identify which tasks should be broken down further.
  • ⛓️ Follow Dependencies: Always respect task dependencies - the Cursor agent will help with this.
  • 🔄 Update As You Go: If your implementation diverges from the plan, use the update command to keep future tasks aligned.
  • 📦 Break Down Tasks: Use the expand command to break down complex tasks into manageable subtasks.
  • 🔄 Regenerate Files: After any updates to tasks.json, regenerate the task files to keep them in sync.
  • 💬 Provide Context: When asking the Cursor agent to help with a task, provide context about what you're trying to achieve.
  • ✅ Validate Dependencies: Periodically run the validate-dependencies command to check for invalid or circular dependencies.