chore: update docs to remove --package refs#1220
Conversation
🦋 Changeset detectedLatest commit: 11b084c The changes in this PR will be included in the next version bump. Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
WalkthroughThis pull request simplifies the MCP server invocation for the task-master-ai package by removing the explicit --package flag across multiple configuration files and documentation, indicating a streamlined package initialization process. Changes
Estimated Code Review Effort🎯 3 (Moderate) | ⏱️ ~25 minutes Possibly Related PRs
Suggested Reviewers
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
✨ Finishing touches
🧪 Generate unit tests
Comment |
There was a problem hiding this comment.
Actionable comments posted: 3
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (8)
.changeset/clever-spies-obey.md (1)
5-9: Changeset summary should be a single, imperative, user-facing line.Rephrase the summary and tighten the notes per guidelines.
Apply this diff:
-No longer need --package=task-master-ai in mcp server - -- A lot of users were having issues with Taskmaster and usually a simple fix was to remove --package from your mcp.json -- we now bundle our whole package, so we no longer need the --package +Remove need for --package=task-master-ai in MCP config; use `npx -y task-master-ai`. + +- Many users hit issues that were fixed by removing `--package` from mcp.json. +- We now bundle the server, so the `--package` flag is unnecessary.README.md (1)
59-61: Replace Cursor deeplink to remove--packageand usenpx -y task-master-aiThe base64 config decodes to
npx -y --package=task-master-ai task-master-ai; update README.md (lines 59–61) to usenpx -y task-master-aiand replace the deeplink with: https://cursor.com/en/install-mcp?name=task-master-ai&config=eyJjb21tYW5kIjoibnB4IC15IHRhc2stbWFzdGVyLWFpIiwiZW52Ijp7IkFOVEhST1BJQ19BUElfS0VZIjoiWU9VUl9BTlRIUk9QSUNfQVBJX0tFWV9IRVJFIiwiUEVSUExFWElUWV9BUElfS0VZIjoiWU9VUl9QRVJQTEVYSVRZX0FQSV9LRVlfSEVSRSIsIk9QRU5BSV9BUElfS0VZIjoiWU9VUl9PUEVOQUlfS0VZX0hFUkUiLCJHT09HTEVfQVBJX0tFWSI6IllPVVJfR09PR0xFX0tFWV9IRVJFIiwiTUlTVFJBTF9BUElfS0VZIjoiWU9VUl9NSVNUUkFMX0tFWV9IRVJFIiwiR1JPUV9BUElfS0VZIjoiWU9VUl9HUk9RX0tFWV9IRVJFIiwiT1BFTlJPVVRFUl9BUElfS0VZIjoiWU9VUl9PUEVOUk9VVEVSX0tFWV9IRVJFIiwiWEFJX0FQSV9LRVkiOiJZT1VSX1hBSV9LRVlfSEVSRSIsIkFaVVJFX09QRU5BSV9BUElfS0VZIjoiWU9VUl9BWlVSRV9LRVlfSEVSRSIsIk9MTEFNQV9BUElfS0VZIjoiWU9VUl9PTExBTUFfQVBJX0tFWV9IRVJFIn19llms-install.md (1)
17-31: Fix markdownlint MD010 (hard tabs) in this JSON block.Replace tabs with spaces to satisfy markdownlint; CI will stay green.
apps/extension/README.md (1)
155-158: Duplicate “Report Issues” bullet.Remove one duplicate to avoid noise.
- - 🐛 **Report Issues**: https://github.com/eyaltoledano/claude-task-master/issues - - 💬 **Discussions**: https://github.com/eyaltoledano/claude-task-master/discussions - - 🐛 **Report Issues**: https://github.com/eyaltoledano/claude-task-master/issues + - 🐛 **Report Issues**: https://github.com/eyaltoledano/claude-task-master/issues + - 💬 **Discussions**: https://github.com/eyaltoledano/claude-task-master/discussionsdocs/tutorial.md (2)
11-12: Terminology: use “Model Context Protocol”.Replace “Model Control Protocol” with “Model Context Protocol”.
-MCP (Model Control Protocol) provides the easiest way... +MCP (Model Context Protocol) provides the easiest way...
13-17: Clarify that global install is optional when using npx.Users don’t need the global install if they’ll launch via
npx.-1. **Install the package** +1. (Optional) **Install the package globally**apps/docs/getting-started/quick-start/installation.mdx (2)
39-41: Terminology: “Model Context Protocol”.Fix the intro sentence.
-MCP (Model Control Protocol) lets you run Task Master directly from your editor. +MCP (Model Context Protocol) lets you run Task Master directly from your editor.
28-30: Update copyable deeplink to match regenerated link above.The copyable deeplink in apps/docs/getting-started/quick-start/installation.mdx (code block lines 28–30) uses
name=taskmaster-ai; the anchor href above (line 11) usesname=task-master-ai— update the code block to the regenerated link (task-master-ai).
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Pro
📒 Files selected for processing (17)
.changeset/clever-spies-obey.md(1 hunks).kiro/settings/mcp.json(1 hunks).taskmaster/CLAUDE.md(1 hunks)CHANGELOG.md(0 hunks)README.md(3 hunks)apps/docs/archive/Installation.mdx(1 hunks)apps/docs/archive/cursor-setup.mdx(1 hunks)apps/docs/getting-started/quick-start/installation.mdx(3 hunks)apps/extension/README.md(1 hunks)apps/extension/package.publish.json(1 hunks)docs/tutorial.md(2 hunks)llms-install.md(1 hunks)public/assets/AGENTS.md(1 hunks)src/utils/create-mcp-config.js(1 hunks)tests/integration/profiles/amp-init-functionality.test.js(4 hunks)tests/unit/profiles/amp-integration.test.js(2 hunks)tests/unit/profiles/selective-profile-removal.test.js(1 hunks)
💤 Files with no reviewable changes (1)
- CHANGELOG.md
🧰 Additional context used
📓 Path-based instructions (14)
**/*.js
📄 CodeRabbit inference engine (.cursor/rules/tests.mdc)
**/*.js: Declare and initialize global variables at the top of modules to avoid hoisting issues.
Use proper function declarations to avoid hoisting issues and initialize variables before they are referenced.
Do not reference variables before their declaration in module scope.
Use dynamic imports (import()) to avoid initialization order issues in modules.
Files:
src/utils/create-mcp-config.jstests/integration/profiles/amp-init-functionality.test.jstests/unit/profiles/amp-integration.test.jstests/unit/profiles/selective-profile-removal.test.js
{src/utils/**,src/middleware/**}
📄 CodeRabbit inference engine (.cursor/rules/test_workflow.mdc)
Test coverage for all code should meet or exceed 80% lines/functions and 70% branches globally; critical code (utils, middleware) should meet higher thresholds (90% utils, 85% middleware)
Files:
src/utils/create-mcp-config.js
tests/{unit,integration,e2e,fixtures}/**/*.js
📄 CodeRabbit inference engine (.cursor/rules/architecture.mdc)
Test files must be organized as follows: unit tests in tests/unit/, integration tests in tests/integration/, end-to-end tests in tests/e2e/, and test fixtures in tests/fixtures/.
Files:
tests/integration/profiles/amp-init-functionality.test.jstests/unit/profiles/amp-integration.test.jstests/unit/profiles/selective-profile-removal.test.js
**/*.{test,spec}.{js,ts,jsx,tsx}
📄 CodeRabbit inference engine (.cursor/rules/git_workflow.mdc)
**/*.{test,spec}.{js,ts,jsx,tsx}: Create a test file and ensure all tests pass when all subtasks are complete; commit tests if added or modified
When all subtasks are complete, run final testing using the appropriate test runner (e.g., npm test, jest, or manual testing)
Files:
tests/integration/profiles/amp-init-functionality.test.jstests/unit/profiles/amp-integration.test.jstests/unit/profiles/selective-profile-removal.test.js
**/*.test.js
📄 CodeRabbit inference engine (.cursor/rules/tests.mdc)
**/*.test.js: Never use asynchronous operations in tests. Make all mocks return synchronous values when possible.
Always mock tests properly based on the way the tested functions are defined and used.
Follow the test file organization: mocks must be set up before importing modules under test, and spies on mocked modules should be set up after imports.
Use fixtures from tests/fixtures/ for consistent sample data across tests.
Always declare mocks before importing the modules being tested in Jest test files.
Use jest.spyOn() after imports to create spies on mock functions and reference these spies in test assertions.
When testing functions with callbacks, get the callback from your mock's call arguments, execute it directly with test inputs, and verify the results.
For ES modules, use jest.mock() before static imports and jest.unstable_mockModule() before dynamic imports to mock dependencies.
Reset mock functions (mockFn.mockReset()) before dynamic imports if they might have been called previously.
When verifying console assertions, assert against the actual arguments passed (single formatted string), not multiple arguments.
Use mock-fs to mock file system operations in tests, and restore the file system after each test.
Mock API calls (e.g., Anthropic/Claude) by mocking the entire module and providing predictable responses.
Set mock environment variables in test setup and restore them after each test.
Maintain test fixtures separate from test logic.
Follow the mock-first-then-import pattern for all Jest mocks.
Do not define mock variables before jest.mock() calls (they won't be accessible due to hoisting).
Use test-specific file paths (e.g., 'test-tasks.json') for all file operations in tests.
Mock readJSON and writeJSON to avoid real file system interactions in tests.
Verify file operations use the correct paths in expect statements.
Use different file paths for each test to avoid test interdependence.
Verify modifications on the in-memory task objects passed to w...
Files:
tests/integration/profiles/amp-init-functionality.test.jstests/unit/profiles/amp-integration.test.jstests/unit/profiles/selective-profile-removal.test.js
tests/integration/**/*.test.js
📄 CodeRabbit inference engine (.cursor/rules/tests.mdc)
Integration tests must be located in tests/integration/, test interactions between modules, and focus on component interfaces rather than implementation details.
Files:
tests/integration/profiles/amp-init-functionality.test.js
tests/{unit,integration,e2e}/**/*.test.js
📄 CodeRabbit inference engine (.cursor/rules/tests.mdc)
tests/{unit,integration,e2e}/**/*.test.js: When testing CLI commands built with Commander.js, test the command action handlers directly rather than trying to mock the entire Commander.js chain.
When mocking the Commander.js chain, mock ALL chainable methods (option, argument, action, on, etc.) and return this (or the mock object) from all chainable method mocks.
Explicitly handle all options, including defaults and shorthand flags (e.g., -p for --prompt), and include null/undefined checks in test implementations for parameters that might be optional.
Do not try to use the real action implementation without proper mocking, and do not mock Commander partially—either mock it completely or test the action directly.
Mock the action handlers for CLI commands and verify they're called with correct arguments.
Use sample task fixtures for consistent test data, mock file system operations, and test both success and error paths for task operations.
Mock console output and verify correct formatting in UI function tests. Use flexible assertions like toContain() or toMatch() for formatted output.
Mock chalk functions to return the input text to make testing easier while still verifying correct function calls.
Files:
tests/integration/profiles/amp-init-functionality.test.jstests/unit/profiles/amp-integration.test.jstests/unit/profiles/selective-profile-removal.test.js
tests/{integration,e2e}/**/*.test.js
📄 CodeRabbit inference engine (.cursor/rules/tests.mdc)
Properly mock session objects when required by functions, and reset environment variables between tests if modified.
Files:
tests/integration/profiles/amp-init-functionality.test.js
**/*.{test,spec}.*
📄 CodeRabbit inference engine (.cursor/rules/test_workflow.mdc)
Test files should follow naming conventions: .test., .spec., or _test. depending on the language
Files:
tests/integration/profiles/amp-init-functionality.test.jstests/unit/profiles/amp-integration.test.jstests/unit/profiles/selective-profile-removal.test.js
tests/{unit,integration,e2e}/**
📄 CodeRabbit inference engine (.cursor/rules/test_workflow.mdc)
Organize test directories by test type (unit, integration, e2e) and mirror source structure where possible
Files:
tests/integration/profiles/amp-init-functionality.test.jstests/unit/profiles/amp-integration.test.jstests/unit/profiles/selective-profile-removal.test.js
docs/**/*
📄 CodeRabbit inference engine (.cursor/rules/new_features.mdc)
Add feature documentation to '/docs' folder, include tagged system usage examples, update command reference documentation, and provide migration notes if relevant.
Files:
docs/tutorial.md
.changeset/*.md
📄 CodeRabbit inference engine (.cursor/rules/changeset.mdc)
.changeset/*.md: When runningnpm run changesetornpx changeset add, provide a concise summary of the changes for theCHANGELOG.mdin imperative mood, typically a single line, and not a detailed Git commit message.
The changeset summary should be user-facing, describing what changed in the released version that is relevant to users or consumers of the package.
Do not use your detailed Git commit message body as the changeset summary.
Files:
.changeset/clever-spies-obey.md
.changeset/*
📄 CodeRabbit inference engine (.cursor/rules/new_features.mdc)
Create appropriate changesets for new features, use semantic versioning, include tagged system information in release notes, and document breaking changes if any.
Files:
.changeset/clever-spies-obey.md
tests/unit/**/*.test.js
📄 CodeRabbit inference engine (.cursor/rules/tests.mdc)
tests/unit/**/*.test.js: Unit tests must be located in tests/unit/, test individual functions and utilities in isolation, mock all external dependencies, and keep tests small, focused, and fast.
Do not include actual command execution in unit tests.
Files:
tests/unit/profiles/amp-integration.test.jstests/unit/profiles/selective-profile-removal.test.js
🧠 Learnings (54)
📓 Common learnings
Learnt from: Crunchyman-ralph
PR: eyaltoledano/claude-task-master#1002
File: .changeset/puny-friends-give.md:2-3
Timestamp: 2025-07-17T21:33:57.585Z
Learning: In the eyaltoledano/claude-task-master repository, the MCP server code in mcp-server/src/ is part of the main "task-master-ai" package, not a separate "mcp-server" package. When creating changesets for MCP server changes, use "task-master-ai" as the package name.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/AGENTS.md:0-0
Timestamp: 2025-09-01T09:55:15.061Z
Learning: Applies to assets/**/.mcp.json : Configure the Task Master MCP server in .mcp.json with the provided mcpServers.task-master-ai block and environment keys
Learnt from: Crunchyman-ralph
PR: eyaltoledano/claude-task-master#1178
File: packages/tm-core/src/auth/config.ts:5-7
Timestamp: 2025-09-02T21:51:27.921Z
Learning: The user Crunchyman-ralph prefers not to use node: scheme imports (e.g., 'node:os', 'node:path') for Node.js core modules and considers suggestions to change bare imports to node: scheme as too nitpicky.
📚 Learning: 2025-07-17T21:33:57.585Z
Learnt from: Crunchyman-ralph
PR: eyaltoledano/claude-task-master#1002
File: .changeset/puny-friends-give.md:2-3
Timestamp: 2025-07-17T21:33:57.585Z
Learning: In the eyaltoledano/claude-task-master repository, the MCP server code in mcp-server/src/ is part of the main "task-master-ai" package, not a separate "mcp-server" package. When creating changesets for MCP server changes, use "task-master-ai" as the package name.
Applied to files:
src/utils/create-mcp-config.jstests/integration/profiles/amp-init-functionality.test.jsapps/docs/archive/cursor-setup.mdxpublic/assets/AGENTS.mdapps/extension/package.publish.json.kiro/settings/mcp.jsonapps/docs/getting-started/quick-start/installation.mdxdocs/tutorial.md.changeset/clever-spies-obey.mdllms-install.mdtests/unit/profiles/amp-integration.test.jsapps/docs/archive/Installation.mdxREADME.md.taskmaster/CLAUDE.mdtests/unit/profiles/selective-profile-removal.test.jsapps/extension/README.md
📚 Learning: 2025-07-31T22:08:16.039Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/taskmaster.mdc:0-0
Timestamp: 2025-07-31T22:08:16.039Z
Learning: Applies to .taskmaster/config.json : Do not manually edit the .taskmaster/config.json file; always use the provided CLI or MCP tools for configuration changes.
Applied to files:
src/utils/create-mcp-config.jstests/integration/profiles/amp-init-functionality.test.jsapps/extension/package.publish.json.kiro/settings/mcp.jsonapps/docs/getting-started/quick-start/installation.mdx.changeset/clever-spies-obey.mdllms-install.mdapps/docs/archive/Installation.mdxREADME.md.taskmaster/CLAUDE.mdapps/extension/README.md
📚 Learning: 2025-07-31T22:08:16.039Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/taskmaster.mdc:0-0
Timestamp: 2025-07-31T22:08:16.039Z
Learning: Applies to .taskmaster/config.json : 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.
Applied to files:
src/utils/create-mcp-config.jstests/integration/profiles/amp-init-functionality.test.jspublic/assets/AGENTS.mdapps/extension/package.publish.json.kiro/settings/mcp.jsonapps/docs/getting-started/quick-start/installation.mdxdocs/tutorial.md.changeset/clever-spies-obey.mdllms-install.mdtests/unit/profiles/amp-integration.test.jsapps/docs/archive/Installation.mdxREADME.md.taskmaster/CLAUDE.mdtests/unit/profiles/selective-profile-removal.test.jsapps/extension/README.md
📚 Learning: 2025-09-01T09:55:15.061Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/AGENTS.md:0-0
Timestamp: 2025-09-01T09:55:15.061Z
Learning: Applies to assets/**/.mcp.json : Configure the Task Master MCP server in .mcp.json with the provided mcpServers.task-master-ai block and environment keys
Applied to files:
src/utils/create-mcp-config.jstests/integration/profiles/amp-init-functionality.test.jspublic/assets/AGENTS.mdapps/extension/package.publish.json.kiro/settings/mcp.jsonapps/docs/getting-started/quick-start/installation.mdxdocs/tutorial.md.changeset/clever-spies-obey.mdllms-install.mdtests/unit/profiles/amp-integration.test.jsapps/docs/archive/Installation.mdxREADME.md.taskmaster/CLAUDE.mdtests/unit/profiles/selective-profile-removal.test.jsapps/extension/README.md
📚 Learning: 2025-07-18T17:06:57.833Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/ai_services.mdc:0-0
Timestamp: 2025-07-18T17:06:57.833Z
Learning: Applies to scripts/modules/task-manager/*.js : Do not initialize AI clients (Anthropic, Perplexity, etc.) directly within core logic (`task-manager/`) or MCP direct functions.
Applied to files:
src/utils/create-mcp-config.jspublic/assets/AGENTS.md.changeset/clever-spies-obey.mdapps/docs/archive/Installation.mdx
📚 Learning: 2025-07-18T17:10:12.881Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/dev_workflow.mdc:0-0
Timestamp: 2025-07-18T17:10:12.881Z
Learning: Applies to .taskmaster/config.json : Do not manually edit `.taskmaster/config.json` unless you are certain of the changes; use the `task-master models` command or `models` MCP tool for configuration.
Applied to files:
src/utils/create-mcp-config.js.kiro/settings/mcp.jsonapps/docs/getting-started/quick-start/installation.mdxllms-install.md
📚 Learning: 2025-07-18T17:11:36.732Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/mcp.mdc:0-0
Timestamp: 2025-07-18T17:11:36.732Z
Learning: Applies to mcp-server/src/tools/*.js : MCP tools should always call *Direct wrappers instead of executeTaskMasterCommand, except as a fallback if a direct function is not yet implemented.
Applied to files:
src/utils/create-mcp-config.jstests/integration/profiles/amp-init-functionality.test.js.kiro/settings/mcp.jsonllms-install.mdtests/unit/profiles/amp-integration.test.jsapps/docs/archive/Installation.mdxtests/unit/profiles/selective-profile-removal.test.js
📚 Learning: 2025-07-18T17:11:36.732Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/mcp.mdc:0-0
Timestamp: 2025-07-18T17:11:36.732Z
Learning: Applies to mcp-server/src/{tools,core/direct-functions}/*.js : Use helpers from mcp-server/src/tools/utils.js, mcp-server/src/core/utils/path-utils.js, and mcp-server/src/core/utils/ai-client-utils.js for centralized utilities.
Applied to files:
src/utils/create-mcp-config.jsapps/docs/archive/Installation.mdx
📚 Learning: 2025-07-18T17:06:57.833Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/ai_services.mdc:0-0
Timestamp: 2025-07-18T17:06:57.833Z
Learning: Applies to scripts/modules/task-manager/*.js : Do not import or call anything from the old `ai-services.js`, `ai-client-factory.js`, or `ai-client-utils.js` files.
Applied to files:
src/utils/create-mcp-config.js.changeset/clever-spies-obey.md
📚 Learning: 2025-07-18T17:06:57.833Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/ai_services.mdc:0-0
Timestamp: 2025-07-18T17:06:57.833Z
Learning: Applies to scripts/modules/task-manager/*.js : Do not fetch AI-specific parameters (model ID, max tokens, temp) using `config-manager.js` getters for the AI call. Pass the `role` instead.
Applied to files:
src/utils/create-mcp-config.jstests/unit/profiles/selective-profile-removal.test.js
📚 Learning: 2025-07-18T17:10:12.881Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/dev_workflow.mdc:0-0
Timestamp: 2025-07-18T17:10:12.881Z
Learning: For CLI usage, install Taskmaster globally with `npm install -g task-master-ai` or use locally via `npx task-master-ai ...`.
Applied to files:
src/utils/create-mcp-config.jstests/integration/profiles/amp-init-functionality.test.jsapps/docs/archive/cursor-setup.mdxpublic/assets/AGENTS.md.kiro/settings/mcp.jsonapps/docs/getting-started/quick-start/installation.mdxdocs/tutorial.md.changeset/clever-spies-obey.mdllms-install.mdtests/unit/profiles/amp-integration.test.jsapps/docs/archive/Installation.mdxREADME.md.taskmaster/CLAUDE.mdtests/unit/profiles/selective-profile-removal.test.js
📚 Learning: 2025-07-18T17:19:27.365Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-18T17:19:27.365Z
Learning: Use the global `task-master` CLI command instead of directly invoking `node scripts/dev.js` for all task management operations.
Applied to files:
src/utils/create-mcp-config.jstests/integration/profiles/amp-init-functionality.test.jspublic/assets/AGENTS.mddocs/tutorial.md.changeset/clever-spies-obey.mdapps/docs/archive/Installation.mdx.taskmaster/CLAUDE.mdtests/unit/profiles/selective-profile-removal.test.js
📚 Learning: 2025-07-31T22:08:16.039Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/taskmaster.mdc:0-0
Timestamp: 2025-07-31T22:08:16.039Z
Learning: Applies to {.env,.cursor/mcp.json} : Set API keys for AI providers (e.g., ANTHROPIC_API_KEY, OPENAI_API_KEY, etc.) 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).
Applied to files:
src/utils/create-mcp-config.jspublic/assets/AGENTS.md.kiro/settings/mcp.jsonapps/docs/getting-started/quick-start/installation.mdxdocs/tutorial.mdllms-install.mdapps/docs/archive/Installation.mdxREADME.md.taskmaster/CLAUDE.md
📚 Learning: 2025-07-18T17:16:13.793Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/tests.mdc:0-0
Timestamp: 2025-07-18T17:16:13.793Z
Learning: Applies to **/*.test.js : Do not use real AI client initialization logic in tests; create test-specific paths that bypass client initialization.
Applied to files:
tests/integration/profiles/amp-init-functionality.test.jstests/unit/profiles/selective-profile-removal.test.js
📚 Learning: 2025-07-18T17:16:13.793Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/tests.mdc:0-0
Timestamp: 2025-07-18T17:16:13.793Z
Learning: Applies to **/*.test.js : Do not import real AI service clients in tests; create fully mocked versions that return predictable responses.
Applied to files:
tests/integration/profiles/amp-init-functionality.test.jstests/unit/profiles/selective-profile-removal.test.js
📚 Learning: 2025-07-18T17:12:57.903Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/new_features.mdc:0-0
Timestamp: 2025-07-18T17:12:57.903Z
Learning: Applies to scripts/modules/**/*.test.js : Test CLI and MCP interfaces with real task data, verify end-to-end workflows across tag contexts, and test error scenarios and recovery in integration tests.
Applied to files:
tests/integration/profiles/amp-init-functionality.test.jstests/unit/profiles/amp-integration.test.js
📚 Learning: 2025-07-18T17:11:36.732Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/mcp.mdc:0-0
Timestamp: 2025-07-18T17:11:36.732Z
Learning: Applies to mcp-server/src/tools/*.js : MCP tools must follow a specific structure: use server.addTool with snake_case tool names, define parameters using Zod, and implement the execute function as an async function.
Applied to files:
tests/integration/profiles/amp-init-functionality.test.jstests/unit/profiles/amp-integration.test.jstests/unit/profiles/selective-profile-removal.test.js
📚 Learning: 2025-07-18T17:11:36.732Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/mcp.mdc:0-0
Timestamp: 2025-07-18T17:11:36.732Z
Learning: If an MCP tool fails with unclear errors (like JSON parsing failures), run the equivalent task-master CLI command in the terminal to get more detailed error messages.
Applied to files:
tests/integration/profiles/amp-init-functionality.test.jspublic/assets/AGENTS.md.kiro/settings/mcp.jsonapps/docs/getting-started/quick-start/installation.mdxdocs/tutorial.mdllms-install.mdapps/docs/archive/Installation.mdxREADME.md.taskmaster/CLAUDE.md
📚 Learning: 2025-07-18T17:10:12.881Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/dev_workflow.mdc:0-0
Timestamp: 2025-07-18T17:10:12.881Z
Learning: Use the Taskmaster command set (`task-master` CLI or MCP tools) for all task management operations: listing, expanding, updating, tagging, and status changes.
Applied to files:
tests/integration/profiles/amp-init-functionality.test.jsapps/docs/archive/cursor-setup.mdxpublic/assets/AGENTS.mddocs/tutorial.mdllms-install.mdapps/docs/archive/Installation.mdx.taskmaster/CLAUDE.mdapps/extension/README.md
📚 Learning: 2025-07-31T22:08:16.039Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/taskmaster.mdc:0-0
Timestamp: 2025-07-31T22:08:16.039Z
Learning: Applies to .taskmaster/config.json : All other Taskmaster settings (model choice, max tokens, temperature, log level, custom endpoints) are managed in .taskmaster/config.json via the task-master models command or models MCP tool.
Applied to files:
tests/integration/profiles/amp-init-functionality.test.jsapps/docs/archive/cursor-setup.mdxpublic/assets/AGENTS.md.kiro/settings/mcp.jsonapps/docs/getting-started/quick-start/installation.mdxdocs/tutorial.mdllms-install.mdtests/unit/profiles/amp-integration.test.jsREADME.md.taskmaster/CLAUDE.mdapps/extension/README.md
📚 Learning: 2025-07-18T17:06:04.909Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/ai_providers.mdc:0-0
Timestamp: 2025-07-18T17:06:04.909Z
Learning: Applies to .cursor/mcp.json.example : Add the new PROVIDER_API_KEY with its placeholder to the env section for taskmaster-ai in .cursor/mcp.json.example.
Applied to files:
apps/docs/archive/cursor-setup.mdxpublic/assets/AGENTS.md.kiro/settings/mcp.jsonapps/docs/getting-started/quick-start/installation.mdxdocs/tutorial.mdllms-install.mdapps/docs/archive/Installation.mdxREADME.md.taskmaster/CLAUDE.md
📚 Learning: 2025-07-18T17:12:57.903Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/new_features.mdc:0-0
Timestamp: 2025-07-18T17:12:57.903Z
Learning: Applies to .cursor/rules/*.mdc : Update relevant '.cursor/rules/*.mdc' files and include tagged system considerations in architecture docs when adding new features.
Applied to files:
apps/docs/archive/cursor-setup.mdx
📚 Learning: 2025-09-17T19:28:51.448Z
Learnt from: joedanz
PR: eyaltoledano/claude-task-master#1186
File: src/profiles/cursor.js:37-43
Timestamp: 2025-09-17T19:28:51.448Z
Learning: In the eyaltoledano/claude-task-master repository cursor profile implementation, the onAdd lifecycle hook sources command files from 'assets/claude/commands' and transforms them for Cursor IDE compatibility, rather than using separate cursor-specific command files.
Applied to files:
apps/docs/archive/cursor-setup.mdx
📚 Learning: 2025-07-31T22:08:16.039Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/taskmaster.mdc:0-0
Timestamp: 2025-07-31T22:08:16.039Z
Learning: Applies to .cursor/mcp.json : When using MCP/Cursor integration, ensure that the required API keys are present in the env section of .cursor/mcp.json.
Applied to files:
apps/docs/archive/cursor-setup.mdxapps/docs/getting-started/quick-start/installation.mdxREADME.md
📚 Learning: 2025-07-18T17:09:23.831Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/cursor_rules.mdc:0-0
Timestamp: 2025-07-18T17:09:23.831Z
Learning: Applies to .cursor/rules/*.mdc : Maintain Cursor rule files by updating them when new patterns emerge, adding examples from the actual codebase, removing outdated patterns, and cross-referencing related rules.
Applied to files:
apps/docs/archive/cursor-setup.mdx
📚 Learning: 2025-07-18T17:19:27.365Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-18T17:19:27.365Z
Learning: Use `task-master add-task` to add a new task to tasks.json using AI.
Applied to files:
apps/docs/archive/cursor-setup.mdxdocs/tutorial.md
📚 Learning: 2025-07-18T17:10:02.683Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/dev_workflow.mdc:0-0
Timestamp: 2025-07-18T17:10:02.683Z
Learning: Applies to .taskmaster/config.json : Store Taskmaster configuration settings (AI model selections, parameters, logging level, default subtasks/priority, project name, tag management) in `.taskmaster/config.json` in the project root. Do not configure these via environment variables.
Applied to files:
apps/docs/archive/cursor-setup.mdxdocs/tutorial.md
📚 Learning: 2025-07-18T17:10:12.881Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/dev_workflow.mdc:0-0
Timestamp: 2025-07-18T17:10:12.881Z
Learning: Applies to .taskmaster/config.json : Store Taskmaster configuration settings (AI model selections, parameters, logging level, default subtasks/priority, project name, etc.) in the `.taskmaster/config.json` file located in the project root directory. Do not configure non-API key settings via environment variables.
Applied to files:
apps/docs/archive/cursor-setup.mdxREADME.md
📚 Learning: 2025-07-18T17:18:17.759Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/utilities.mdc:0-0
Timestamp: 2025-07-18T17:18:17.759Z
Learning: Applies to .taskmasterconfig : Use `.taskmasterconfig` (JSON) in the project root for storing Taskmaster configuration (excluding API keys), and manage it via the `task-master models --setup` CLI command or the `models` MCP tool.
Applied to files:
apps/docs/archive/cursor-setup.mdxdocs/tutorial.md
📚 Learning: 2025-07-31T20:49:04.638Z
Learnt from: Crunchyman-ralph
PR: eyaltoledano/claude-task-master#997
File: apps/extension/package.publish.json:2-8
Timestamp: 2025-07-31T20:49:04.638Z
Learning: In the eyaltoledano/claude-task-master repository, the VS Code extension uses a 3-file packaging system where package.json (with name "extension") is for development within the monorepo, while package.publish.json (with name "task-master-hamster") contains the clean manifest for VS Code marketplace publishing. The different names are intentional and serve distinct purposes in the build and publishing workflow.
Applied to files:
apps/extension/package.publish.json
📚 Learning: 2025-07-18T17:10:02.683Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/dev_workflow.mdc:0-0
Timestamp: 2025-07-18T17:10:02.683Z
Learning: Applies to {.env,.cursor/mcp.json} : Store sensitive API keys and endpoint URLs for Taskmaster in a `.env` file (for CLI usage) or in the `env` section of `.cursor/mcp.json` (for MCP/Cursor integration). Do not store non-API key settings in these files.
Applied to files:
.kiro/settings/mcp.jsonapps/docs/getting-started/quick-start/installation.mdxdocs/tutorial.mdllms-install.mdapps/docs/archive/Installation.mdxREADME.md
📚 Learning: 2025-07-18T17:06:57.833Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/ai_services.mdc:0-0
Timestamp: 2025-07-18T17:06:57.833Z
Learning: Ensure API keys are correctly configured in `.env` (for CLI) or `.cursor/mcp.json` (for MCP).
Applied to files:
apps/docs/getting-started/quick-start/installation.mdxREADME.md
📚 Learning: 2025-07-18T17:06:04.909Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/ai_providers.mdc:0-0
Timestamp: 2025-07-18T17:06:04.909Z
Learning: API keys for providers must be set in the correct location: in the env section of .cursor/mcp.json for MCP/Cursor, or in a .env file in the project root for CLI.
Applied to files:
apps/docs/getting-started/quick-start/installation.mdxREADME.md
📚 Learning: 2025-07-18T17:18:17.759Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/utilities.mdc:0-0
Timestamp: 2025-07-18T17:18:17.759Z
Learning: Applies to {.env,.cursor/mcp.json} : Store API keys only in `.env` (for CLI, loaded by `dotenv` in `scripts/dev.js`) or `.cursor/mcp.json` (for MCP, accessed via `session.env`).
Applied to files:
apps/docs/getting-started/quick-start/installation.mdxREADME.md
📚 Learning: 2025-07-18T17:06:04.909Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/ai_providers.mdc:0-0
Timestamp: 2025-07-18T17:06:04.909Z
Learning: If AI commands fail, verify the API key for the selected provider, check the model ID, provider status, and restart MCP if necessary.
Applied to files:
apps/docs/getting-started/quick-start/installation.mdxREADME.md
📚 Learning: 2025-07-18T17:19:27.365Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-18T17:19:27.365Z
Learning: Use `task-master init` to initialize a new project with Task Master structure.
Applied to files:
docs/tutorial.md
📚 Learning: 2025-07-18T17:19:27.365Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-18T17:19:27.365Z
Learning: Start new projects by running `task-master init` or `node scripts/dev.js parse-prd --input=<prd-file.txt>` to generate the initial tasks.json.
Applied to files:
docs/tutorial.md
📚 Learning: 2025-07-18T17:10:53.657Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/glossary.mdc:0-0
Timestamp: 2025-07-18T17:10:53.657Z
Learning: Guide for using Task Master to manage task-driven development workflows with tagged task lists support (dev_workflow.mdc).
Applied to files:
docs/tutorial.md
📚 Learning: 2025-09-01T09:55:15.061Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/AGENTS.md:0-0
Timestamp: 2025-09-01T09:55:15.061Z
Learning: Applies to assets/.claude/commands/taskmaster-next.md : Create .claude/commands/taskmaster-next.md implementing the 4-step workflow to find and show the next task
Applied to files:
docs/tutorial.md
📚 Learning: 2025-07-18T17:07:53.100Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-18T17:07:53.100Z
Learning: Applies to .changeset/*.md : The changeset summary should be user-facing, describing what changed in the released version that is relevant to users or consumers of the package.
Applied to files:
.changeset/clever-spies-obey.md
📚 Learning: 2025-08-11T12:30:23.843Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: CLAUDE.md:0-0
Timestamp: 2025-08-11T12:30:23.843Z
Learning: Import Task Master's development workflow commands and guidelines; treat the contents of ./.taskmaster/CLAUDE.md as if included in the main CLAUDE.md
Applied to files:
.taskmaster/CLAUDE.md
📚 Learning: 2025-09-03T12:16:15.866Z
Learnt from: Crunchyman-ralph
PR: eyaltoledano/claude-task-master#1178
File: packages/tm-core/package.json:13-64
Timestamp: 2025-09-03T12:16:15.866Z
Learning: For internal packages in the claude-task-master project, Crunchyman-ralph prefers pointing package.json "types" entries to src .ts files rather than dist .d.ts files for better developer experience (DX), as the packages are not being exported as SDKs.
Applied to files:
.taskmaster/CLAUDE.md
📚 Learning: 2025-09-09T19:13:55.652Z
Learnt from: Crunchyman-ralph
PR: eyaltoledano/claude-task-master#1194
File: .github/workflows/ci.yml:31-35
Timestamp: 2025-09-09T19:13:55.652Z
Learning: The claude-task-master project has only one package-lock.json file in the entire workspace (at the root level), so cache-dependency-path configuration is unnecessary for the npm cache in GitHub Actions.
Applied to files:
.taskmaster/CLAUDE.md
📚 Learning: 2025-08-07T13:00:22.966Z
Learnt from: Crunchyman-ralph
PR: eyaltoledano/claude-task-master#1090
File: apps/extension/package.json:241-243
Timestamp: 2025-08-07T13:00:22.966Z
Learning: In monorepos, local packages should use "*" as the version constraint in package.json dependencies, as recommended by npm. This ensures the local version from within the same workspace is always used, rather than attempting to resolve from external registries. This applies to packages like task-master-ai within the eyaltoledano/claude-task-master monorepo.
Applied to files:
.taskmaster/CLAUDE.md
📚 Learning: 2025-08-06T21:12:43.715Z
Learnt from: Crunchyman-ralph
PR: eyaltoledano/claude-task-master#1091
File: assets/claude/agents/task-orchestrator.md:1-6
Timestamp: 2025-08-06T21:12:43.715Z
Learning: In the eyaltoledano/claude-task-master repository, agent files are intentionally duplicated between `.claude/agents/` (for internal project use) and `assets/claude/agents/` (as template files for users to copy). This duplication serves different purposes and should be maintained to support both internal development and user distribution needs.
Applied to files:
.taskmaster/CLAUDE.md
📚 Learning: 2025-08-06T21:12:20.981Z
Learnt from: Crunchyman-ralph
PR: eyaltoledano/claude-task-master#1091
File: assets/claude/agents/task-executor.md:1-6
Timestamp: 2025-08-06T21:12:20.981Z
Learning: In the eyaltoledano/claude-task-master repository, agent files in assets/claude/agents/ are intended for distribution to users (for copying), while identical files in .claude/agents/ are for internal project use. This intentional duplication serves different purposes and is not a DRY violation.
Applied to files:
.taskmaster/CLAUDE.md
📚 Learning: 2025-07-18T17:16:13.793Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/tests.mdc:0-0
Timestamp: 2025-07-18T17:16:13.793Z
Learning: Applies to tests/{unit,integration,e2e}/**/*.test.js : Explicitly handle all options, including defaults and shorthand flags (e.g., -p for --prompt), and include null/undefined checks in test implementations for parameters that might be optional.
Applied to files:
tests/unit/profiles/selective-profile-removal.test.js
📚 Learning: 2025-07-18T17:18:17.759Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/utilities.mdc:0-0
Timestamp: 2025-07-18T17:18:17.759Z
Learning: Applies to scripts/modules/task-manager/**/*.js : Do not call AI-specific getters (like `getMainModelId`, `getMainMaxTokens`) from core logic functions in `scripts/modules/task-manager/*`; instead, pass the `role` to the unified AI service.
Applied to files:
tests/unit/profiles/selective-profile-removal.test.js
📚 Learning: 2025-07-18T17:16:13.793Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/tests.mdc:0-0
Timestamp: 2025-07-18T17:16:13.793Z
Learning: Applies to tests/{unit,integration,e2e}/**/*.test.js : Use sample task fixtures for consistent test data, mock file system operations, and test both success and error paths for task operations.
Applied to files:
tests/unit/profiles/selective-profile-removal.test.js
📚 Learning: 2025-07-18T17:16:13.793Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/tests.mdc:0-0
Timestamp: 2025-07-18T17:16:13.793Z
Learning: Applies to **/*.test.js : Verify modifications on the in-memory task objects passed to writeJSON.
Applied to files:
tests/unit/profiles/selective-profile-removal.test.js
📚 Learning: 2025-07-18T17:07:39.336Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/architecture.mdc:0-0
Timestamp: 2025-07-18T17:07:39.336Z
Learning: Applies to mcp-server/src/tools/*.js : MCP server tools in mcp-server/src/tools/*.js must have their execute methods wrapped with the withNormalizedProjectRoot higher-order function from tools/utils.js to ensure consistent path handling.
Applied to files:
tests/unit/profiles/selective-profile-removal.test.js
📚 Learning: 2025-07-18T17:10:53.657Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/glossary.mdc:0-0
Timestamp: 2025-07-18T17:10:53.657Z
Learning: Guidelines for implementing and interacting with the Task Master MCP Server (mcp.mdc).
Applied to files:
apps/extension/README.md
📚 Learning: 2025-07-18T17:10:53.657Z
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/glossary.mdc:0-0
Timestamp: 2025-07-18T17:10:53.657Z
Learning: Comprehensive reference for Taskmaster MCP tools and CLI commands with tagged task lists information (taskmaster.mdc).
Applied to files:
apps/extension/README.md
🪛 markdownlint-cli2 (0.17.2)
.changeset/clever-spies-obey.md
5-5: First line in a file should be a top-level heading
(MD041, first-line-heading, first-line-h1)
llms-install.md
20-20: Hard tabs
Column: 1
(MD010, no-hard-tabs)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
- GitHub Check: Test
- GitHub Check: typecheck
- GitHub Check: build
🔇 Additional comments (16)
apps/docs/archive/Installation.mdx (1)
22-22: LGTM: args simplified to npx -y task-master-ai.Matches the repo-wide change removing --package.
.kiro/settings/mcp.json (1)
5-5: LGTM: args updated to ["-y", "task-master-ai"].Consistent with the new invocation.
public/assets/AGENTS.md (1)
88-88: LGTM: MCP args simplified.Docs example aligns with the new standard.
apps/docs/archive/cursor-setup.mdx (1)
51-51: LGTM: Cursor MCP command updated.
npx -y task-master-aiis correct..taskmaster/CLAUDE.md (1)
88-88: LGTM: MCP args simplified here as well.Consistent across docs.
README.md (1)
105-106: LGTM: MCP examples updated to ["-y", "task-master-ai"] and note adjusted.Examples for Cursor/Windsurf and VS Code now match the new invocation.
Also applies to: 125-126, 134-135
src/utils/create-mcp-config.js (1)
48-48: LGTM — default MCP args emit without --package; verify no stale --package/task-master-mcp refsrg in the sandbox returned "No files were searched"; unable to confirm removal of old references. Run locally:
#!/bin/bash set -euo pipefail rg --no-ignore-vcs --hidden -n --color=never '\-\-package(=|\s+)(task-master-ai|task-master-mcp)\b' -g '!**/node_modules/**' || true rg --no-ignore-vcs --hidden -n --color=never '\btask-master-mcp\b' -g '!**/node_modules/**' || true rg --no-ignore-vcs --hidden -n --color=never '"mcpServers"\s*:\s*\{[^}]*"taskmaster-ai"\s*:' -U -g '!**/node_modules/**' || true sed -n '1,200p' src/utils/create-mcp-config.js || truellms-install.md (1)
20-20: Args simplification LGTM. Also add a short migration note.Good removal of
--package. Please add a brief “Migration notes” callout explaining old["-y","--package=task-master-ai","task-master-ai"]→ new["-y","task-master-ai"]so existing users can update quickly.apps/extension/README.md (1)
112-113: Defaults updated correctly.Docs now match the new args (
-y,task-master-ai). Ensure the extension’s published defaults remain in sync (see package.publish.json change).apps/extension/package.publish.json (1)
98-99: Published default args aligned.
taskmaster.mcp.argsuses["-y","task-master-ai"]—matches docs and tests.docs/tutorial.md (2)
26-27: Args simplification LGTM.Config now correctly uses
["-y","task-master-ai"].
148-149: Cursor command example updated correctly.
npx -y task-master-aiis correct.apps/docs/getting-started/quick-start/installation.mdx (3)
59-60: Args simplification LGTM.Both MCP config blocks correctly use
["-y","task-master-ai"].Also applies to: 87-88
78-79: Note tweak LGTM.Clearer guidance for “0 tools enabled”.
11-21: One‑click Cursor deeplink corrected —--packageremovedRegenerated deeplink encodes args ["-y","task-master-ai"] and name=task-master-ai; replace the existing link in apps/docs/getting-started/quick-start/installation.mdx (lines 11–21) with:
cursor://anysphere.cursor-deeplink/mcp/install?name=task-master-ai&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsInRhc2stbWFzdGVyLWFpIl0sImVudiI6eyJBTlRIUk9QSUNfQVBJX0tFWSI6IllPVVJfQU5USFJPUElDX0FQSV9LRVlfSEVSRSIsIlBFUlBMRVhJVFlfQVBJX0tFWSI6IllPVVJfUEVSUExFWElUWV9BUElfS0VZX0hFUkUiLCJPUEVOQUlfQVBJX0tFWSI6IllPVVJfT1BFTkFJX0tFWV9IRVJFIiwiR09PR0xFX0FQSV9LRVkiOiJZT1VSX0dPT0dMRV9LRVlfSEVSRSIsIk1JU1RSQUxfQVBJX0tFWSI6IllPVVJfTUlTVFJBTF9LRVlfSEVSRSIsIk9QRU5ST1VURVJfQVBJX0tFWSI6IllPVVJfT1BFTlJPVVRFUl9LRVlfSEVSRSIsIlhBSV9BUElfS0VZIjoiWU9VUl9YQUlfS0VZX0hFUkUiLCJBWlVSRV9PUEVOQUJFX0FQSV9LRVkiOiJZT1VSX0FaVVJFX0tFWV9IRVJFIiwiT0xMQU1BX0FQSV9LRVkiOiJZT1VSX09MTEFNQV9BUElfS0VZX0hFUkUifX0
tests/unit/profiles/selective-profile-removal.test.js (1)
529-530: Updated fixture args LGTM; verify intent across this file.Other fixtures in this test use
['task-master-ai']without-y(e.g., Line 100, 202, 282, 324, 366, 446, 494). If intentional (to support both forms), add a brief comment; otherwise, normalize to the new args for consistency.
| "taskmaster-ai": { | ||
| "command": "npx", | ||
| "args": ["-y", "--package", "task-master-ai", "task-master-mcp"], | ||
| "args": ["-y", "task-master-ai"], | ||
| "env": { |
There was a problem hiding this comment.
🧹 Nitpick
Fix server key naming to be consistent ("task-master-ai").
Most docs/configs use "task-master-ai" as the MCP server key. This block uses "taskmaster-ai" (no hyphen), which can confuse users copying the snippet.
Apply this diff:
- "taskmaster-ai": {
+ "task-master-ai": {📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "taskmaster-ai": { | |
| "command": "npx", | |
| "args": ["-y", "--package", "task-master-ai", "task-master-mcp"], | |
| "args": ["-y", "task-master-ai"], | |
| "env": { | |
| "task-master-ai": { | |
| "command": "npx", | |
| "args": ["-y", "task-master-ai"], | |
| "env": { |
🤖 Prompt for AI Agents
In apps/docs/archive/Installation.mdx around lines 20 to 23 the server key is
incorrectly spelled "taskmaster-ai" (no hyphen) in the task mapping; change it
to "task-master-ai" to match the rest of the docs/configs so users copying the
snippet won't be confused—update the key name only, preserving the command,
args, and env block.
| command: 'npx', | ||
| args: ['-y', '--package=task-master-ai', 'task-master-ai'] | ||
| args: ['-y', 'task-master-ai'] | ||
| } |
There was a problem hiding this comment.
🧹 Nitpick
All updated MCP args instances LGTM.
Consider asserting the transformed settings retain args: ['-y','task-master-ai'] to lock in behavior.
- expect(config['amp.mcpServers']['task-master-ai']).toBeDefined();
+ expect(config['amp.mcpServers']['task-master-ai']).toBeDefined();
+ expect(config['amp.mcpServers']['task-master-ai'].args).toEqual(['-y','task-master-ai']);Also applies to: 185-185, 270-270, 303-304
🤖 Prompt for AI Agents
In tests/integration/profiles/amp-init-functionality.test.js around lines 145
(and also at 185, 270, and 303-304), add assertions to verify that the
transformed/returned settings include args: ['-y','task-master-ai'];
specifically, locate each place where MCP args are validated and assert the
settings.args array equals that exact array (order and values) to lock behavior,
using the existing test assertion style and helper functions so the tests fail
if the args are changed.
| args: ['-y', 'task-master-ai'] | ||
| } |
There was a problem hiding this comment.
🧹 Nitpick
Args updates LGTM.
Same optional assertion suggestion as integration test to ensure args don’t regress.
Also applies to: 219-219
🤖 Prompt for AI Agents
In tests/unit/profiles/amp-integration.test.js around lines 156-157 (and also at
line 219), add an assertion that the args array is exactly the expected value to
prevent regressions; update the test to capture the args being passed and assert
they equal ['-y', 'task-master-ai'] (use the test framework's strict
equality/array equality matcher) so the spec fails if the args change.
What type of PR is this?
Description
Related Issues
How to Test This
# Example commands or stepsExpected result:
Contributor Checklist
npm run changesetnpm testnpm run format-check(ornpm run formatto fix)Changelog Entry
For Maintainers
Summary by CodeRabbit