From db631f43a59e278a0f92cf064d601bb36755bc7f Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 19 May 2025 22:31:08 +0000 Subject: [PATCH 01/25] Version Packages --- .changeset/beige-doodles-type.md | 5 --- .changeset/floppy-plants-marry.md | 9 ----- .changeset/forty-plums-stay.md | 5 --- .changeset/free-bikes-smile.md | 11 ------ .changeset/many-wasps-sell.md | 5 --- .changeset/nice-lies-cover.md | 5 --- .changeset/pre.json | 26 ------------- .changeset/red-oranges-attend.md | 5 --- .changeset/red-suns-wash.md | 5 --- .changeset/sharp-dingos-melt.md | 5 --- .changeset/six-cloths-happen.md | 7 ---- .changeset/slow-singers-swim.md | 5 --- .changeset/small-toys-fly.md | 7 ---- .changeset/social-masks-fold.md | 5 --- .changeset/soft-zoos-flow.md | 7 ---- .changeset/ten-ways-mate.md | 5 --- .changeset/tricky-wombats-spend.md | 5 --- .changeset/wide-eyes-relax.md | 11 ------ CHANGELOG.md | 60 ++++++++++++++++++++++++++++++ package.json | 2 +- 20 files changed, 61 insertions(+), 134 deletions(-) delete mode 100644 .changeset/beige-doodles-type.md delete mode 100644 .changeset/floppy-plants-marry.md delete mode 100644 .changeset/forty-plums-stay.md delete mode 100644 .changeset/free-bikes-smile.md delete mode 100644 .changeset/many-wasps-sell.md delete mode 100644 .changeset/nice-lies-cover.md delete mode 100644 .changeset/pre.json delete mode 100644 .changeset/red-oranges-attend.md delete mode 100644 .changeset/red-suns-wash.md delete mode 100644 .changeset/sharp-dingos-melt.md delete mode 100644 .changeset/six-cloths-happen.md delete mode 100644 .changeset/slow-singers-swim.md delete mode 100644 .changeset/small-toys-fly.md delete mode 100644 .changeset/social-masks-fold.md delete mode 100644 .changeset/soft-zoos-flow.md delete mode 100644 .changeset/ten-ways-mate.md delete mode 100644 .changeset/tricky-wombats-spend.md delete mode 100644 .changeset/wide-eyes-relax.md diff --git a/.changeset/beige-doodles-type.md b/.changeset/beige-doodles-type.md deleted file mode 100644 index dd347052..00000000 --- a/.changeset/beige-doodles-type.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'task-master-ai': patch ---- - -Resolve all issues related to MCP diff --git a/.changeset/floppy-plants-marry.md b/.changeset/floppy-plants-marry.md deleted file mode 100644 index 401fed18..00000000 --- a/.changeset/floppy-plants-marry.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -'task-master-ai': patch ---- - -Fix CLI --force flag for parse-prd command - -Previously, the --force flag was not respected when running `parse-prd`, causing the command to prompt for confirmation or fail even when --force was provided. This patch ensures that the flag is correctly passed and handled, allowing users to overwrite existing tasks.json files as intended. - -- Fixes #477 \ No newline at end of file diff --git a/.changeset/forty-plums-stay.md b/.changeset/forty-plums-stay.md deleted file mode 100644 index d49e0653..00000000 --- a/.changeset/forty-plums-stay.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'task-master-ai': minor ---- - -.taskmasterconfig now supports a baseUrl field per model role (main, research, fallback), allowing endpoint overrides for any provider. diff --git a/.changeset/free-bikes-smile.md b/.changeset/free-bikes-smile.md deleted file mode 100644 index 669437e6..00000000 --- a/.changeset/free-bikes-smile.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -'task-master-ai': minor ---- - -Add Ollama as a supported AI provider. - -- You can now add it by running `task-master models --setup` and selecting it. -- Ollama is a local model provider, so no API key is required. -- Ollama models are available at `http://localhost:11434/api` by default. -- You can change the default URL by setting the `OLLAMA_BASE_URL` environment variable or by adding a `baseUrl` property to the `ollama` model role in `.taskmasterconfig`. - - If you want to use a custom API key, you can set it in the `OLLAMA_API_KEY` environment variable. diff --git a/.changeset/many-wasps-sell.md b/.changeset/many-wasps-sell.md deleted file mode 100644 index 75631311..00000000 --- a/.changeset/many-wasps-sell.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'task-master-ai': patch ---- - -Task Master no longer tells you to update when you're already up to date diff --git a/.changeset/nice-lies-cover.md b/.changeset/nice-lies-cover.md deleted file mode 100644 index 2cc66470..00000000 --- a/.changeset/nice-lies-cover.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'task-master-ai': patch ---- - -Adds costs information to AI commands using input/output tokens and model costs. diff --git a/.changeset/pre.json b/.changeset/pre.json deleted file mode 100644 index 80fad120..00000000 --- a/.changeset/pre.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "mode": "exit", - "tag": "rc", - "initialVersions": { - "task-master-ai": "0.14.0-rc.0" - }, - "changesets": [ - "beige-doodles-type", - "floppy-plants-marry", - "forty-plums-stay", - "free-bikes-smile", - "many-wasps-sell", - "nice-lies-cover", - "red-oranges-attend", - "red-suns-wash", - "sharp-dingos-melt", - "six-cloths-happen", - "slow-singers-swim", - "small-toys-fly", - "social-masks-fold", - "soft-zoos-flow", - "ten-ways-mate", - "tricky-wombats-spend", - "wide-eyes-relax" - ] -} diff --git a/.changeset/red-oranges-attend.md b/.changeset/red-oranges-attend.md deleted file mode 100644 index 4b86f7d2..00000000 --- a/.changeset/red-oranges-attend.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'task-master-ai': patch ---- - -Fix ERR_MODULE_NOT_FOUND when trying to run MCP Server diff --git a/.changeset/red-suns-wash.md b/.changeset/red-suns-wash.md deleted file mode 100644 index fcf49b82..00000000 --- a/.changeset/red-suns-wash.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'task-master-ai': patch ---- - -Add src directory to exports diff --git a/.changeset/sharp-dingos-melt.md b/.changeset/sharp-dingos-melt.md deleted file mode 100644 index 4c2d9fd9..00000000 --- a/.changeset/sharp-dingos-melt.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'task-master-ai': patch ---- - -Fix the error handling of task status settings diff --git a/.changeset/six-cloths-happen.md b/.changeset/six-cloths-happen.md deleted file mode 100644 index 28e27856..00000000 --- a/.changeset/six-cloths-happen.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'task-master-ai': patch ---- - -Remove caching layer from MCP direct functions for task listing, next task, and complexity report - -- Fixes issues users where having where they were getting stale data diff --git a/.changeset/slow-singers-swim.md b/.changeset/slow-singers-swim.md deleted file mode 100644 index dadfda63..00000000 --- a/.changeset/slow-singers-swim.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'task-master-ai': patch ---- - -Fix for issue #409 LOG_LEVEL Pydantic validation error diff --git a/.changeset/small-toys-fly.md b/.changeset/small-toys-fly.md deleted file mode 100644 index 34027402..00000000 --- a/.changeset/small-toys-fly.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'task-master-ai': patch ---- - -Small fixes - - `next` command no longer incorrectly suggests that subtasks be broken down into subtasks in the CLI - - fixes the `append` flag so it properly works in the CLI diff --git a/.changeset/social-masks-fold.md b/.changeset/social-masks-fold.md deleted file mode 100644 index 4a2d4158..00000000 --- a/.changeset/social-masks-fold.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'task-master-ai': minor ---- - -Display task complexity scores in task lists, next task, and task details views. diff --git a/.changeset/soft-zoos-flow.md b/.changeset/soft-zoos-flow.md deleted file mode 100644 index d908fa64..00000000 --- a/.changeset/soft-zoos-flow.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'task-master-ai': patch ---- - -Fix initial .env.example to work out of the box - -- Closes #419 diff --git a/.changeset/ten-ways-mate.md b/.changeset/ten-ways-mate.md deleted file mode 100644 index 993d6e2d..00000000 --- a/.changeset/ten-ways-mate.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'task-master-ai': patch ---- - -Fix default fallback model and maxTokens in Taskmaster initialization diff --git a/.changeset/tricky-wombats-spend.md b/.changeset/tricky-wombats-spend.md deleted file mode 100644 index 2b961c9c..00000000 --- a/.changeset/tricky-wombats-spend.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'task-master-ai': patch ---- - -Fix bug when updating tasks on the MCP server (#412) diff --git a/.changeset/wide-eyes-relax.md b/.changeset/wide-eyes-relax.md deleted file mode 100644 index 1684d1a5..00000000 --- a/.changeset/wide-eyes-relax.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -'task-master-ai': patch ---- - -Fix duplicate output on CLI help screen - -- Prevent the Task Master CLI from printing the help screen more than once when using `-h` or `--help`. -- Removed redundant manual event handlers and guards for help output; now only the Commander `.helpInformation` override is used for custom help. -- Simplified logic so that help is only shown once for both "no arguments" and help flag flows. -- Ensures a clean, branded help experience with no repeated content. -- Fixes #339 diff --git a/CHANGELOG.md b/CHANGELOG.md index e4357d3f..1582a4d0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,65 @@ # task-master-ai +## 0.14.0 + +### Minor Changes + +- [#521](https://github.com/eyaltoledano/claude-task-master/pull/521) [`ed17cb0`](https://github.com/eyaltoledano/claude-task-master/commit/ed17cb0e0a04dedde6c616f68f24f3660f68dd04) Thanks [@Crunchyman-ralph](https://github.com/Crunchyman-ralph)! - .taskmasterconfig now supports a baseUrl field per model role (main, research, fallback), allowing endpoint overrides for any provider. + +- [#536](https://github.com/eyaltoledano/claude-task-master/pull/536) [`f4a83ec`](https://github.com/eyaltoledano/claude-task-master/commit/f4a83ec047b057196833e3a9b861d4bceaec805d) Thanks [@Crunchyman-ralph](https://github.com/Crunchyman-ralph)! - Add Ollama as a supported AI provider. + + - You can now add it by running `task-master models --setup` and selecting it. + - Ollama is a local model provider, so no API key is required. + - Ollama models are available at `http://localhost:11434/api` by default. + - You can change the default URL by setting the `OLLAMA_BASE_URL` environment variable or by adding a `baseUrl` property to the `ollama` model role in `.taskmasterconfig`. + - If you want to use a custom API key, you can set it in the `OLLAMA_API_KEY` environment variable. + +- [#528](https://github.com/eyaltoledano/claude-task-master/pull/528) [`58b417a`](https://github.com/eyaltoledano/claude-task-master/commit/58b417a8ce697e655f749ca4d759b1c20014c523) Thanks [@Crunchyman-ralph](https://github.com/Crunchyman-ralph)! - Display task complexity scores in task lists, next task, and task details views. + +### Patch Changes + +- [#402](https://github.com/eyaltoledano/claude-task-master/pull/402) [`01963af`](https://github.com/eyaltoledano/claude-task-master/commit/01963af2cb6f77f43b2ad8a6e4a838ec205412bc) Thanks [@Crunchyman-ralph](https://github.com/Crunchyman-ralph)! - Resolve all issues related to MCP + +- [#478](https://github.com/eyaltoledano/claude-task-master/pull/478) [`4117f71`](https://github.com/eyaltoledano/claude-task-master/commit/4117f71c18ee4d321a9c91308d00d5d69bfac61e) Thanks [@joedanz](https://github.com/joedanz)! - Fix CLI --force flag for parse-prd command + + Previously, the --force flag was not respected when running `parse-prd`, causing the command to prompt for confirmation or fail even when --force was provided. This patch ensures that the flag is correctly passed and handled, allowing users to overwrite existing tasks.json files as intended. + + - Fixes #477 + +- [#511](https://github.com/eyaltoledano/claude-task-master/pull/511) [`17294ff`](https://github.com/eyaltoledano/claude-task-master/commit/17294ff25918d64278674e558698a1a9ad785098) Thanks [@Crunchyman-ralph](https://github.com/Crunchyman-ralph)! - Task Master no longer tells you to update when you're already up to date + +- [#442](https://github.com/eyaltoledano/claude-task-master/pull/442) [`2b3ae8b`](https://github.com/eyaltoledano/claude-task-master/commit/2b3ae8bf89dc471c4ce92f3a12ded57f61faa449) Thanks [@eyaltoledano](https://github.com/eyaltoledano)! - Adds costs information to AI commands using input/output tokens and model costs. + +- [#402](https://github.com/eyaltoledano/claude-task-master/pull/402) [`01963af`](https://github.com/eyaltoledano/claude-task-master/commit/01963af2cb6f77f43b2ad8a6e4a838ec205412bc) Thanks [@Crunchyman-ralph](https://github.com/Crunchyman-ralph)! - Fix ERR_MODULE_NOT_FOUND when trying to run MCP Server + +- [#402](https://github.com/eyaltoledano/claude-task-master/pull/402) [`01963af`](https://github.com/eyaltoledano/claude-task-master/commit/01963af2cb6f77f43b2ad8a6e4a838ec205412bc) Thanks [@Crunchyman-ralph](https://github.com/Crunchyman-ralph)! - Add src directory to exports + +- [#523](https://github.com/eyaltoledano/claude-task-master/pull/523) [`da317f2`](https://github.com/eyaltoledano/claude-task-master/commit/da317f2607ca34db1be78c19954996f634c40923) Thanks [@Crunchyman-ralph](https://github.com/Crunchyman-ralph)! - Fix the error handling of task status settings + +- [#527](https://github.com/eyaltoledano/claude-task-master/pull/527) [`a8dabf4`](https://github.com/eyaltoledano/claude-task-master/commit/a8dabf44856713f488960224ee838761716bba26) Thanks [@Crunchyman-ralph](https://github.com/Crunchyman-ralph)! - Remove caching layer from MCP direct functions for task listing, next task, and complexity report + + - Fixes issues users where having where they were getting stale data + +- [#417](https://github.com/eyaltoledano/claude-task-master/pull/417) [`a1f8d52`](https://github.com/eyaltoledano/claude-task-master/commit/a1f8d52474fdbdf48e17a63e3f567a6d63010d9f) Thanks [@ksylvan](https://github.com/ksylvan)! - Fix for issue #409 LOG_LEVEL Pydantic validation error + +- [#442](https://github.com/eyaltoledano/claude-task-master/pull/442) [`0288311`](https://github.com/eyaltoledano/claude-task-master/commit/0288311965ae2a343ebee4a0c710dde94d2ae7e7) Thanks [@eyaltoledano](https://github.com/eyaltoledano)! - Small fixes - `next` command no longer incorrectly suggests that subtasks be broken down into subtasks in the CLI - fixes the `append` flag so it properly works in the CLI + +- [#501](https://github.com/eyaltoledano/claude-task-master/pull/501) [`0a61184`](https://github.com/eyaltoledano/claude-task-master/commit/0a611843b56a856ef0a479dc34078326e05ac3a8) Thanks [@Crunchyman-ralph](https://github.com/Crunchyman-ralph)! - Fix initial .env.example to work out of the box + + - Closes #419 + +- [#435](https://github.com/eyaltoledano/claude-task-master/pull/435) [`a96215a`](https://github.com/eyaltoledano/claude-task-master/commit/a96215a359b25061fd3b3f3c7b10e8ac0390c062) Thanks [@lebsral](https://github.com/lebsral)! - Fix default fallback model and maxTokens in Taskmaster initialization + +- [#517](https://github.com/eyaltoledano/claude-task-master/pull/517) [`e96734a`](https://github.com/eyaltoledano/claude-task-master/commit/e96734a6cc6fec7731de72eb46b182a6e3743d02) Thanks [@Crunchyman-ralph](https://github.com/Crunchyman-ralph)! - Fix bug when updating tasks on the MCP server (#412) + +- [#496](https://github.com/eyaltoledano/claude-task-master/pull/496) [`efce374`](https://github.com/eyaltoledano/claude-task-master/commit/efce37469bc58eceef46763ba32df1ed45242211) Thanks [@joedanz](https://github.com/joedanz)! - Fix duplicate output on CLI help screen + + - Prevent the Task Master CLI from printing the help screen more than once when using `-h` or `--help`. + - Removed redundant manual event handlers and guards for help output; now only the Commander `.helpInformation` override is used for custom help. + - Simplified logic so that help is only shown once for both "no arguments" and help flag flows. + - Ensures a clean, branded help experience with no repeated content. + - Fixes #339 + ## 0.14.0-rc.1 ### Minor Changes diff --git a/package.json b/package.json index 9abffc4f..5ff7adb3 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "task-master-ai", - "version": "0.14.0-rc.1", + "version": "0.14.0", "description": "A task management system for ambitious AI-driven development that doesn't overwhelm and confuse Cursor.", "main": "index.js", "type": "module", From 4c835264ac6c1f74896cddabc3b3c69a5c435417 Mon Sep 17 00:00:00 2001 From: Eyal Toledano Date: Wed, 21 May 2025 21:23:39 -0400 Subject: [PATCH 02/25] task management --- .changeset/cuddly-walls-clap.md | 9 ++ .taskmasterconfig | 62 ++++---- scripts/modules/supported-models.json | 133 ++++++++-------- tasks/task_063.txt | 18 +-- tasks/task_064.txt | 20 +-- tasks/task_065.txt | 14 +- tasks/task_067.txt | 73 ++++++++- tasks/task_077.txt | 10 +- tasks/task_081.txt | 144 ----------------- tasks/task_088.txt | 57 +++++++ tasks/tasks.json | 220 +++++++++++++------------- 11 files changed, 370 insertions(+), 390 deletions(-) create mode 100644 .changeset/cuddly-walls-clap.md delete mode 100644 tasks/task_081.txt create mode 100644 tasks/task_088.txt diff --git a/.changeset/cuddly-walls-clap.md b/.changeset/cuddly-walls-clap.md new file mode 100644 index 00000000..270ba6c2 --- /dev/null +++ b/.changeset/cuddly-walls-clap.md @@ -0,0 +1,9 @@ +--- +'task-master-ai': patch +--- + +Adds and updates supported AI models with costs: +- Added new OpenRouter models: GPT-4.1 series, O3, Codex Mini, Llama 4 Maverick, Llama 4 Scout, Qwen3-235b +- Added Mistral models: Devstral Small, Mistral Nemo +- Updated Ollama models with latest variants: Devstral, Qwen3, Mistral-small3.1, Llama3.3 +- Updated Gemini model to latest 2.5 Flash preview version diff --git a/.taskmasterconfig b/.taskmasterconfig index 2a1e943a..9f377d4f 100644 --- a/.taskmasterconfig +++ b/.taskmasterconfig @@ -1,32 +1,32 @@ { - "models": { - "main": { - "provider": "anthropic", - "modelId": "claude-3-7-sonnet-20250219", - "maxTokens": 100000, - "temperature": 0.2 - }, - "research": { - "provider": "perplexity", - "modelId": "sonar-pro", - "maxTokens": 8700, - "temperature": 0.1 - }, - "fallback": { - "provider": "anthropic", - "modelId": "claude-3-7-sonnet-20250219", - "maxTokens": 8192, - "temperature": 0.2 - } - }, - "global": { - "logLevel": "info", - "debug": false, - "defaultSubtasks": 5, - "defaultPriority": "medium", - "projectName": "Taskmaster", - "ollamaBaseUrl": "http://localhost:11434/api", - "userId": "1234567890", - "azureOpenaiBaseUrl": "https://your-endpoint.openai.azure.com/" - } -} + "models": { + "main": { + "provider": "ollama", + "modelId": "devstral:latest", + "maxTokens": 120000, + "temperature": 0.2 + }, + "research": { + "provider": "perplexity", + "modelId": "sonar-pro", + "maxTokens": 8700, + "temperature": 0.1 + }, + "fallback": { + "provider": "anthropic", + "modelId": "claude-3-7-sonnet-20250219", + "maxTokens": 8192, + "temperature": 0.2 + } + }, + "global": { + "logLevel": "info", + "debug": false, + "defaultSubtasks": 5, + "defaultPriority": "medium", + "projectName": "Taskmaster", + "ollamaBaseUrl": "http://localhost:11434/api", + "userId": "1234567890", + "azureOpenaiBaseUrl": "https://your-endpoint.openai.azure.com/" + } +} \ No newline at end of file diff --git a/scripts/modules/supported-models.json b/scripts/modules/supported-models.json index b1f1e1c7..fcdd38f9 100644 --- a/scripts/modules/supported-models.json +++ b/scripts/modules/supported-models.json @@ -191,43 +191,43 @@ ], "ollama": [ { - "id": "gemma3:27b", + "id": "devstral:latest", "swe_score": 0, "cost_per_1m_tokens": { "input": 0, "output": 0 }, "allowed_roles": ["main", "fallback"] }, { - "id": "gemma3:12b", + "id": "qwen3:latest", "swe_score": 0, "cost_per_1m_tokens": { "input": 0, "output": 0 }, "allowed_roles": ["main", "fallback"] }, { - "id": "qwq", + "id": "qwen3:14b", "swe_score": 0, "cost_per_1m_tokens": { "input": 0, "output": 0 }, "allowed_roles": ["main", "fallback"] }, { - "id": "deepseek-r1", + "id": "qwen3:32b", "swe_score": 0, "cost_per_1m_tokens": { "input": 0, "output": 0 }, "allowed_roles": ["main", "fallback"] }, { - "id": "mistral-small3.1", + "id": "mistral-small3.1:latest", "swe_score": 0, "cost_per_1m_tokens": { "input": 0, "output": 0 }, "allowed_roles": ["main", "fallback"] }, { - "id": "llama3.3", + "id": "llama3.3:latest", "swe_score": 0, "cost_per_1m_tokens": { "input": 0, "output": 0 }, "allowed_roles": ["main", "fallback"] }, { - "id": "phi4", + "id": "phi4:latest", "swe_score": 0, "cost_per_1m_tokens": { "input": 0, "output": 0 }, "allowed_roles": ["main", "fallback"] @@ -235,9 +235,16 @@ ], "openrouter": [ { - "id": "google/gemini-2.0-flash-001", + "id": "google/gemini-2.5-flash-preview-05-20", "swe_score": 0, - "cost_per_1m_tokens": { "input": 0.1, "output": 0.4 }, + "cost_per_1m_tokens": { "input": 0.15, "output": 0.6 }, + "allowed_roles": ["main", "fallback"], + "max_tokens": 1048576 + }, + { + "id": "google/gemini-2.5-flash-preview-05-20:thinking", + "swe_score": 0, + "cost_per_1m_tokens": { "input": 0.15, "output": 3.50 }, "allowed_roles": ["main", "fallback"], "max_tokens": 1048576 }, @@ -263,40 +270,25 @@ "max_tokens": 64000 }, { - "id": "deepseek/deepseek-r1:free", + "id": "openai/gpt-4.1", "swe_score": 0, - "cost_per_1m_tokens": { "input": 0, "output": 0 }, + "cost_per_1m_tokens": { "input": 2, "output": 8 }, "allowed_roles": ["main", "fallback"], - "max_tokens": 163840 + "max_tokens": 1000000 }, - { - "id": "microsoft/mai-ds-r1:free", + "id": "openai/gpt-4.1-mini", "swe_score": 0, - "cost_per_1m_tokens": { "input": 0, "output": 0 }, + "cost_per_1m_tokens": { "input": 0.40, "output": 1.60 }, "allowed_roles": ["main", "fallback"], - "max_tokens": 163840 + "max_tokens": 1000000 }, { - "id": "google/gemini-2.5-pro-preview-03-25", + "id": "openai/gpt-4.1-nano", "swe_score": 0, - "cost_per_1m_tokens": { "input": 1.25, "output": 10 }, + "cost_per_1m_tokens": { "input": 0.10, "output": 0.40 }, "allowed_roles": ["main", "fallback"], - "max_tokens": 65535 - }, - { - "id": "google/gemini-2.5-flash-preview", - "swe_score": 0, - "cost_per_1m_tokens": { "input": 0.15, "output": 0.6 }, - "allowed_roles": ["main"], - "max_tokens": 65535 - }, - { - "id": "google/gemini-2.5-flash-preview:thinking", - "swe_score": 0, - "cost_per_1m_tokens": { "input": 0.15, "output": 3.5 }, - "allowed_roles": ["main"], - "max_tokens": 65535 + "max_tokens": 1000000 }, { "id": "openai/o3", @@ -305,6 +297,20 @@ "allowed_roles": ["main", "fallback"], "max_tokens": 200000 }, + { + "id": "openai/codex-mini", + "swe_score": 0, + "cost_per_1m_tokens": { "input": 1.5, "output": 6 }, + "allowed_roles": ["main", "fallback"], + "max_tokens": 100000 + }, + { + "id": "openai/gpt-4o-mini", + "swe_score": 0, + "cost_per_1m_tokens": { "input": 0.15, "output": 0.6 }, + "allowed_roles": ["main", "fallback"], + "max_tokens": 100000 + }, { "id": "openai/o4-mini", "swe_score": 0.45, @@ -334,46 +340,18 @@ "max_tokens": 1048576 }, { - "id": "google/gemma-3-12b-it:free", + "id": "meta-llama/llama-4-maverick", "swe_score": 0, - "cost_per_1m_tokens": { "input": 0, "output": 0 }, + "cost_per_1m_tokens": { "input": 0.18, "output": 0.60 }, "allowed_roles": ["main", "fallback"], - "max_tokens": 131072 + "max_tokens": 1000000 }, { - "id": "google/gemma-3-12b-it", + "id": "meta-llama/llama-4-scout", "swe_score": 0, - "cost_per_1m_tokens": { "input": 50, "output": 100 }, + "cost_per_1m_tokens": { "input": 0.08, "output": 0.30 }, "allowed_roles": ["main", "fallback"], - "max_tokens": 131072 - }, - { - "id": "google/gemma-3-27b-it:free", - "swe_score": 0, - "cost_per_1m_tokens": { "input": 0, "output": 0 }, - "allowed_roles": ["main", "fallback"], - "max_tokens": 96000 - }, - { - "id": "google/gemma-3-27b-it", - "swe_score": 0, - "cost_per_1m_tokens": { "input": 100, "output": 200 }, - "allowed_roles": ["main", "fallback"], - "max_tokens": 131072 - }, - { - "id": "qwen/qwq-32b:free", - "swe_score": 0, - "cost_per_1m_tokens": { "input": 0, "output": 0 }, - "allowed_roles": ["main", "fallback"], - "max_tokens": 40000 - }, - { - "id": "qwen/qwq-32b", - "swe_score": 0, - "cost_per_1m_tokens": { "input": 150, "output": 200 }, - "allowed_roles": ["main", "fallback"], - "max_tokens": 131072 + "max_tokens": 1000000 }, { "id": "qwen/qwen-max", @@ -389,6 +367,13 @@ "allowed_roles": ["main", "fallback"], "max_tokens": 1000000 }, + { + "id": "qwen/qwen3-235b-a22b", + "swe_score": 0, + "cost_per_1m_tokens": { "input": 0.14, "output": 2 }, + "allowed_roles": ["main", "fallback"], + "max_tokens": 24000 + }, { "id": "mistralai/mistral-small-3.1-24b-instruct:free", "swe_score": 0, @@ -403,6 +388,20 @@ "allowed_roles": ["main", "fallback"], "max_tokens": 128000 }, + { + "id": "mistralai/devstral-small", + "swe_score": 0, + "cost_per_1m_tokens": { "input": 0.10, "output": 0.30 }, + "allowed_roles": ["main"], + "max_tokens": 110000 + }, + { + "id": "mistralai/mistral-nemo", + "swe_score": 0, + "cost_per_1m_tokens": { "input": 0.03, "output": 0.07 }, + "allowed_roles": ["main", "fallback"], + "max_tokens": 100000 + }, { "id": "thudm/glm-4-32b:free", "swe_score": 0, diff --git a/tasks/task_063.txt b/tasks/task_063.txt index 86bf3a5a..2268ee52 100644 --- a/tasks/task_063.txt +++ b/tasks/task_063.txt @@ -1,6 +1,6 @@ # Task ID: 63 # Title: Add pnpm Support for the Taskmaster Package -# Status: pending +# Status: done # Dependencies: None # Priority: medium # Description: Implement full support for pnpm as an alternative package manager in the Taskmaster application, ensuring users have the exact same experience as with npm when installing and managing the package. The installation process, including any CLI prompts or web interfaces, must serve the exact same content and user experience regardless of whether npm or pnpm is used. The project uses 'module' as the package type, defines binaries 'task-master' and 'task-master-mcp', and its core logic resides in 'scripts/modules/'. The 'init' command (via scripts/init.js) creates the directory structure (.cursor/rules, scripts, tasks), copies templates (.env.example, .gitignore, rule files, dev.js), manages package.json merging, and sets up MCP config (.cursor/mcp.json). All dependencies are standard npm dependencies listed in package.json, and manual modifications are being removed. @@ -88,49 +88,49 @@ This implementation should maintain full feature parity and identical user exper Success criteria: Taskmaster should install and function identically regardless of whether it was installed via npm or pnpm, with no degradation in functionality, performance, or user experience. All binaries should be properly linked, and the directory structure should be correctly created. # Subtasks: -## 1. Update Documentation for pnpm Support [pending] +## 1. Update Documentation for pnpm Support [done] ### Dependencies: None ### Description: Revise installation and usage documentation to include pnpm commands and instructions for installing and managing Taskmaster with pnpm. Clearly state that the installation process, including any website or UI shown, is identical to npm. Ensure documentation reflects the use of 'module' package type, binaries, and the init process as defined in scripts/init.js. ### Details: Add pnpm installation commands (e.g., `pnpm add taskmaster`) and update all relevant sections in the README and official docs to reflect pnpm as a supported package manager. Document that any installation website or prompt is the same as with npm. Include notes on the 'module' package type, binaries, and the directory/template setup performed by scripts/init.js. -## 2. Ensure Package Scripts Compatibility with pnpm [pending] +## 2. Ensure Package Scripts Compatibility with pnpm [done] ### Dependencies: 63.1 ### Description: Review and update package.json scripts to ensure they work seamlessly with pnpm's execution model. Confirm that any scripts responsible for showing a website or prompt during install behave identically with pnpm and npm. Ensure compatibility with 'module' package type and correct binary definitions. ### Details: Test all scripts using `pnpm run