Skip to content

Commit b0dfcf3

Browse files
chore: apply requested changes from next branch (#629)
1 parent 3f64202 commit b0dfcf3

File tree

6 files changed

+22
-17
lines changed

6 files changed

+22
-17
lines changed

.cursor/rules/dev_workflow.mdc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ Task Master offers two primary ways to interact:
104104

105105
Taskmaster configuration is managed through two main mechanisms:
106106

107-
1. **`.taskmasterconfig` File (Primary):**
107+
1. **`.taskmaster/config.json` File (Primary):**
108108
* Located in the project root directory.
109109
* Stores most configuration settings: AI model selections (main, research, fallback), parameters (max tokens, temperature), logging level, default subtasks/priority, project name, etc.
110110
* **Managed via `task-master models --setup` command.** Do not edit manually unless you know what you are doing.

.cursor/rules/taskmaster.mdc

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ This document provides a detailed reference for interacting with Taskmaster, cov
3636
* `addAliases`: `Add shell aliases tm and taskmaster. Default is false.` (CLI: `--aliases`)
3737
* `yes`: `Skip prompts and use defaults/provided arguments. Default is false.` (CLI: `-y, --yes`)
3838
* **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.
39-
* **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.
39+
* **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 .taskmaster/templates/example_prd.txt.
4040

4141
### 2. Parse PRD (`parse_prd`)
4242

@@ -50,7 +50,7 @@ This document provides a detailed reference for interacting with Taskmaster, cov
5050
* `force`: `Use this to allow Taskmaster to overwrite an existing 'tasks.json' without asking for confirmation.` (CLI: `-f, --force`)
5151
* **Usage:** Useful for bootstrapping a project from an existing requirements document.
5252
* **Notes:** Task Master will strictly adhere to any specific requirements mentioned in the PRD, such as 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.
53-
* **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`.
53+
* **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 `.taskmaster/templates/example_prd.txt` as a template for creating the PRD based on their idea, for use with `parse-prd`.
5454

5555
---
5656

@@ -77,10 +77,10 @@ This document provides a detailed reference for interacting with Taskmaster, cov
7777
* `--setup`: `Run interactive setup to configure models, including custom Ollama/OpenRouter IDs.`
7878
* **Usage (MCP):** Call without set flags to get current config. Use `setMain`, `setResearch`, or `setFallback` with a valid model ID to update the configuration. Use `listAvailableModels: true` to get a list of unassigned models. To set a custom model, provide the model ID and set `ollama: true` or `openrouter: true`.
7979
* **Usage (CLI):** Run without flags to view current configuration and available models. Use set flags to update specific roles. Use `--setup` for guided configuration, including custom models. To set a custom model via flags, use `--set-<role>=<model_id>` along with either `--ollama` or `--openrouter`.
80-
* **Notes:** Configuration is stored in `.taskmasterconfig` in the project root. This command/tool modifies that file. Use `listAvailableModels` or `task-master models` to see internally supported models. OpenRouter custom models are validated against their live API. Ollama custom models are not validated live.
80+
* **Notes:** Configuration is stored in `.taskmaster/config.json` in the project root. This command/tool modifies that file. Use `listAvailableModels` or `task-master models` to see internally supported models. OpenRouter custom models are validated against their live API. Ollama custom models are not validated live.
8181
* **API note:** API keys for selected AI providers (based on their model) need to exist in the mcp.json file to be accessible in MCP context. The API keys must be present in the local .env file for the CLI to be able to read them.
8282
* **Model costs:** The costs in supported models are expressed in dollars. An input/output value of 3 is $3.00. A value of 0.8 is $0.80.
83-
* **Warning:** DO NOT MANUALLY EDIT THE .taskmasterconfig FILE. Use the included commands either in the MCP or CLI format as needed. Always prioritize MCP tools when available and use the CLI as a fallback.
83+
* **Warning:** DO NOT MANUALLY EDIT THE .taskmaster/config.json FILE. Use the included commands either in the MCP or CLI format as needed. Always prioritize MCP tools when available and use the CLI as a fallback.
8484

8585
---
8686

@@ -348,7 +348,7 @@ This document provides a detailed reference for interacting with Taskmaster, cov
348348
* **CLI Command:** `task-master analyze-complexity [options]`
349349
* **Description:** `Have Taskmaster analyze your tasks to determine their complexity and suggest which ones need to be broken down further.`
350350
* **Key Parameters/Options:**
351-
* `output`: `Where to save the complexity analysis report (default: 'scripts/task-complexity-report.json').` (CLI: `-o, --output <file>`)
351+
* `output`: `Where to save the complexity analysis report (default: '.taskmaster/reports/task-complexity-report.json').` (CLI: `-o, --output <file>`)
352352
* `threshold`: `The minimum complexity score (1-10) that should trigger a recommendation to expand a task.` (CLI: `-t, --threshold <number>`)
353353
* `research`: `Enable research role for more accurate complexity analysis. Requires appropriate API key.` (CLI: `-r, --research`)
354354
* `file`: `Path to your Taskmaster 'tasks.json' file. Default relies on auto-detection.` (CLI: `-f, --file <file>`)
@@ -361,7 +361,7 @@ This document provides a detailed reference for interacting with Taskmaster, cov
361361
* **CLI Command:** `task-master complexity-report [options]`
362362
* **Description:** `Display the task complexity analysis report in a readable format.`
363363
* **Key Parameters/Options:**
364-
* `file`: `Path to the complexity report (default: 'scripts/task-complexity-report.json').` (CLI: `-f, --file <file>`)
364+
* `file`: `Path to the complexity report (default: '.taskmaster/reports/task-complexity-report.json').` (CLI: `-f, --file <file>`)
365365
* **Usage:** Review and understand the complexity analysis results after running analyze-complexity.
366366

367367
---
@@ -382,7 +382,7 @@ This document provides a detailed reference for interacting with Taskmaster, cov
382382

383383
## Environment Variables Configuration (Updated)
384384

385-
Taskmaster primarily uses the **`.taskmasterconfig`** file (in project root) for configuration (models, parameters, logging level, etc.), managed via `task-master models --setup`.
385+
Taskmaster primarily uses the **`.taskmaster/config.json`** file (in project root) for configuration (models, parameters, logging level, etc.), managed via `task-master models --setup`.
386386

387387
Environment variables are used **only** for sensitive API keys related to AI providers and specific overrides like the Ollama base URL:
388388

@@ -396,11 +396,11 @@ Environment variables are used **only** for sensitive API keys related to AI pro
396396
* `OPENROUTER_API_KEY`
397397
* `XAI_API_KEY`
398398
* `OLLANA_API_KEY` (Requires `OLLAMA_BASE_URL` too)
399-
* **Endpoints (Optional/Provider Specific inside .taskmasterconfig):**
399+
* **Endpoints (Optional/Provider Specific inside .taskmaster/config.json):**
400400
* `AZURE_OPENAI_ENDPOINT`
401401
* `OLLAMA_BASE_URL` (Default: `http://localhost:11434/api`)
402402

403-
**Set API keys** in your **`.env`** file in the project root (for CLI use) or within the `env` section of your **`.cursor/mcp.json`** file (for MCP/Cursor integration). All other settings (model choice, max tokens, temperature, log level, custom endpoints) are managed in `.taskmasterconfig` via `task-master models` command or `models` MCP tool.
403+
**Set API keys** in your **`.env`** file in the project root (for CLI use) or within the `env` section of your **`.cursor/mcp.json`** file (for MCP/Cursor integration). All other settings (model choice, max tokens, temperature, log level, custom endpoints) are managed in `.taskmaster/config.json` via `task-master models` command or `models` MCP tool.
404404

405405
---
406406

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -170,7 +170,7 @@ Example:
170170

171171
### Prerequisites
172172

173-
- Node.js 14+
173+
- Node.js 18+
174174
- npm or yarn
175175

176176
### Environment Setup

README.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,13 +115,16 @@ In your editor's AI chat pane, say:
115115
Initialize taskmaster-ai in my project
116116
```
117117

118-
#### 5. Make sure you have a PRD
118+
#### 5. Make sure you have a PRD (Recommended)
119119

120120
For **new projects**: Create your PRD at `.taskmaster/docs/prd.txt`
121121
For **existing projects**: You can use `scripts/prd.txt` or migrate with `task-master migrate`
122122

123123
An example PRD template is available after initialization in `.taskmaster/templates/example_prd.txt`.
124124

125+
> [!NOTE]
126+
> 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.
127+
125128
**Always start with a detailed PRD.**
126129

127130
The more detailed your PRD, the better the generated tasks will be.

mcp-server/src/core/direct-functions/initialize-project.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ export async function initializeProjectDirect(args, log, context = {}) {
7575
resultData = {
7676
message: 'Project initialized successfully.',
7777
next_step:
78-
'Now that the project is initialized, the next step is to create the tasks by parsing a PRD. This will create the tasks folder and the initial task files (tasks folder will be created when parse-prd is run). The parse-prd tool will require a prd.txt file as input (typically found in the project root directory, .taskmaster/docs directory). You can create a prd.txt file by asking the user about their idea, and then using the scripts/example_prd.txt file as a template to genrate a prd.txt file in scripts/. You may skip all of this if the user already has a prd.txt file. You can THEN use the parse-prd tool to create the tasks. So: step 1 after initialization is to create a prd.txt file in .taskmaster/docs/prd.txt or confirm the user already has one. Step 2 is to use the parse-prd tool to create the tasks. Do not bother looking for tasks after initialization, just use the parse-prd tool to create the tasks after creating a prd.txt from which to parse the tasks. You do NOT need to reinitialize the project to parse-prd.',
78+
'Now that the project is initialized, the next step is to create the tasks by parsing a PRD. This will create the tasks folder and the initial task files (tasks folder will be created when parse-prd is run). The parse-prd tool will require a prd.txt file as input (typically found in .taskmaster/docs/ directory). You can create a prd.txt file by asking the user about their idea, and then using the .taskmaster/templates/example_prd.txt file as a template to generate a prd.txt file in .taskmaster/docs/. You may skip all of this if the user already has a prd.txt file. You can THEN use the parse-prd tool to create the tasks. So: step 1 after initialization is to create a prd.txt file in .taskmaster/docs/prd.txt or confirm the user already has one. Step 2 is to use the parse-prd tool to create the tasks. Do not bother looking for tasks after initialization, just use the parse-prd tool to create the tasks after creating a prd.txt from which to parse the tasks. You do NOT need to reinitialize the project to parse-prd.',
7979
...result
8080
};
8181
success = true;

scripts/init.js

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -297,7 +297,7 @@ function copyTemplateFile(templateName, targetPath, replacements = {}) {
297297

298298
if (newLines.length > 0) {
299299
// Add a comment to separate the original content from our additions
300-
const updatedContent = `${existingContent.trim()}\n\n# Added by Claude Task Master\n${newLines.join('\n')}`;
300+
const updatedContent = `${existingContent.trim()}\n\n# Added by Task Master AI\n${newLines.join('\n')}`;
301301
fs.writeFileSync(targetPath, updatedContent);
302302
log('success', `Updated ${targetPath} with additional entries`);
303303
} else {
@@ -636,7 +636,7 @@ function createProjectStructure(addAliases, dryRun, options) {
636636
log('info', 'Skipping interactive model setup due to --yes flag.');
637637
log(
638638
'info',
639-
'You can configure AI models later using "task-master models --setup" or "task-master models --set-..." commands.'
639+
'Default AI models will be used. You can configure different models later using "task-master models --setup" or "task-master models --set-..." commands.'
640640
);
641641
}
642642
// ====================================
@@ -675,10 +675,12 @@ function createProjectStructure(addAliases, dryRun, options) {
675675
)}\n${chalk.white(' └─ ')}${chalk.dim('MCP Tool: ')}${chalk.cyan('analyze_project_complexity')}${chalk.dim(' | CLI: ')}${chalk.cyan('task-master analyze-complexity')}\n${chalk.white('5. ')}${chalk.yellow(
676676
'Ask Cursor to expand all of your tasks using the complexity analysis'
677677
)}\n${chalk.white('6. ')}${chalk.yellow('Ask Cursor to begin working on the next task')}\n${chalk.white('7. ')}${chalk.yellow(
678-
'Ask Cursor to set the status of one or many tasks/subtasks at a time. Use the task id from the task lists.'
678+
'Add new tasks anytime using the add-task command or MCP tool'
679679
)}\n${chalk.white('8. ')}${chalk.yellow(
680+
'Ask Cursor to set the status of one or many tasks/subtasks at a time. Use the task id from the task lists.'
681+
)}\n${chalk.white('9. ')}${chalk.yellow(
680682
'Ask Cursor to update all tasks from a specific task id based on new learnings or pivots in your project.'
681-
)}\n${chalk.white('9. ')}${chalk.green.bold('Ship it!')}\n\n${chalk.dim(
683+
)}\n${chalk.white('10. ')}${chalk.green.bold('Ship it!')}\n\n${chalk.dim(
682684
'* Review the README.md file to learn how to use other commands via Cursor Agent.'
683685
)}\n${chalk.dim(
684686
'* Use the task-master command without arguments to see all available commands.'

0 commit comments

Comments
 (0)