an_post_return 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.cursor/mcp.json +21 -0
- data/.cursor/rules/cursor_rules.mdc +53 -0
- data/.cursor/rules/dev_workflow.mdc +215 -0
- data/.cursor/rules/self_improve.mdc +73 -0
- data/.cursor/rules/taskmaster.mdc +353 -0
- data/.env.example +14 -0
- data/.rspec +3 -0
- data/.standard.yml +3 -0
- data/.windsurfrules +474 -0
- data/CHANGELOG.md +5 -0
- data/CODE_OF_CONDUCT.md +132 -0
- data/LICENSE.txt +21 -0
- data/README-task-master.md +645 -0
- data/README.md +166 -0
- data/Rakefile +10 -0
- data/lib/an_post_return/client.rb +82 -0
- data/lib/an_post_return/configuration.rb +47 -0
- data/lib/an_post_return/errors.rb +21 -0
- data/lib/an_post_return/objects/base.rb +70 -0
- data/lib/an_post_return/objects/return_label.rb +11 -0
- data/lib/an_post_return/resources/return_label_resource.rb +123 -0
- data/lib/an_post_return/sftp/client.rb +132 -0
- data/lib/an_post_return/sftp/errors.rb +12 -0
- data/lib/an_post_return/sftp/tracking_parser.rb +116 -0
- data/lib/an_post_return/tracker.rb +97 -0
- data/lib/an_post_return/version.rb +5 -0
- data/lib/an_post_return.rb +45 -0
- data/scripts/example_prd.txt +47 -0
- data/scripts/prd.txt +147 -0
- data/scripts/sftp_test.rb +185 -0
- data/scripts/task-complexity-report.json +131 -0
- data/sig/anpost_api.rbs +4 -0
- metadata +302 -0
@@ -0,0 +1,353 @@
|
|
1
|
+
---
|
2
|
+
description: Comprehensive reference for Taskmaster MCP tools and CLI commands.
|
3
|
+
globs: **/*
|
4
|
+
alwaysApply: true
|
5
|
+
---
|
6
|
+
|
7
|
+
# Taskmaster Tool & Command Reference
|
8
|
+
|
9
|
+
This document provides a detailed reference for interacting with Taskmaster, covering both the recommended MCP tools (for integrations like Cursor) and the corresponding `task-master` CLI commands (for direct user interaction or fallback).
|
10
|
+
|
11
|
+
**Note:** For interacting with Taskmaster programmatically or via integrated tools, using the **MCP tools is strongly recommended** due to better performance, structured data, and error handling. The CLI commands serve as a user-friendly alternative and fallback. See [`mcp.mdc`](mdc:.cursor/rules/mcp.mdc) for MCP implementation details and [`commands.mdc`](mdc:.cursor/rules/commands.mdc) for CLI implementation guidelines.
|
12
|
+
|
13
|
+
**Important:** Several MCP tools involve AI processing and are long-running operations that may take up to a minute to complete. When using these tools, always inform users that the operation is in progress and to wait patiently for results. The AI-powered tools include: `parse_prd`, `analyze_project_complexity`, `update_subtask`, `update_task`, `update`, `expand_all`, `expand_task`, and `add_task`.
|
14
|
+
|
15
|
+
---
|
16
|
+
|
17
|
+
## Initialization & Setup
|
18
|
+
|
19
|
+
### 1. Initialize Project (`init`)
|
20
|
+
|
21
|
+
* **MCP Tool:** `initialize_project`
|
22
|
+
* **CLI Command:** `task-master init [options]`
|
23
|
+
* **Description:** `Set up the basic Taskmaster file structure and configuration in the current directory for a new project.`
|
24
|
+
* **Key CLI Options:**
|
25
|
+
* `--name <name>`: `Set the name for your project in Taskmaster's configuration.`
|
26
|
+
* `--description <text>`: `Provide a brief description for your project.`
|
27
|
+
* `--version <version>`: `Set the initial version for your project (e.g., '0.1.0').`
|
28
|
+
* `-y, --yes`: `Initialize Taskmaster quickly using default settings without interactive prompts.`
|
29
|
+
* **Usage:** Run this once at the beginning of a new project.
|
30
|
+
* **MCP Variant Description:** `Set up the basic Taskmaster file structure and configuration in the current directory for a new project by running the 'task-master init' command.`
|
31
|
+
* **Key MCP Parameters/Options:**
|
32
|
+
* `projectName`: `Set the name for your project.` (CLI: `--name <name>`)
|
33
|
+
* `projectDescription`: `Provide a brief description for your project.` (CLI: `--description <text>`)
|
34
|
+
* `projectVersion`: `Set the initial version for your project (e.g., '0.1.0').` (CLI: `--version <version>`)
|
35
|
+
* `authorName`: `Author name.` (CLI: `--author <author>`)
|
36
|
+
* `skipInstall`: `Skip installing dependencies (default: false).` (CLI: `--skip-install`)
|
37
|
+
* `addAliases`: `Add shell aliases (tm, taskmaster) (default: false).` (CLI: `--aliases`)
|
38
|
+
* `yes`: `Skip prompts and use defaults/provided arguments (default: false).` (CLI: `-y, --yes`)
|
39
|
+
* **Usage:** Run this once at the beginning of a new project, typically via an integrated tool like Cursor. Operates on the current working directory of the MCP server.
|
40
|
+
* **Important:** Once complete, you *MUST* parse a prd in order to generate tasks. There will be no tasks files until then. The next step after initializing should be to create a PRD using the example PRD in scripts/example_prd.txt.
|
41
|
+
|
42
|
+
### 2. Parse PRD (`parse_prd`)
|
43
|
+
|
44
|
+
* **MCP Tool:** `parse_prd`
|
45
|
+
* **CLI Command:** `task-master parse-prd [file] [options]`
|
46
|
+
* **Description:** `Parse a Product Requirements Document (PRD) or text file with Taskmaster to automatically generate an initial set of tasks in tasks.json.`
|
47
|
+
* **Key Parameters/Options:**
|
48
|
+
* `input`: `Path to your PRD or requirements text file that Taskmaster should parse for tasks.` (CLI: `[file]` positional or `-i, --input <file>`)
|
49
|
+
* `output`: `Specify where Taskmaster should save the generated 'tasks.json' file (default: 'tasks/tasks.json').` (CLI: `-o, --output <file>`)
|
50
|
+
* `numTasks`: `Approximate number of top-level tasks Taskmaster should aim to generate from the document.` (CLI: `-n, --num-tasks <number>`)
|
51
|
+
* `force`: `Use this to allow Taskmaster to overwrite an existing 'tasks.json' without asking for confirmation.` (CLI: `-f, --force`)
|
52
|
+
* **Usage:** Useful for bootstrapping a project from an existing requirements document.
|
53
|
+
* **Notes:** Task Master will strictly adhere to any specific requirements mentioned in the PRD (libraries, database schemas, frameworks, tech stacks, etc.) while filling in any gaps where the PRD isn't fully specified. Tasks are designed to provide the most direct implementation path while avoiding over-engineering.
|
54
|
+
* **Important:** This MCP tool makes AI calls and can take up to a minute to complete. Please inform users to hang tight while the operation is in progress. If the user does not have a PRD, suggest discussing their idea and then use the example PRD in scripts/example_prd.txt as a template for creating the PRD based on their idea, for use with parse-prd.
|
55
|
+
|
56
|
+
---
|
57
|
+
|
58
|
+
## Task Listing & Viewing
|
59
|
+
|
60
|
+
### 3. Get Tasks (`get_tasks`)
|
61
|
+
|
62
|
+
* **MCP Tool:** `get_tasks`
|
63
|
+
* **CLI Command:** `task-master list [options]`
|
64
|
+
* **Description:** `List your Taskmaster tasks, optionally filtering by status and showing subtasks.`
|
65
|
+
* **Key Parameters/Options:**
|
66
|
+
* `status`: `Show only Taskmaster tasks matching this status (e.g., 'pending', 'done').` (CLI: `-s, --status <status>`)
|
67
|
+
* `withSubtasks`: `Include subtasks indented under their parent tasks in the list.` (CLI: `--with-subtasks`)
|
68
|
+
* `file`: `Path to your Taskmaster 'tasks.json' file (default relies on auto-detection).` (CLI: `-f, --file <file>`)
|
69
|
+
* **Usage:** Get an overview of the project status, often used at the start of a work session.
|
70
|
+
|
71
|
+
### 4. Get Next Task (`next_task`)
|
72
|
+
|
73
|
+
* **MCP Tool:** `next_task`
|
74
|
+
* **CLI Command:** `task-master next [options]`
|
75
|
+
* **Description:** `Ask Taskmaster to show the next available task you can work on, based on status and completed dependencies.`
|
76
|
+
* **Key Parameters/Options:**
|
77
|
+
* `file`: `Path to your Taskmaster 'tasks.json' file (default relies on auto-detection).` (CLI: `-f, --file <file>`)
|
78
|
+
* **Usage:** Identify what to work on next according to the plan.
|
79
|
+
|
80
|
+
### 5. Get Task Details (`get_task`)
|
81
|
+
|
82
|
+
* **MCP Tool:** `get_task`
|
83
|
+
* **CLI Command:** `task-master show [id] [options]`
|
84
|
+
* **Description:** `Display detailed information for a specific Taskmaster task or subtask by its ID.`
|
85
|
+
* **Key Parameters/Options:**
|
86
|
+
* `id`: `Required. The ID of the Taskmaster task (e.g., '15') or subtask (e.g., '15.2') you want to view.` (CLI: `[id]` positional or `-i, --id <id>`)
|
87
|
+
* `file`: `Path to your Taskmaster 'tasks.json' file (default relies on auto-detection).` (CLI: `-f, --file <file>`)
|
88
|
+
* **Usage:** Understand the full details, implementation notes, and test strategy for a specific task before starting work.
|
89
|
+
|
90
|
+
---
|
91
|
+
|
92
|
+
## Task Creation & Modification
|
93
|
+
|
94
|
+
### 6. Add Task (`add_task`)
|
95
|
+
|
96
|
+
* **MCP Tool:** `add_task`
|
97
|
+
* **CLI Command:** `task-master add-task [options]`
|
98
|
+
* **Description:** `Add a new task to Taskmaster by describing it; AI will structure it.`
|
99
|
+
* **Key Parameters/Options:**
|
100
|
+
* `prompt`: `Required. Describe the new task you want Taskmaster to create (e.g., "Implement user authentication using JWT").` (CLI: `-p, --prompt <text>`)
|
101
|
+
* `dependencies`: `Specify the IDs of any Taskmaster tasks that must be completed before this new one can start (e.g., '12,14').` (CLI: `-d, --dependencies <ids>`)
|
102
|
+
* `priority`: `Set the priority for the new task ('high', 'medium', 'low'; default: 'medium').` (CLI: `--priority <priority>`)
|
103
|
+
* `file`: `Path to your Taskmaster 'tasks.json' file (default relies on auto-detection).` (CLI: `-f, --file <file>`)
|
104
|
+
* **Usage:** Quickly add newly identified tasks during development.
|
105
|
+
* **Important:** This MCP tool makes AI calls and can take up to a minute to complete. Please inform users to hang tight while the operation is in progress.
|
106
|
+
|
107
|
+
### 7. Add Subtask (`add_subtask`)
|
108
|
+
|
109
|
+
* **MCP Tool:** `add_subtask`
|
110
|
+
* **CLI Command:** `task-master add-subtask [options]`
|
111
|
+
* **Description:** `Add a new subtask to a Taskmaster parent task, or convert an existing task into a subtask.`
|
112
|
+
* **Key Parameters/Options:**
|
113
|
+
* `id` / `parent`: `Required. The ID of the Taskmaster task that will be the parent.` (MCP: `id`, CLI: `-p, --parent <id>`)
|
114
|
+
* `taskId`: `Use this if you want to convert an existing top-level Taskmaster task into a subtask of the specified parent.` (CLI: `-i, --task-id <id>`)
|
115
|
+
* `title`: `Required (if not using taskId). The title for the new subtask Taskmaster should create.` (CLI: `-t, --title <title>`)
|
116
|
+
* `description`: `A brief description for the new subtask.` (CLI: `-d, --description <text>`)
|
117
|
+
* `details`: `Provide implementation notes or details for the new subtask.` (CLI: `--details <text>`)
|
118
|
+
* `dependencies`: `Specify IDs of other tasks or subtasks (e.g., '15', '16.1') that must be done before this new subtask.` (CLI: `--dependencies <ids>`)
|
119
|
+
* `status`: `Set the initial status for the new subtask (default: 'pending').` (CLI: `-s, --status <status>`)
|
120
|
+
* `skipGenerate`: `Prevent Taskmaster from automatically regenerating markdown task files after adding the subtask.` (CLI: `--skip-generate`)
|
121
|
+
* `file`: `Path to your Taskmaster 'tasks.json' file (default relies on auto-detection).` (CLI: `-f, --file <file>`)
|
122
|
+
* **Usage:** Break down tasks manually or reorganize existing tasks.
|
123
|
+
|
124
|
+
### 8. Update Tasks (`update`)
|
125
|
+
|
126
|
+
* **MCP Tool:** `update`
|
127
|
+
* **CLI Command:** `task-master update [options]`
|
128
|
+
* **Description:** `Update multiple upcoming tasks in Taskmaster based on new context or changes, starting from a specific task ID.`
|
129
|
+
* **Key Parameters/Options:**
|
130
|
+
* `from`: `Required. The ID of the first task Taskmaster should update. All tasks with this ID or higher (and not 'done') will be considered.` (CLI: `--from <id>`)
|
131
|
+
* `prompt`: `Required. Explain the change or new context for Taskmaster to apply to the tasks (e.g., "We are now using React Query instead of Redux Toolkit for data fetching").` (CLI: `-p, --prompt <text>`)
|
132
|
+
* `research`: `Enable Taskmaster to use Perplexity AI for more informed updates based on external knowledge (requires PERPLEXITY_API_KEY).` (CLI: `-r, --research`)
|
133
|
+
* `file`: `Path to your Taskmaster 'tasks.json' file (default relies on auto-detection).` (CLI: `-f, --file <file>`)
|
134
|
+
* **Usage:** Handle significant implementation changes or pivots that affect multiple future tasks. Example CLI: `task-master update --from='18' --prompt='Switching to React Query.\nNeed to refactor data fetching...'`
|
135
|
+
* **Important:** This MCP tool makes AI calls and can take up to a minute to complete. Please inform users to hang tight while the operation is in progress.
|
136
|
+
|
137
|
+
### 9. Update Task (`update_task`)
|
138
|
+
|
139
|
+
* **MCP Tool:** `update_task`
|
140
|
+
* **CLI Command:** `task-master update-task [options]`
|
141
|
+
* **Description:** `Modify a specific Taskmaster task (or subtask) by its ID, incorporating new information or changes.`
|
142
|
+
* **Key Parameters/Options:**
|
143
|
+
* `id`: `Required. The specific ID of the Taskmaster task (e.g., '15') or subtask (e.g., '15.2') you want to update.` (CLI: `-i, --id <id>`)
|
144
|
+
* `prompt`: `Required. Explain the specific changes or provide the new information Taskmaster should incorporate into this task.` (CLI: `-p, --prompt <text>`)
|
145
|
+
* `research`: `Enable Taskmaster to use Perplexity AI for more informed updates (requires PERPLEXITY_API_KEY).` (CLI: `-r, --research`)
|
146
|
+
* `file`: `Path to your Taskmaster 'tasks.json' file (default relies on auto-detection).` (CLI: `-f, --file <file>`)
|
147
|
+
* **Usage:** Refine a specific task based on new understanding or feedback. Example CLI: `task-master update-task --id='15' --prompt='Clarification: Use PostgreSQL instead of MySQL.\nUpdate schema details...'`
|
148
|
+
* **Important:** This MCP tool makes AI calls and can take up to a minute to complete. Please inform users to hang tight while the operation is in progress.
|
149
|
+
|
150
|
+
### 10. Update Subtask (`update_subtask`)
|
151
|
+
|
152
|
+
* **MCP Tool:** `update_subtask`
|
153
|
+
* **CLI Command:** `task-master update-subtask [options]`
|
154
|
+
* **Description:** `Append timestamped notes or details to a specific Taskmaster subtask without overwriting existing content. Intended for iterative implementation logging.`
|
155
|
+
* **Key Parameters/Options:**
|
156
|
+
* `id`: `Required. The specific ID of the Taskmaster subtask (e.g., '15.2') you want to add information to.` (CLI: `-i, --id <id>`)
|
157
|
+
* `prompt`: `Required. Provide the information or notes Taskmaster should append to the subtask's details. Ensure this adds *new* information not already present.` (CLI: `-p, --prompt <text>`)
|
158
|
+
* `research`: `Enable Taskmaster to use Perplexity AI for more informed updates (requires PERPLEXITY_API_KEY).` (CLI: `-r, --research`)
|
159
|
+
* `file`: `Path to your Taskmaster 'tasks.json' file (default relies on auto-detection).` (CLI: `-f, --file <file>`)
|
160
|
+
* **Usage:** Add implementation notes, code snippets, or clarifications to a subtask during development. Before calling, review the subtask's current details to append only fresh insights, helping to build a detailed log of the implementation journey and avoid redundancy. Example CLI: `task-master update-subtask --id='15.2' --prompt='Discovered that the API requires header X.\nImplementation needs adjustment...'`
|
161
|
+
* **Important:** This MCP tool makes AI calls and can take up to a minute to complete. Please inform users to hang tight while the operation is in progress.
|
162
|
+
|
163
|
+
### 11. Set Task Status (`set_task_status`)
|
164
|
+
|
165
|
+
* **MCP Tool:** `set_task_status`
|
166
|
+
* **CLI Command:** `task-master set-status [options]`
|
167
|
+
* **Description:** `Update the status of one or more Taskmaster tasks or subtasks (e.g., 'pending', 'in-progress', 'done').`
|
168
|
+
* **Key Parameters/Options:**
|
169
|
+
* `id`: `Required. The ID(s) of the Taskmaster task(s) or subtask(s) (e.g., '15', '15.2', '16,17.1') to update.` (CLI: `-i, --id <id>`)
|
170
|
+
* `status`: `Required. The new status to set (e.g., 'done', 'pending', 'in-progress', 'review', 'cancelled').` (CLI: `-s, --status <status>`)
|
171
|
+
* `file`: `Path to your Taskmaster 'tasks.json' file (default relies on auto-detection).` (CLI: `-f, --file <file>`)
|
172
|
+
* **Usage:** Mark progress as tasks move through the development cycle.
|
173
|
+
|
174
|
+
### 12. Remove Task (`remove_task`)
|
175
|
+
|
176
|
+
* **MCP Tool:** `remove_task`
|
177
|
+
* **CLI Command:** `task-master remove-task [options]`
|
178
|
+
* **Description:** `Permanently remove a task or subtask from the Taskmaster tasks list.`
|
179
|
+
* **Key Parameters/Options:**
|
180
|
+
* `id`: `Required. The ID of the Taskmaster task (e.g., '5') or subtask (e.g., '5.2') to permanently remove.` (CLI: `-i, --id <id>`)
|
181
|
+
* `yes`: `Skip the confirmation prompt and immediately delete the task.` (CLI: `-y, --yes`)
|
182
|
+
* `file`: `Path to your Taskmaster 'tasks.json' file (default relies on auto-detection).` (CLI: `-f, --file <file>`)
|
183
|
+
* **Usage:** Permanently delete tasks or subtasks that are no longer needed in the project.
|
184
|
+
* **Notes:** Use with caution as this operation cannot be undone. Consider using 'blocked', 'cancelled', or 'deferred' status instead if you just want to exclude a task from active planning but keep it for reference. The command automatically cleans up dependency references in other tasks.
|
185
|
+
|
186
|
+
---
|
187
|
+
|
188
|
+
## Task Structure & Breakdown
|
189
|
+
|
190
|
+
### 13. Expand Task (`expand_task`)
|
191
|
+
|
192
|
+
* **MCP Tool:** `expand_task`
|
193
|
+
* **CLI Command:** `task-master expand [options]`
|
194
|
+
* **Description:** `Use Taskmaster's AI to break down a complex task (or all tasks) into smaller, manageable subtasks.`
|
195
|
+
* **Key Parameters/Options:**
|
196
|
+
* `id`: `The ID of the specific Taskmaster task you want to break down into subtasks.` (CLI: `-i, --id <id>`)
|
197
|
+
* `num`: `Suggests how many subtasks Taskmaster should aim to create (uses complexity analysis by default).` (CLI: `-n, --num <number>`)
|
198
|
+
* `research`: `Enable Taskmaster to use Perplexity AI for more informed subtask generation (requires PERPLEXITY_API_KEY).` (CLI: `-r, --research`)
|
199
|
+
* `prompt`: `Provide extra context or specific instructions to Taskmaster for generating the subtasks.` (CLI: `-p, --prompt <text>`)
|
200
|
+
* `force`: `Use this to make Taskmaster replace existing subtasks with newly generated ones.` (CLI: `--force`)
|
201
|
+
* `file`: `Path to your Taskmaster 'tasks.json' file (default relies on auto-detection).` (CLI: `-f, --file <file>`)
|
202
|
+
* **Usage:** Generate a detailed implementation plan for a complex task before starting coding.
|
203
|
+
* **Important:** This MCP tool makes AI calls and can take up to a minute to complete. Please inform users to hang tight while the operation is in progress.
|
204
|
+
|
205
|
+
### 14. Expand All Tasks (`expand_all`)
|
206
|
+
|
207
|
+
* **MCP Tool:** `expand_all`
|
208
|
+
* **CLI Command:** `task-master expand --all [options]` (Note: CLI uses the `expand` command with the `--all` flag)
|
209
|
+
* **Description:** `Tell Taskmaster to automatically expand all 'pending' tasks based on complexity analysis.`
|
210
|
+
* **Key Parameters/Options:**
|
211
|
+
* `num`: `Suggests how many subtasks Taskmaster should aim to create per task.` (CLI: `-n, --num <number>`)
|
212
|
+
* `research`: `Enable Perplexity AI for more informed subtask generation (requires PERPLEXITY_API_KEY).` (CLI: `-r, --research`)
|
213
|
+
* `prompt`: `Provide extra context for Taskmaster to apply generally during expansion.` (CLI: `-p, --prompt <text>`)
|
214
|
+
* `force`: `Make Taskmaster replace existing subtasks.` (CLI: `--force`)
|
215
|
+
* `file`: `Path to your Taskmaster 'tasks.json' file (default relies on auto-detection).` (CLI: `-f, --file <file>`)
|
216
|
+
* **Usage:** Useful after initial task generation or complexity analysis to break down multiple tasks at once.
|
217
|
+
* **Important:** This MCP tool makes AI calls and can take up to a minute to complete. Please inform users to hang tight while the operation is in progress.
|
218
|
+
|
219
|
+
### 15. Clear Subtasks (`clear_subtasks`)
|
220
|
+
|
221
|
+
* **MCP Tool:** `clear_subtasks`
|
222
|
+
* **CLI Command:** `task-master clear-subtasks [options]`
|
223
|
+
* **Description:** `Remove all subtasks from one or more specified Taskmaster parent tasks.`
|
224
|
+
* **Key Parameters/Options:**
|
225
|
+
* `id`: `The ID(s) of the Taskmaster parent task(s) whose subtasks you want to remove (e.g., '15', '16,18').` (Required unless using `all`) (CLI: `-i, --id <ids>`)
|
226
|
+
* `all`: `Tell Taskmaster to remove subtasks from all parent tasks.` (CLI: `--all`)
|
227
|
+
* `file`: `Path to your Taskmaster 'tasks.json' file (default relies on auto-detection).` (CLI: `-f, --file <file>`)
|
228
|
+
* **Usage:** Used before regenerating subtasks with `expand_task` if the previous breakdown needs replacement.
|
229
|
+
|
230
|
+
### 16. Remove Subtask (`remove_subtask`)
|
231
|
+
|
232
|
+
* **MCP Tool:** `remove_subtask`
|
233
|
+
* **CLI Command:** `task-master remove-subtask [options]`
|
234
|
+
* **Description:** `Remove a subtask from its Taskmaster parent, optionally converting it into a standalone task.`
|
235
|
+
* **Key Parameters/Options:**
|
236
|
+
* `id`: `Required. The ID(s) of the Taskmaster subtask(s) to remove (e.g., '15.2', '16.1,16.3').` (CLI: `-i, --id <id>`)
|
237
|
+
* `convert`: `If used, Taskmaster will turn the subtask into a regular top-level task instead of deleting it.` (CLI: `-c, --convert`)
|
238
|
+
* `skipGenerate`: `Prevent Taskmaster from automatically regenerating markdown task files after removing the subtask.` (CLI: `--skip-generate`)
|
239
|
+
* `file`: `Path to your Taskmaster 'tasks.json' file (default relies on auto-detection).` (CLI: `-f, --file <file>`)
|
240
|
+
* **Usage:** Delete unnecessary subtasks or promote a subtask to a top-level task.
|
241
|
+
|
242
|
+
---
|
243
|
+
|
244
|
+
## Dependency Management
|
245
|
+
|
246
|
+
### 17. Add Dependency (`add_dependency`)
|
247
|
+
|
248
|
+
* **MCP Tool:** `add_dependency`
|
249
|
+
* **CLI Command:** `task-master add-dependency [options]`
|
250
|
+
* **Description:** `Define a dependency in Taskmaster, making one task a prerequisite for another.`
|
251
|
+
* **Key Parameters/Options:**
|
252
|
+
* `id`: `Required. The ID of the Taskmaster task that will depend on another.` (CLI: `-i, --id <id>`)
|
253
|
+
* `dependsOn`: `Required. The ID of the Taskmaster task that must be completed first (the prerequisite).` (CLI: `-d, --depends-on <id>`)
|
254
|
+
* `file`: `Path to your Taskmaster 'tasks.json' file (default relies on auto-detection).` (CLI: `-f, --file <file>`)
|
255
|
+
* **Usage:** Establish the correct order of execution between tasks.
|
256
|
+
|
257
|
+
### 18. Remove Dependency (`remove_dependency`)
|
258
|
+
|
259
|
+
* **MCP Tool:** `remove_dependency`
|
260
|
+
* **CLI Command:** `task-master remove-dependency [options]`
|
261
|
+
* **Description:** `Remove a dependency relationship between two Taskmaster tasks.`
|
262
|
+
* **Key Parameters/Options:**
|
263
|
+
* `id`: `Required. The ID of the Taskmaster task you want to remove a prerequisite from.` (CLI: `-i, --id <id>`)
|
264
|
+
* `dependsOn`: `Required. The ID of the Taskmaster task that should no longer be a prerequisite.` (CLI: `-d, --depends-on <id>`)
|
265
|
+
* `file`: `Path to your Taskmaster 'tasks.json' file (default relies on auto-detection).` (CLI: `-f, --file <file>`)
|
266
|
+
* **Usage:** Update task relationships when the order of execution changes.
|
267
|
+
|
268
|
+
### 19. Validate Dependencies (`validate_dependencies`)
|
269
|
+
|
270
|
+
* **MCP Tool:** `validate_dependencies`
|
271
|
+
* **CLI Command:** `task-master validate-dependencies [options]`
|
272
|
+
* **Description:** `Check your Taskmaster tasks for dependency issues (like circular references or links to non-existent tasks) without making changes.`
|
273
|
+
* **Key Parameters/Options:**
|
274
|
+
* `file`: `Path to your Taskmaster 'tasks.json' file (default relies on auto-detection).` (CLI: `-f, --file <file>`)
|
275
|
+
* **Usage:** Audit the integrity of your task dependencies.
|
276
|
+
|
277
|
+
### 20. Fix Dependencies (`fix_dependencies`)
|
278
|
+
|
279
|
+
* **MCP Tool:** `fix_dependencies`
|
280
|
+
* **CLI Command:** `task-master fix-dependencies [options]`
|
281
|
+
* **Description:** `Automatically fix dependency issues (like circular references or links to non-existent tasks) in your Taskmaster tasks.`
|
282
|
+
* **Key Parameters/Options:**
|
283
|
+
* `file`: `Path to your Taskmaster 'tasks.json' file (default relies on auto-detection).` (CLI: `-f, --file <file>`)
|
284
|
+
* **Usage:** Clean up dependency errors automatically.
|
285
|
+
|
286
|
+
---
|
287
|
+
|
288
|
+
## Analysis & Reporting
|
289
|
+
|
290
|
+
### 21. Analyze Project Complexity (`analyze_project_complexity`)
|
291
|
+
|
292
|
+
* **MCP Tool:** `analyze_project_complexity`
|
293
|
+
* **CLI Command:** `task-master analyze-complexity [options]`
|
294
|
+
* **Description:** `Have Taskmaster analyze your tasks to determine their complexity and suggest which ones need to be broken down further.`
|
295
|
+
* **Key Parameters/Options:**
|
296
|
+
* `output`: `Where to save the complexity analysis report (default: 'scripts/task-complexity-report.json').` (CLI: `-o, --output <file>`)
|
297
|
+
* `threshold`: `The minimum complexity score (1-10) that should trigger a recommendation to expand a task.` (CLI: `-t, --threshold <number>`)
|
298
|
+
* `research`: `Enable Perplexity AI for more accurate complexity analysis (requires PERPLEXITY_API_KEY).` (CLI: `-r, --research`)
|
299
|
+
* `file`: `Path to your Taskmaster 'tasks.json' file (default relies on auto-detection).` (CLI: `-f, --file <file>`)
|
300
|
+
* **Usage:** Used before breaking down tasks to identify which ones need the most attention.
|
301
|
+
* **Important:** This MCP tool makes AI calls and can take up to a minute to complete. Please inform users to hang tight while the operation is in progress.
|
302
|
+
|
303
|
+
### 22. View Complexity Report (`complexity_report`)
|
304
|
+
|
305
|
+
* **MCP Tool:** `complexity_report`
|
306
|
+
* **CLI Command:** `task-master complexity-report [options]`
|
307
|
+
* **Description:** `Display the task complexity analysis report in a readable format.`
|
308
|
+
* **Key Parameters/Options:**
|
309
|
+
* `file`: `Path to the complexity report (default: 'scripts/task-complexity-report.json').` (CLI: `-f, --file <file>`)
|
310
|
+
* **Usage:** Review and understand the complexity analysis results after running analyze-complexity.
|
311
|
+
|
312
|
+
---
|
313
|
+
|
314
|
+
## File Management
|
315
|
+
|
316
|
+
### 23. Generate Task Files (`generate`)
|
317
|
+
|
318
|
+
* **MCP Tool:** `generate`
|
319
|
+
* **CLI Command:** `task-master generate [options]`
|
320
|
+
* **Description:** `Create or update individual Markdown files for each task based on your tasks.json.`
|
321
|
+
* **Key Parameters/Options:**
|
322
|
+
* `output`: `The directory where Taskmaster should save the task files (default: in a 'tasks' directory).` (CLI: `-o, --output <directory>`)
|
323
|
+
* `file`: `Path to your Taskmaster 'tasks.json' file (default relies on auto-detection).` (CLI: `-f, --file <file>`)
|
324
|
+
* **Usage:** Run this after making changes to tasks.json to keep individual task files up to date.
|
325
|
+
|
326
|
+
---
|
327
|
+
|
328
|
+
## Environment Variables Configuration
|
329
|
+
|
330
|
+
Taskmaster's behavior can be customized via environment variables. These affect both CLI and MCP server operation:
|
331
|
+
|
332
|
+
* **ANTHROPIC_API_KEY** (Required): Your Anthropic API key for Claude.
|
333
|
+
* **MODEL**: Claude model to use (default: `claude-3-opus-20240229`).
|
334
|
+
* **MAX_TOKENS**: Maximum tokens for AI responses (default: 8192).
|
335
|
+
* **TEMPERATURE**: Temperature for AI model responses (default: 0.7).
|
336
|
+
* **DEBUG**: Enable debug logging (`true`/`false`, default: `false`).
|
337
|
+
* **LOG_LEVEL**: Console output level (`debug`, `info`, `warn`, `error`, default: `info`).
|
338
|
+
* **DEFAULT_SUBTASKS**: Default number of subtasks for `expand` (default: 5).
|
339
|
+
* **DEFAULT_PRIORITY**: Default priority for new tasks (default: `medium`).
|
340
|
+
* **PROJECT_NAME**: Project name used in metadata.
|
341
|
+
* **PROJECT_VERSION**: Project version used in metadata.
|
342
|
+
* **PERPLEXITY_API_KEY**: API key for Perplexity AI (for `--research` flags).
|
343
|
+
* **PERPLEXITY_MODEL**: Perplexity model to use (default: `sonar-medium-online`).
|
344
|
+
|
345
|
+
Set these in your `.env` file in the project root or in your environment before running Taskmaster.
|
346
|
+
|
347
|
+
---
|
348
|
+
|
349
|
+
For implementation details:
|
350
|
+
* CLI commands: See [`commands.mdc`](mdc:.cursor/rules/commands.mdc)
|
351
|
+
* MCP server: See [`mcp.mdc`](mdc:.cursor/rules/mcp.mdc)
|
352
|
+
* Task structure: See [`tasks.mdc`](mdc:.cursor/rules/tasks.mdc)
|
353
|
+
* Workflow: See [`dev_workflow.mdc`](mdc:.cursor/rules/dev_workflow.mdc)
|
data/.env.example
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
# Required
|
2
|
+
ANTHROPIC_API_KEY=your-api-key-here # For most AI ops -- Format: sk-ant-api03-... (Required)
|
3
|
+
PERPLEXITY_API_KEY=pplx-abcde # For research -- Format: pplx-abcde (Optional, Highly Recommended)
|
4
|
+
|
5
|
+
# Optional - defaults shown
|
6
|
+
MODEL=claude-3-7-sonnet-20250219 # Recommended models: claude-3-7-sonnet-20250219, claude-3-opus-20240229 (Required)
|
7
|
+
PERPLEXITY_MODEL=sonar-pro # Make sure you have access to sonar-pro otherwise you can use sonar regular (Optional)
|
8
|
+
MAX_TOKENS=64000 # Maximum tokens for model responses (Required)
|
9
|
+
TEMPERATURE=0.2 # Temperature for model responses (0.0-1.0) - lower = less creativity and follow your prompt closely (Required)
|
10
|
+
DEBUG=false # Enable debug logging (true/false)
|
11
|
+
LOG_LEVEL=info # Log level (debug, info, warn, error)
|
12
|
+
DEFAULT_SUBTASKS=5 # Default number of subtasks when expanding
|
13
|
+
DEFAULT_PRIORITY=medium # Default priority for generated tasks (high, medium, low)
|
14
|
+
PROJECT_NAME={{projectName}} # Project name for tasks.json metadata
|
data/.rspec
ADDED
data/.standard.yml
ADDED