chore: add coderabbit configuration#992
Conversation
|
|
""" WalkthroughA new Changes
Sequence Diagram(s)No sequence diagram generated as the change is limited to configuration file addition without control flow or feature logic modifications. 📜 Recent review detailsConfiguration used: .coderabbit.yaml 📒 Files selected for processing (1)
🧰 Additional context used🧠 Learnings (2)📓 Common learnings.coderabbit.yaml (27)🪛 YAMLlint (1.37.1).coderabbit.yaml[error] 10-10: no new line character at the end of file (new-line-at-end-of-file) 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
Documentation and Community
|
There was a problem hiding this comment.
Actionable comments posted: 3
📜 Review details
Configuration used: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Pro
📒 Files selected for processing (1)
.coderabbit.yaml(1 hunks)
🧰 Additional context used
🧠 Learnings (2)
📓 Common learnings
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Applies to .changeset/*.md : Every pull request containing new features, bug fixes, breaking changes, performance improvements, significant refactoring, user-facing documentation updates, dependency updates, or impactful build/tooling changes should include a changeset file.
.coderabbit.yaml (5)
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Applies to .changeset/*.md : Every pull request containing new features, bug fixes, breaking changes, performance improvements, significant refactoring, user-facing documentation updates, dependency updates, or impactful build/tooling changes should include a changeset file.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-12T06:25:32.123Z
Learning: Monitor code review comments, track common development questions, update rules after major refactors, add links to relevant documentation, and cross-reference related rules to ensure continuous improvement of `.windsurfrules`.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/git_workflow.mdc:0-0
Timestamp: 2025-07-12T06:21:51.555Z
Learning: Pull Request descriptions must use the provided template, including sections for Task Overview, Subtasks Completed, Implementation Details, Testing, Breaking Changes, and Related Tasks
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/self_improve.mdc:0-0
Timestamp: 2025-07-12T06:23:14.391Z
Learning: Monitor code review comments for rule improvement opportunities
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/self_improve.mdc:0-0
Timestamp: 2025-07-12T06:23:14.390Z
Learning: Add new rules when code reviews repeatedly mention the same feedback
🪛 YAMLlint (1.37.1)
.coderabbit.yaml
[error] 169-169: no new line character at the end of file
(new-line-at-end-of-file)
There was a problem hiding this comment.
Actionable comments posted: 2
♻️ Duplicate comments (1)
.coderabbit.yaml (1)
96-97: Add a trailing newline (duplicate reminder)The file still ends without a newline, which YAML-lint flags.
Add one blank line after line 97.
📜 Review details
Configuration used: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Pro
📒 Files selected for processing (1)
.coderabbit.yaml(1 hunks)
🧰 Additional context used
🧠 Learnings (2)
📓 Common learnings
Learnt from: Crunchyman-ralph
PR: eyaltoledano/claude-task-master#992
File: .coderabbit.yaml:1-169
Timestamp: 2025-07-16T16:06:07.129Z
Learning: CodeRabbit configuration files like .coderabbit.yaml are internal development tooling that affect the review process but don't impact end users, so changesets are not required for these configuration additions.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Applies to .changeset/*.md : Every pull request containing new features, bug fixes, breaking changes, performance improvements, significant refactoring, user-facing documentation updates, dependency updates, or impactful build/tooling changes should include a changeset file.
.coderabbit.yaml (23)
Learnt from: Crunchyman-ralph
PR: eyaltoledano/claude-task-master#992
File: .coderabbit.yaml:1-169
Timestamp: 2025-07-16T16:06:07.129Z
Learning: CodeRabbit configuration files like .coderabbit.yaml are internal development tooling that affect the review process but don't impact end users, so changesets are not required for these configuration additions.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Applies to .changeset/*.md : Every pull request containing new features, bug fixes, breaking changes, performance improvements, significant refactoring, user-facing documentation updates, dependency updates, or impactful build/tooling changes should include a changeset file.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-12T06:25:32.123Z
Learning: Monitor code review comments, track common development questions, update rules after major refactors, add links to relevant documentation, and cross-reference related rules to ensure continuous improvement of `.windsurfrules`.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-12T06:25:32.123Z
Learning: Continuously improve the `.windsurfrules` document by adding new rules when new technologies or patterns are used in 3+ files, common bugs could be prevented, code reviews repeatedly mention the same feedback, or new security/performance patterns emerge.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/mcp.mdc:0-0
Timestamp: 2025-07-12T06:22:23.572Z
Learning: Applies to mcp-server/src/tools/*.js : Use camelCase with Tool suffix for tool registration functions in mcp-server/src/tools/ (e.g., registerListTasksTool).
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Applies to .changeset/*.md : The changeset file generated in .changeset/ must be staged and committed along with the relevant code changes.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/glossary.mdc:0-0
Timestamp: 2025-07-12T06:21:59.567Z
Learning: Guidelines for using Changesets (npm run changeset) to manage versioning and changelogs (changeset.mdc).
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/self_improve.mdc:0-0
Timestamp: 2025-07-12T06:23:14.391Z
Learning: Monitor code review comments for rule improvement opportunities
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Do not create changesets for trivial chores such as very minor code cleanup, adding comments that don't clarify behavior, or typo fixes in non-user-facing code or internal docs.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Do not create changesets for local configuration changes, such as updates to personal editor settings or local .env files.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Do not create changesets for non-impactful test updates, such as minor refactoring of tests or adding tests for existing functionality without fixing bugs.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/utilities.mdc:0-0
Timestamp: 2025-07-12T06:25:17.082Z
Learning: Applies to {.taskmasterconfig,scripts/modules/config-manager.js} : Use .taskmasterconfig (JSON) in the project root for configuration (excluding API keys), managed via scripts/modules/config-manager.js, and do not store API keys or manually edit unless necessary.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Applies to .changeset/*.md : The changeset summary must be concise, in imperative mood, and focused on what changed for the user-facing changelog (not a detailed Git commit message).
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Provide both a concise changeset summary (for the changelog) and a detailed Git commit message (for repository history) when making user-relevant changes.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Applies to .cursor/rules/** : Do not create changesets for changes only to files within .cursor/rules/ that solely guide internal development practices for this specific repository.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/self_improve.mdc:0-0
Timestamp: 2025-07-12T06:23:14.390Z
Learning: Add new rules when code reviews repeatedly mention the same feedback
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/dev_workflow.mdc:0-0
Timestamp: 2025-07-12T06:21:41.209Z
Learning: After completing a subtask, update or create new coding rules as needed, following internal guidelines (e.g., `cursor_rules.mdc`, `self_improve.mdc`).
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-12T06:25:32.123Z
Learning: Add new rule sections to `.windsurfrules` when a new technology or pattern is used in 3+ files, or when repeated code review feedback or common bugs indicate a need for standardization.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-12T06:25:32.123Z
Learning: Applies to assets/**/.windsurfrules : Update Windsurf rules when new patterns emerge, add examples from the actual codebase, remove outdated patterns, and cross-reference related rules.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/cursor_rules.mdc:0-0
Timestamp: 2025-07-12T06:21:12.592Z
Learning: Applies to .cursor/rules/*.mdc : Maintain Cursor rules by updating them when new patterns emerge, adding examples from the actual codebase, removing outdated patterns, and cross-referencing related rules.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-12T06:25:32.123Z
Learning: Applies to assets/**/.windsurfrules : Start each Windsurf rule section with a high-level overview, include specific actionable requirements, show correct implementation examples, reference existing code, and keep rules DRY by referencing other rules.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-12T06:25:32.123Z
Learning: Applies to assets/**/.windsurfrules : Keep examples in `.windsurfrules` synchronized with the codebase, update references to external docs, maintain links between related rules, and document breaking changes.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/git_workflow.mdc:0-0
Timestamp: 2025-07-12T06:21:51.555Z
Learning: Pull Request descriptions must use the provided template, including sections for Task Overview, Subtasks Completed, Implementation Details, Testing, Breaking Changes, and Related Tasks
There was a problem hiding this comment.
Actionable comments posted: 2
📜 Review details
Configuration used: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Pro
📒 Files selected for processing (1)
.coderabbit.yaml(1 hunks)
🧰 Additional context used
🧠 Learnings (2)
📓 Common learnings
Learnt from: Crunchyman-ralph
PR: eyaltoledano/claude-task-master#992
File: .coderabbit.yaml:1-169
Timestamp: 2025-07-16T16:06:07.129Z
Learning: CodeRabbit configuration files like .coderabbit.yaml are internal development tooling that affect the review process but don't impact end users, so changesets are not required for these configuration additions.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Applies to .changeset/*.md : Every pull request containing new features, bug fixes, breaking changes, performance improvements, significant refactoring, user-facing documentation updates, dependency updates, or impactful build/tooling changes should include a changeset file.
.coderabbit.yaml (26)
Learnt from: Crunchyman-ralph
PR: eyaltoledano/claude-task-master#992
File: .coderabbit.yaml:1-169
Timestamp: 2025-07-16T16:06:07.129Z
Learning: CodeRabbit configuration files like .coderabbit.yaml are internal development tooling that affect the review process but don't impact end users, so changesets are not required for these configuration additions.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Applies to .changeset/*.md : Every pull request containing new features, bug fixes, breaking changes, performance improvements, significant refactoring, user-facing documentation updates, dependency updates, or impactful build/tooling changes should include a changeset file.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-12T06:25:32.123Z
Learning: Monitor code review comments, track common development questions, update rules after major refactors, add links to relevant documentation, and cross-reference related rules to ensure continuous improvement of `.windsurfrules`.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-12T06:25:32.123Z
Learning: Continuously improve the `.windsurfrules` document by adding new rules when new technologies or patterns are used in 3+ files, common bugs could be prevented, code reviews repeatedly mention the same feedback, or new security/performance patterns emerge.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Applies to .changeset/*.md : The changeset file generated in .changeset/ must be staged and committed along with the relevant code changes.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/glossary.mdc:0-0
Timestamp: 2025-07-12T06:21:59.567Z
Learning: Guidelines for using Changesets (npm run changeset) to manage versioning and changelogs (changeset.mdc).
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/self_improve.mdc:0-0
Timestamp: 2025-07-12T06:23:14.391Z
Learning: Monitor code review comments for rule improvement opportunities
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/new_features.mdc:0-0
Timestamp: 2025-07-12T06:23:03.283Z
Learning: Create appropriate changesets for new features, use semantic versioning, and include tagged system information in release notes.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Do not create changesets for trivial chores such as very minor code cleanup, adding comments that don't clarify behavior, or typo fixes in non-user-facing code or internal docs.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Applies to .cursor/rules/** : Do not create changesets for changes only to files within .cursor/rules/ that solely guide internal development practices for this specific repository.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Run `npm run changeset` (or `npx changeset add`) after staging a logical set of changes that should be communicated in the next release's CHANGELOG.md.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Do not create changesets for local configuration changes, such as updates to personal editor settings or local .env files.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Do not create changesets for non-impactful test updates, such as minor refactoring of tests or adding tests for existing functionality without fixing bugs.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/utilities.mdc:0-0
Timestamp: 2025-07-12T06:25:17.082Z
Learning: Applies to {.taskmasterconfig,scripts/modules/config-manager.js} : Use .taskmasterconfig (JSON) in the project root for configuration (excluding API keys), managed via scripts/modules/config-manager.js, and do not store API keys or manually edit unless necessary.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Applies to .changeset/*.md : The changeset summary must be concise, in imperative mood, and focused on what changed for the user-facing changelog (not a detailed Git commit message).
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Provide both a concise changeset summary (for the changelog) and a detailed Git commit message (for repository history) when making user-relevant changes.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/self_improve.mdc:0-0
Timestamp: 2025-07-12T06:23:14.390Z
Learning: Add new rules when code reviews repeatedly mention the same feedback
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/dev_workflow.mdc:0-0
Timestamp: 2025-07-12T06:21:41.209Z
Learning: After completing a subtask, update or create new coding rules as needed, following internal guidelines (e.g., `cursor_rules.mdc`, `self_improve.mdc`).
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-12T06:25:32.123Z
Learning: Add new rule sections to `.windsurfrules` when a new technology or pattern is used in 3+ files, or when repeated code review feedback or common bugs indicate a need for standardization.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-12T06:25:32.123Z
Learning: Applies to assets/**/.windsurfrules : Update Windsurf rules when new patterns emerge, add examples from the actual codebase, remove outdated patterns, and cross-reference related rules.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/cursor_rules.mdc:0-0
Timestamp: 2025-07-12T06:21:12.592Z
Learning: Applies to .cursor/rules/*.mdc : Maintain Cursor rules by updating them when new patterns emerge, adding examples from the actual codebase, removing outdated patterns, and cross-referencing related rules.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-12T06:25:32.123Z
Learning: Applies to assets/**/.windsurfrules : Start each Windsurf rule section with a high-level overview, include specific actionable requirements, show correct implementation examples, reference existing code, and keep rules DRY by referencing other rules.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-12T06:25:32.123Z
Learning: Applies to assets/**/.windsurfrules : Keep examples in `.windsurfrules` synchronized with the codebase, update references to external docs, maintain links between related rules, and document breaking changes.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/dev_workflow.mdc:0-0
Timestamp: 2025-07-12T06:21:41.209Z
Learning: Applies to .*/rules/** : Each AI coding assistant rule profile (e.g., Claude Code, Cline, Codex, Cursor, Roo Code, Trae, Windsurf) must create its own directory (e.g., `.cursor/rules`, `.roo/rules`) with appropriate configuration files.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-12T06:25:32.123Z
Learning: Applies to assets/**/.windsurfrules : Mark outdated patterns as deprecated, remove rules that no longer apply, update references to deprecated rules, and document migration paths for old patterns in `.windsurfrules`.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/git_workflow.mdc:0-0
Timestamp: 2025-07-12T06:21:51.555Z
Learning: Pull Request descriptions must use the provided template, including sections for Task Overview, Subtasks Completed, Implementation Details, Testing, Breaking Changes, and Related Tasks
There was a problem hiding this comment.
Actionable comments posted: 3
📜 Review details
Configuration used: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Pro
📒 Files selected for processing (1)
.coderabbit.yaml(1 hunks)
🧰 Additional context used
🧠 Learnings (2)
📓 Common learnings
Learnt from: Crunchyman-ralph
PR: eyaltoledano/claude-task-master#992
File: .coderabbit.yaml:1-169
Timestamp: 2025-07-16T16:06:07.129Z
Learning: CodeRabbit configuration files like .coderabbit.yaml are internal development tooling that affect the review process but don't impact end users, so changesets are not required for these configuration additions.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Applies to .changeset/*.md : Every pull request containing new features, bug fixes, breaking changes, performance improvements, significant refactoring, user-facing documentation updates, dependency updates, or impactful build/tooling changes should include a changeset file.
.coderabbit.yaml (27)
Learnt from: Crunchyman-ralph
PR: eyaltoledano/claude-task-master#992
File: .coderabbit.yaml:1-169
Timestamp: 2025-07-16T16:06:07.129Z
Learning: CodeRabbit configuration files like .coderabbit.yaml are internal development tooling that affect the review process but don't impact end users, so changesets are not required for these configuration additions.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Applies to .changeset/*.md : Every pull request containing new features, bug fixes, breaking changes, performance improvements, significant refactoring, user-facing documentation updates, dependency updates, or impactful build/tooling changes should include a changeset file.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/ai_providers.mdc:0-0
Timestamp: 2025-07-12T06:19:54.854Z
Learning: Update any relevant documentation (like README.md or other rules) mentioning supported providers or configuration when adding a new provider.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-12T06:25:32.123Z
Learning: Monitor code review comments, track common development questions, update rules after major refactors, add links to relevant documentation, and cross-reference related rules to ensure continuous improvement of `.windsurfrules`.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-12T06:25:32.123Z
Learning: Continuously improve the `.windsurfrules` document by adding new rules when new technologies or patterns are used in 3+ files, common bugs could be prevented, code reviews repeatedly mention the same feedback, or new security/performance patterns emerge.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/mcp.mdc:0-0
Timestamp: 2025-07-12T06:22:23.572Z
Learning: Applies to mcp-server/src/tools/*.js : Use camelCase with Tool suffix for tool registration functions in mcp-server/src/tools/ (e.g., registerListTasksTool).
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Applies to .changeset/*.md : The changeset file generated in .changeset/ must be staged and committed along with the relevant code changes.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/glossary.mdc:0-0
Timestamp: 2025-07-12T06:21:59.567Z
Learning: Guidelines for using Changesets (npm run changeset) to manage versioning and changelogs (changeset.mdc).
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/self_improve.mdc:0-0
Timestamp: 2025-07-12T06:23:14.391Z
Learning: Monitor code review comments for rule improvement opportunities
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Do not create changesets for trivial chores such as very minor code cleanup, adding comments that don't clarify behavior, or typo fixes in non-user-facing code or internal docs.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/new_features.mdc:0-0
Timestamp: 2025-07-12T06:23:03.283Z
Learning: Create appropriate changesets for new features, use semantic versioning, and include tagged system information in release notes.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Applies to .cursor/rules/** : Do not create changesets for changes only to files within .cursor/rules/ that solely guide internal development practices for this specific repository.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Do not create changesets for local configuration changes, such as updates to personal editor settings or local .env files.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Do not create changesets for non-impactful test updates, such as minor refactoring of tests or adding tests for existing functionality without fixing bugs.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/utilities.mdc:0-0
Timestamp: 2025-07-12T06:25:17.082Z
Learning: Applies to {.taskmasterconfig,scripts/modules/config-manager.js} : Use .taskmasterconfig (JSON) in the project root for configuration (excluding API keys), managed via scripts/modules/config-manager.js, and do not store API keys or manually edit unless necessary.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Applies to .changeset/*.md : The changeset summary must be concise, in imperative mood, and focused on what changed for the user-facing changelog (not a detailed Git commit message).
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/changeset.mdc:0-0
Timestamp: 2025-07-12T06:20:29.698Z
Learning: Provide both a concise changeset summary (for the changelog) and a detailed Git commit message (for repository history) when making user-relevant changes.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/self_improve.mdc:0-0
Timestamp: 2025-07-12T06:23:14.390Z
Learning: Add new rules when code reviews repeatedly mention the same feedback
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/dev_workflow.mdc:0-0
Timestamp: 2025-07-12T06:21:41.209Z
Learning: After completing a subtask, update or create new coding rules as needed, following internal guidelines (e.g., `cursor_rules.mdc`, `self_improve.mdc`).
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-12T06:25:32.123Z
Learning: Add new rule sections to `.windsurfrules` when a new technology or pattern is used in 3+ files, or when repeated code review feedback or common bugs indicate a need for standardization.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-12T06:25:32.123Z
Learning: Applies to assets/**/.windsurfrules : Update Windsurf rules when new patterns emerge, add examples from the actual codebase, remove outdated patterns, and cross-reference related rules.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/cursor_rules.mdc:0-0
Timestamp: 2025-07-12T06:21:12.592Z
Learning: Applies to .cursor/rules/*.mdc : Maintain Cursor rules by updating them when new patterns emerge, adding examples from the actual codebase, removing outdated patterns, and cross-referencing related rules.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-12T06:25:32.123Z
Learning: Applies to assets/**/.windsurfrules : Start each Windsurf rule section with a high-level overview, include specific actionable requirements, show correct implementation examples, reference existing code, and keep rules DRY by referencing other rules.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-12T06:25:32.123Z
Learning: Applies to assets/**/.windsurfrules : Keep examples in `.windsurfrules` synchronized with the codebase, update references to external docs, maintain links between related rules, and document breaking changes.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/dev_workflow.mdc:0-0
Timestamp: 2025-07-12T06:21:41.209Z
Learning: Applies to .*/rules/** : Each AI coding assistant rule profile (e.g., Claude Code, Cline, Codex, Cursor, Roo Code, Trae, Windsurf) must create its own directory (e.g., `.cursor/rules`, `.roo/rules`) with appropriate configuration files.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: assets/.windsurfrules:0-0
Timestamp: 2025-07-12T06:25:32.123Z
Learning: Applies to assets/**/.windsurfrules : Mark outdated patterns as deprecated, remove rules that no longer apply, update references to deprecated rules, and document migration paths for old patterns in `.windsurfrules`.
Learnt from: CR
PR: eyaltoledano/claude-task-master#0
File: .cursor/rules/self_improve.mdc:0-0
Timestamp: 2025-07-12T06:23:14.390Z
Learning: Modify existing rules when better examples exist in the codebase
* chore: add coderabbit configuration * chore: fix coderabbit config * chore: improve coderabbit config * chore: more coderabbit reviews * chore: remove all defaults
* fix: prevent CLAUDE.md overwrite by using imports (#949) * fix: prevent CLAUDE.md overwrite by using imports - Copy Task Master instructions to .taskmaster/CLAUDE.md - Add import section to user's CLAUDE.md instead of overwriting - Preserve existing user content - Clean removal of Task Master content on uninstall Closes #929 * chore: add changeset for Claude import fix * fix: task master (tm) custom slash commands w/ proper syntax (#968) * feat: add task master (tm) custom slash commands Add comprehensive task management system integration via custom slash commands. Includes commands for: - Project initialization and setup - Task parsing from PRD documents - Task creation, update, and removal - Subtask management - Dependency tracking and validation - Complexity analysis and task expansion - Project status and reporting - Workflow automation This provides a complete task management workflow directly within Claude Code. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> * chore: add changeset --------- Co-authored-by: neno-is-ooo <204701868+neno-is-ooo@users.noreply.github.com> Co-authored-by: Claude <noreply@anthropic.com> * chore: create extension scaffolding (#989) * chore: create extension scaffolding * chore: fix workspace for changeset * chore: fix package-lock * feat(profiles): Add MCP configuration to Claude Code rules (#980) * add .mcp.json with claude profile * add changeset * update changeset * update test * fix: show command no longer requires complexity report to exist (#979) Co-authored-by: Ben Vargas <ben@example.com> * feat: complete Groq provider integration and add Kimi K2 model (#978) * feat: complete Groq provider integration and add Kimi K2 model - Add missing getRequiredApiKeyName() method to GroqProvider class - Register GroqProvider in ai-services-unified.js PROVIDERS object - Add Groq API key handling to config-manager.js (isApiKeySet and getMcpApiKeyStatus) - Add GROQ_API_KEY to env.example with format hint - Add moonshotai/kimi-k2-instruct model to Groq provider ($1/$3 per 1M tokens, 16k max) - Fix import sorting for linting compliance - Add GroqProvider mock to ai-services-unified tests Fixes missing implementation pieces that prevented Groq provider from working. * chore: improve changeset --------- Co-authored-by: Ben Vargas <ben@example.com> Co-authored-by: Ralph Khreish <35776126+Crunchyman-ralph@users.noreply.github.com> * docs: Auto-update and format models.md * feat: Add Amp rule profile with AGENT.md and MCP config (#973) * Amp profile + tests * generatlize to Agent instead of Claude Code to support any agent * add changeset * unnecessary tab formatting * fix exports * fix formatting * feat: Add Zed editor rule profile with agent rules and MCP config (#974) * zed profile * add changeset * update changeset * fix: Add missing API keys to .env.example and README.md (#972) * add OLLAMA_API_KEY * add missing API keys * add changeset * update keys and fix OpenAI comment * chore: create extension scaffolding (#989) * chore: create extension scaffolding * chore: fix workspace for changeset * chore: fix package-lock * feat(profiles): Add MCP configuration to Claude Code rules (#980) * add .mcp.json with claude profile * add changeset * update changeset * update test * fix: show command no longer requires complexity report to exist (#979) Co-authored-by: Ben Vargas <ben@example.com> * feat: complete Groq provider integration and add Kimi K2 model (#978) * feat: complete Groq provider integration and add Kimi K2 model - Add missing getRequiredApiKeyName() method to GroqProvider class - Register GroqProvider in ai-services-unified.js PROVIDERS object - Add Groq API key handling to config-manager.js (isApiKeySet and getMcpApiKeyStatus) - Add GROQ_API_KEY to env.example with format hint - Add moonshotai/kimi-k2-instruct model to Groq provider ($1/$3 per 1M tokens, 16k max) - Fix import sorting for linting compliance - Add GroqProvider mock to ai-services-unified tests Fixes missing implementation pieces that prevented Groq provider from working. * chore: improve changeset --------- Co-authored-by: Ben Vargas <ben@example.com> Co-authored-by: Ralph Khreish <35776126+Crunchyman-ralph@users.noreply.github.com> * docs: Auto-update and format models.md * feat: Add Amp rule profile with AGENT.md and MCP config (#973) * Amp profile + tests * generatlize to Agent instead of Claude Code to support any agent * add changeset * unnecessary tab formatting * fix exports * fix formatting * feat: Add Zed editor rule profile with agent rules and MCP config (#974) * zed profile * add changeset * update changeset --------- Co-authored-by: Ralph Khreish <35776126+Crunchyman-ralph@users.noreply.github.com> Co-authored-by: Ben Vargas <ben@vargas.com> Co-authored-by: Ben Vargas <ben@example.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * feat: Add OpenCode rule profile with AGENTS.md and MCP config (#970) * add opencode to profile lists * add opencode profile / modify mcp config after add * add changeset * not necessary; main config being updated * add issue link * add/fix tests * fix url and docsUrl * update test for new urls * fix formatting * update/fix tests * chore: add coderabbit configuration (#992) * chore: add coderabbit configuration * chore: fix coderabbit config * chore: improve coderabbit config * chore: more coderabbit reviews * chore: remove all defaults * docs: Update MCP server name for consistency and use 'Add to Cursor' button (#995) * update MCP server name to task-master-ai for consistency * add changeset * update cursor link & switch to https * switch back to Add to Cursor button (https link) * update changeset * update changeset * update changeset * update changeset * use GitHub markdown format * fix(ai-validation): comprehensive fixes for AI response validation issues (#1000) * fix(ai-validation): comprehensive fixes for AI response validation issues - Fix update command validation when AI omits subtasks/status/dependencies - Fix add-task command when AI returns non-string details field - Fix update-task command when AI subtasks miss required fields - Add preprocessing to ensure proper field types before validation - Prevent split() errors on non-string fields - Set proper defaults for missing required fields * chore: run format * chore: implement coderabbit suggestions * feat: add kiro profile (#1001) * feat: add kiro profile * chore: fix format * chore: implement requested changes * chore: fix CI * refactor: remove unused resource and resource template initialization (#1002) * refactor: remove unused resource and resource template initialization * chore: implement requested changes * fix(core): Implement Boundary-First Tag Resolution (#943) * refactor(context): Standardize tag and projectRoot handling across all task tools This commit unifies context management by adopting a boundary-first resolution strategy. All task-scoped tools now resolve `tag` and `projectRoot` at their entry point and forward these values to the underlying direct functions. This approach centralizes context logic, ensuring consistent behavior and enhanced flexibility in multi-tag environments. * fix(tag): Clean up tag handling in task functions and sync process This commit refines the handling of the `tag` parameter across multiple functions, ensuring consistent context management. The `tag` is now passed more efficiently in `listTasksDirect`, `setTaskStatusDirect`, and `syncTasksToReadme`, improving clarity and reducing redundancy. Additionally, a TODO comment has been added in `sync-readme.js` to address future tag support enhancements. * feat(tag): Implement Boundary-First Tag Resolution for consistent tag handling This commit introduces Boundary-First Tag Resolution in the task manager, ensuring consistent and deterministic tag handling across CLI and MCP. This change resolves potential race conditions and improves the reliability of tag-specific operations. Additionally, the `expandTask` function has been updated to use the resolved tag when writing JSON, enhancing data integrity during task updates. * chore(biome): formatting * fix(expand-task): Update writeJSON call to use tag instead of resolvedTag * fix(commands): Enhance complexity report path resolution and task initialization `resolveComplexityReportPath` function to streamline output path generation based on tag context and user-defined output. - Improved clarity and maintainability of command handling by centralizing path resolution logic. * Fix: unknown currentTag * fix(task-manager): Update generateTaskFiles calls to include tag and projectRoot parameters This commit modifies the `moveTask` and `updateSubtaskById` functions to pass the `tag` and `projectRoot` parameters to the `generateTaskFiles` function. This ensures that task files are generated with the correct context when requested, enhancing consistency in task management operations. * fix(commands): Refactor tag handling and complexity report path resolution This commit updates the `registerCommands` function to utilize `taskMaster.getCurrentTag()` for consistent tag retrieval across command actions. It also enhances the initialization of `TaskMaster` by passing the tag directly, improving clarity and maintainability. The complexity report path resolution is streamlined to ensure correct file naming based on the current tag context. * fix(task-master): Update complexity report path expectations in tests This commit modifies the `initTaskMaster` test to expect a valid string for the complexity report path, ensuring it matches the expected file naming convention. This change enhances test reliability by verifying the correct output format when the path is generated. * fix(set-task-status): Enhance logging and tag resolution in task status updates This commit improves the logging output in the `registerSetTaskStatusTool` function to include the tag context when setting task statuses. It also updates the tag handling by resolving the tag using the `resolveTag` utility, ensuring that the correct tag is used when updating task statuses. Additionally, the `setTaskStatus` function is modified to remove the tag parameter from the `readJSON` and `writeJSON` calls, streamlining the data handling process. * fix(commands, expand-task, task-manager): Add complexity report option and enhance path handling This commit introduces a new `--complexity-report` option in the `registerCommands` function, allowing users to specify a custom path for the complexity report. The `expandTask` function is updated to accept the `complexityReportPath` from the context, ensuring it is utilized correctly during task expansion. Additionally, the `setTaskStatus` function now includes the `tag` parameter in the `readJSON` and `writeJSON` calls, improving task status updates with proper context. The `initTaskMaster` function is also modified to create parent directories for output paths, enhancing file handling robustness. * fix(expand-task): Add complexityReportPath to context for task expansion tests This commit updates the test for the `expandTask` function by adding the `complexityReportPath` to the context object. This change ensures that the complexity report path is correctly utilized in the test, aligning with recent enhancements to complexity report handling in the task manager. * chore: implement suggested changes * fix(parse-prd): Clarify tag parameter description for task organization Updated the documentation for the `tag` parameter in the `parse-prd.js` file to provide a clearer context on its purpose for organizing tasks into separate task lists. * Fix Inconsistent tag resolution pattern. * fix: Enhance complexity report path handling with tag support This commit updates various functions to incorporate the `tag` parameter when resolving complexity report paths. The `expandTaskDirect`, `resolveComplexityReportPath`, and related tools now utilize the current tag context, improving consistency in task management. Additionally, the complexity report path is now correctly passed through the context in the `expand-task` and `set-task-status` tools, ensuring accurate report retrieval based on the active tag. * Updated the JSDoc for the `tag` parameter in the `show-task.js` file. * Remove redundant comment on tag parameter in readJSON call * Remove unused import for getTagAwareFilePath * Add missed complexityReportPath to args for task expansion * fix(tests): Enhance research tests with tag-aware functionality This commit updates the `research.test.js` file to improve the testing of the `performResearch` function by incorporating tag-aware functionality. Key changes include mocking the `findProjectRoot` to return a valid path, enhancing the `ContextGatherer` and `FuzzyTaskSearch` mocks, and adding comprehensive tests for tag parameter handling in various scenarios. The tests now cover passing different tag values, ensuring correct behavior when tags are provided, undefined, or null, and validating the integration of tags in task discovery and context gathering processes. * Remove unused import for * fix: Refactor complexity report path handling and improve argument destructuring This commit enhances the `expandTaskDirect` function by improving the destructuring of arguments for better readability. It also updates the `analyze.js` and `analyze-task-complexity.js` files to utilize the new `resolveComplexityReportOutputPath` function, ensuring tag-aware resolution of output paths. Additionally, logging has been added to provide clarity on the report path being used. * test: Add complexity report tag isolation tests and improve path handling This commit introduces a new test file for complexity report tag isolation, ensuring that different tags maintain separate complexity reports. It enhances the existing tests in `analyze-task-complexity.test.js` by updating expectations to use `expect.stringContaining` for file paths, improving robustness against path changes. The new tests cover various scenarios, including path resolution and report generation for both master and feature tags, ensuring no cross-tag contamination occurs. * Update scripts/modules/task-manager/list-tasks.js Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update scripts/modules/task-manager/list-tasks.js Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * test(complexity-report): Fix tag slugification in filename expectations - Update mocks to use slugifyTagForFilePath for cross-platform compatibility - Replace raw tag values with slugified versions in expected filenames - Fix test expecting 'feature/user-auth-v2' to expect 'feature-user-auth-v2' - Align test with actual filename generation logic that sanitizes special chars --------- Co-authored-by: Ralph Khreish <35776126+Crunchyman-ralph@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: Update VS Code profile with MCP config transformation (#971) * remove dash in server name * add OLLAMA_API_KEY to VS Code MCP instructions * transform vscode mcp to correct format * add changeset * switch back to task-master-ai * use task-master-ai * Batch fixes before release (#1011) * fix: improve projectRoot * fix: improve task-master lang command * feat: add documentation to the readme so more people can access it * fix: expand command subtask dependency validation * fix: update command more reliable with perplexity and other models * chore: fix CI * chore: implement requested changes * chore: fix CI * chore: fix changeset release for extension package (#1012) * chore: fix changeset release for extension package * chore: fix CI * chore: rc version bump * chore: adjust kimi k2 max tokens (#1014) * docs: Auto-update and format models.md --------- Co-authored-by: Ben Vargas <ben@vargas.com> Co-authored-by: neno-is-ooo <204701868+neno-is-ooo@users.noreply.github.com> Co-authored-by: Claude <noreply@anthropic.com> Co-authored-by: Joe Danziger <joe@ticc.net> Co-authored-by: Ben Vargas <ben@example.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Parthy <52548018+mm-parthy@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* chore: add coderabbit configuration * chore: fix coderabbit config * chore: improve coderabbit config * chore: more coderabbit reviews * chore: remove all defaults
* fix: prevent CLAUDE.md overwrite by using imports (eyaltoledano#949) * fix: prevent CLAUDE.md overwrite by using imports - Copy Task Master instructions to .taskmaster/CLAUDE.md - Add import section to user's CLAUDE.md instead of overwriting - Preserve existing user content - Clean removal of Task Master content on uninstall Closes eyaltoledano#929 * chore: add changeset for Claude import fix * fix: task master (tm) custom slash commands w/ proper syntax (eyaltoledano#968) * feat: add task master (tm) custom slash commands Add comprehensive task management system integration via custom slash commands. Includes commands for: - Project initialization and setup - Task parsing from PRD documents - Task creation, update, and removal - Subtask management - Dependency tracking and validation - Complexity analysis and task expansion - Project status and reporting - Workflow automation This provides a complete task management workflow directly within Claude Code. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> * chore: add changeset --------- Co-authored-by: neno-is-ooo <204701868+neno-is-ooo@users.noreply.github.com> Co-authored-by: Claude <noreply@anthropic.com> * chore: create extension scaffolding (eyaltoledano#989) * chore: create extension scaffolding * chore: fix workspace for changeset * chore: fix package-lock * feat(profiles): Add MCP configuration to Claude Code rules (eyaltoledano#980) * add .mcp.json with claude profile * add changeset * update changeset * update test * fix: show command no longer requires complexity report to exist (eyaltoledano#979) Co-authored-by: Ben Vargas <ben@example.com> * feat: complete Groq provider integration and add Kimi K2 model (eyaltoledano#978) * feat: complete Groq provider integration and add Kimi K2 model - Add missing getRequiredApiKeyName() method to GroqProvider class - Register GroqProvider in ai-services-unified.js PROVIDERS object - Add Groq API key handling to config-manager.js (isApiKeySet and getMcpApiKeyStatus) - Add GROQ_API_KEY to env.example with format hint - Add moonshotai/kimi-k2-instruct model to Groq provider ($1/$3 per 1M tokens, 16k max) - Fix import sorting for linting compliance - Add GroqProvider mock to ai-services-unified tests Fixes missing implementation pieces that prevented Groq provider from working. * chore: improve changeset --------- Co-authored-by: Ben Vargas <ben@example.com> Co-authored-by: Ralph Khreish <35776126+Crunchyman-ralph@users.noreply.github.com> * docs: Auto-update and format models.md * feat: Add Amp rule profile with AGENT.md and MCP config (eyaltoledano#973) * Amp profile + tests * generatlize to Agent instead of Claude Code to support any agent * add changeset * unnecessary tab formatting * fix exports * fix formatting * feat: Add Zed editor rule profile with agent rules and MCP config (eyaltoledano#974) * zed profile * add changeset * update changeset * fix: Add missing API keys to .env.example and README.md (eyaltoledano#972) * add OLLAMA_API_KEY * add missing API keys * add changeset * update keys and fix OpenAI comment * chore: create extension scaffolding (eyaltoledano#989) * chore: create extension scaffolding * chore: fix workspace for changeset * chore: fix package-lock * feat(profiles): Add MCP configuration to Claude Code rules (eyaltoledano#980) * add .mcp.json with claude profile * add changeset * update changeset * update test * fix: show command no longer requires complexity report to exist (eyaltoledano#979) Co-authored-by: Ben Vargas <ben@example.com> * feat: complete Groq provider integration and add Kimi K2 model (eyaltoledano#978) * feat: complete Groq provider integration and add Kimi K2 model - Add missing getRequiredApiKeyName() method to GroqProvider class - Register GroqProvider in ai-services-unified.js PROVIDERS object - Add Groq API key handling to config-manager.js (isApiKeySet and getMcpApiKeyStatus) - Add GROQ_API_KEY to env.example with format hint - Add moonshotai/kimi-k2-instruct model to Groq provider ($1/$3 per 1M tokens, 16k max) - Fix import sorting for linting compliance - Add GroqProvider mock to ai-services-unified tests Fixes missing implementation pieces that prevented Groq provider from working. * chore: improve changeset --------- Co-authored-by: Ben Vargas <ben@example.com> Co-authored-by: Ralph Khreish <35776126+Crunchyman-ralph@users.noreply.github.com> * docs: Auto-update and format models.md * feat: Add Amp rule profile with AGENT.md and MCP config (eyaltoledano#973) * Amp profile + tests * generatlize to Agent instead of Claude Code to support any agent * add changeset * unnecessary tab formatting * fix exports * fix formatting * feat: Add Zed editor rule profile with agent rules and MCP config (eyaltoledano#974) * zed profile * add changeset * update changeset --------- Co-authored-by: Ralph Khreish <35776126+Crunchyman-ralph@users.noreply.github.com> Co-authored-by: Ben Vargas <ben@vargas.com> Co-authored-by: Ben Vargas <ben@example.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * feat: Add OpenCode rule profile with AGENTS.md and MCP config (eyaltoledano#970) * add opencode to profile lists * add opencode profile / modify mcp config after add * add changeset * not necessary; main config being updated * add issue link * add/fix tests * fix url and docsUrl * update test for new urls * fix formatting * update/fix tests * chore: add coderabbit configuration (eyaltoledano#992) * chore: add coderabbit configuration * chore: fix coderabbit config * chore: improve coderabbit config * chore: more coderabbit reviews * chore: remove all defaults * docs: Update MCP server name for consistency and use 'Add to Cursor' button (eyaltoledano#995) * update MCP server name to task-master-ai for consistency * add changeset * update cursor link & switch to https * switch back to Add to Cursor button (https link) * update changeset * update changeset * update changeset * update changeset * use GitHub markdown format * fix(ai-validation): comprehensive fixes for AI response validation issues (eyaltoledano#1000) * fix(ai-validation): comprehensive fixes for AI response validation issues - Fix update command validation when AI omits subtasks/status/dependencies - Fix add-task command when AI returns non-string details field - Fix update-task command when AI subtasks miss required fields - Add preprocessing to ensure proper field types before validation - Prevent split() errors on non-string fields - Set proper defaults for missing required fields * chore: run format * chore: implement coderabbit suggestions * feat: add kiro profile (eyaltoledano#1001) * feat: add kiro profile * chore: fix format * chore: implement requested changes * chore: fix CI * refactor: remove unused resource and resource template initialization (eyaltoledano#1002) * refactor: remove unused resource and resource template initialization * chore: implement requested changes * fix(core): Implement Boundary-First Tag Resolution (eyaltoledano#943) * refactor(context): Standardize tag and projectRoot handling across all task tools This commit unifies context management by adopting a boundary-first resolution strategy. All task-scoped tools now resolve `tag` and `projectRoot` at their entry point and forward these values to the underlying direct functions. This approach centralizes context logic, ensuring consistent behavior and enhanced flexibility in multi-tag environments. * fix(tag): Clean up tag handling in task functions and sync process This commit refines the handling of the `tag` parameter across multiple functions, ensuring consistent context management. The `tag` is now passed more efficiently in `listTasksDirect`, `setTaskStatusDirect`, and `syncTasksToReadme`, improving clarity and reducing redundancy. Additionally, a TODO comment has been added in `sync-readme.js` to address future tag support enhancements. * feat(tag): Implement Boundary-First Tag Resolution for consistent tag handling This commit introduces Boundary-First Tag Resolution in the task manager, ensuring consistent and deterministic tag handling across CLI and MCP. This change resolves potential race conditions and improves the reliability of tag-specific operations. Additionally, the `expandTask` function has been updated to use the resolved tag when writing JSON, enhancing data integrity during task updates. * chore(biome): formatting * fix(expand-task): Update writeJSON call to use tag instead of resolvedTag * fix(commands): Enhance complexity report path resolution and task initialization `resolveComplexityReportPath` function to streamline output path generation based on tag context and user-defined output. - Improved clarity and maintainability of command handling by centralizing path resolution logic. * Fix: unknown currentTag * fix(task-manager): Update generateTaskFiles calls to include tag and projectRoot parameters This commit modifies the `moveTask` and `updateSubtaskById` functions to pass the `tag` and `projectRoot` parameters to the `generateTaskFiles` function. This ensures that task files are generated with the correct context when requested, enhancing consistency in task management operations. * fix(commands): Refactor tag handling and complexity report path resolution This commit updates the `registerCommands` function to utilize `taskMaster.getCurrentTag()` for consistent tag retrieval across command actions. It also enhances the initialization of `TaskMaster` by passing the tag directly, improving clarity and maintainability. The complexity report path resolution is streamlined to ensure correct file naming based on the current tag context. * fix(task-master): Update complexity report path expectations in tests This commit modifies the `initTaskMaster` test to expect a valid string for the complexity report path, ensuring it matches the expected file naming convention. This change enhances test reliability by verifying the correct output format when the path is generated. * fix(set-task-status): Enhance logging and tag resolution in task status updates This commit improves the logging output in the `registerSetTaskStatusTool` function to include the tag context when setting task statuses. It also updates the tag handling by resolving the tag using the `resolveTag` utility, ensuring that the correct tag is used when updating task statuses. Additionally, the `setTaskStatus` function is modified to remove the tag parameter from the `readJSON` and `writeJSON` calls, streamlining the data handling process. * fix(commands, expand-task, task-manager): Add complexity report option and enhance path handling This commit introduces a new `--complexity-report` option in the `registerCommands` function, allowing users to specify a custom path for the complexity report. The `expandTask` function is updated to accept the `complexityReportPath` from the context, ensuring it is utilized correctly during task expansion. Additionally, the `setTaskStatus` function now includes the `tag` parameter in the `readJSON` and `writeJSON` calls, improving task status updates with proper context. The `initTaskMaster` function is also modified to create parent directories for output paths, enhancing file handling robustness. * fix(expand-task): Add complexityReportPath to context for task expansion tests This commit updates the test for the `expandTask` function by adding the `complexityReportPath` to the context object. This change ensures that the complexity report path is correctly utilized in the test, aligning with recent enhancements to complexity report handling in the task manager. * chore: implement suggested changes * fix(parse-prd): Clarify tag parameter description for task organization Updated the documentation for the `tag` parameter in the `parse-prd.js` file to provide a clearer context on its purpose for organizing tasks into separate task lists. * Fix Inconsistent tag resolution pattern. * fix: Enhance complexity report path handling with tag support This commit updates various functions to incorporate the `tag` parameter when resolving complexity report paths. The `expandTaskDirect`, `resolveComplexityReportPath`, and related tools now utilize the current tag context, improving consistency in task management. Additionally, the complexity report path is now correctly passed through the context in the `expand-task` and `set-task-status` tools, ensuring accurate report retrieval based on the active tag. * Updated the JSDoc for the `tag` parameter in the `show-task.js` file. * Remove redundant comment on tag parameter in readJSON call * Remove unused import for getTagAwareFilePath * Add missed complexityReportPath to args for task expansion * fix(tests): Enhance research tests with tag-aware functionality This commit updates the `research.test.js` file to improve the testing of the `performResearch` function by incorporating tag-aware functionality. Key changes include mocking the `findProjectRoot` to return a valid path, enhancing the `ContextGatherer` and `FuzzyTaskSearch` mocks, and adding comprehensive tests for tag parameter handling in various scenarios. The tests now cover passing different tag values, ensuring correct behavior when tags are provided, undefined, or null, and validating the integration of tags in task discovery and context gathering processes. * Remove unused import for * fix: Refactor complexity report path handling and improve argument destructuring This commit enhances the `expandTaskDirect` function by improving the destructuring of arguments for better readability. It also updates the `analyze.js` and `analyze-task-complexity.js` files to utilize the new `resolveComplexityReportOutputPath` function, ensuring tag-aware resolution of output paths. Additionally, logging has been added to provide clarity on the report path being used. * test: Add complexity report tag isolation tests and improve path handling This commit introduces a new test file for complexity report tag isolation, ensuring that different tags maintain separate complexity reports. It enhances the existing tests in `analyze-task-complexity.test.js` by updating expectations to use `expect.stringContaining` for file paths, improving robustness against path changes. The new tests cover various scenarios, including path resolution and report generation for both master and feature tags, ensuring no cross-tag contamination occurs. * Update scripts/modules/task-manager/list-tasks.js Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update scripts/modules/task-manager/list-tasks.js Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * test(complexity-report): Fix tag slugification in filename expectations - Update mocks to use slugifyTagForFilePath for cross-platform compatibility - Replace raw tag values with slugified versions in expected filenames - Fix test expecting 'feature/user-auth-v2' to expect 'feature-user-auth-v2' - Align test with actual filename generation logic that sanitizes special chars --------- Co-authored-by: Ralph Khreish <35776126+Crunchyman-ralph@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: Update VS Code profile with MCP config transformation (eyaltoledano#971) * remove dash in server name * add OLLAMA_API_KEY to VS Code MCP instructions * transform vscode mcp to correct format * add changeset * switch back to task-master-ai * use task-master-ai * Batch fixes before release (eyaltoledano#1011) * fix: improve projectRoot * fix: improve task-master lang command * feat: add documentation to the readme so more people can access it * fix: expand command subtask dependency validation * fix: update command more reliable with perplexity and other models * chore: fix CI * chore: implement requested changes * chore: fix CI * chore: fix changeset release for extension package (eyaltoledano#1012) * chore: fix changeset release for extension package * chore: fix CI * chore: rc version bump * chore: adjust kimi k2 max tokens (eyaltoledano#1014) * docs: Auto-update and format models.md --------- Co-authored-by: Ben Vargas <ben@vargas.com> Co-authored-by: neno-is-ooo <204701868+neno-is-ooo@users.noreply.github.com> Co-authored-by: Claude <noreply@anthropic.com> Co-authored-by: Joe Danziger <joe@ticc.net> Co-authored-by: Ben Vargas <ben@example.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Parthy <52548018+mm-parthy@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* chore: add coderabbit configuration * chore: fix coderabbit config * chore: improve coderabbit config * chore: more coderabbit reviews * chore: remove all defaults
* fix: prevent CLAUDE.md overwrite by using imports (eyaltoledano#949) * fix: prevent CLAUDE.md overwrite by using imports - Copy Task Master instructions to .taskmaster/CLAUDE.md - Add import section to user's CLAUDE.md instead of overwriting - Preserve existing user content - Clean removal of Task Master content on uninstall Closes eyaltoledano#929 * chore: add changeset for Claude import fix * fix: task master (tm) custom slash commands w/ proper syntax (eyaltoledano#968) * feat: add task master (tm) custom slash commands Add comprehensive task management system integration via custom slash commands. Includes commands for: - Project initialization and setup - Task parsing from PRD documents - Task creation, update, and removal - Subtask management - Dependency tracking and validation - Complexity analysis and task expansion - Project status and reporting - Workflow automation This provides a complete task management workflow directly within Claude Code. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> * chore: add changeset --------- Co-authored-by: neno-is-ooo <204701868+neno-is-ooo@users.noreply.github.com> Co-authored-by: Claude <noreply@anthropic.com> * chore: create extension scaffolding (eyaltoledano#989) * chore: create extension scaffolding * chore: fix workspace for changeset * chore: fix package-lock * feat(profiles): Add MCP configuration to Claude Code rules (eyaltoledano#980) * add .mcp.json with claude profile * add changeset * update changeset * update test * fix: show command no longer requires complexity report to exist (eyaltoledano#979) Co-authored-by: Ben Vargas <ben@example.com> * feat: complete Groq provider integration and add Kimi K2 model (eyaltoledano#978) * feat: complete Groq provider integration and add Kimi K2 model - Add missing getRequiredApiKeyName() method to GroqProvider class - Register GroqProvider in ai-services-unified.js PROVIDERS object - Add Groq API key handling to config-manager.js (isApiKeySet and getMcpApiKeyStatus) - Add GROQ_API_KEY to env.example with format hint - Add moonshotai/kimi-k2-instruct model to Groq provider ($1/$3 per 1M tokens, 16k max) - Fix import sorting for linting compliance - Add GroqProvider mock to ai-services-unified tests Fixes missing implementation pieces that prevented Groq provider from working. * chore: improve changeset --------- Co-authored-by: Ben Vargas <ben@example.com> Co-authored-by: Ralph Khreish <35776126+Crunchyman-ralph@users.noreply.github.com> * docs: Auto-update and format models.md * feat: Add Amp rule profile with AGENT.md and MCP config (eyaltoledano#973) * Amp profile + tests * generatlize to Agent instead of Claude Code to support any agent * add changeset * unnecessary tab formatting * fix exports * fix formatting * feat: Add Zed editor rule profile with agent rules and MCP config (eyaltoledano#974) * zed profile * add changeset * update changeset * fix: Add missing API keys to .env.example and README.md (eyaltoledano#972) * add OLLAMA_API_KEY * add missing API keys * add changeset * update keys and fix OpenAI comment * chore: create extension scaffolding (eyaltoledano#989) * chore: create extension scaffolding * chore: fix workspace for changeset * chore: fix package-lock * feat(profiles): Add MCP configuration to Claude Code rules (eyaltoledano#980) * add .mcp.json with claude profile * add changeset * update changeset * update test * fix: show command no longer requires complexity report to exist (eyaltoledano#979) Co-authored-by: Ben Vargas <ben@example.com> * feat: complete Groq provider integration and add Kimi K2 model (eyaltoledano#978) * feat: complete Groq provider integration and add Kimi K2 model - Add missing getRequiredApiKeyName() method to GroqProvider class - Register GroqProvider in ai-services-unified.js PROVIDERS object - Add Groq API key handling to config-manager.js (isApiKeySet and getMcpApiKeyStatus) - Add GROQ_API_KEY to env.example with format hint - Add moonshotai/kimi-k2-instruct model to Groq provider ($1/$3 per 1M tokens, 16k max) - Fix import sorting for linting compliance - Add GroqProvider mock to ai-services-unified tests Fixes missing implementation pieces that prevented Groq provider from working. * chore: improve changeset --------- Co-authored-by: Ben Vargas <ben@example.com> Co-authored-by: Ralph Khreish <35776126+Crunchyman-ralph@users.noreply.github.com> * docs: Auto-update and format models.md * feat: Add Amp rule profile with AGENT.md and MCP config (eyaltoledano#973) * Amp profile + tests * generatlize to Agent instead of Claude Code to support any agent * add changeset * unnecessary tab formatting * fix exports * fix formatting * feat: Add Zed editor rule profile with agent rules and MCP config (eyaltoledano#974) * zed profile * add changeset * update changeset --------- Co-authored-by: Ralph Khreish <35776126+Crunchyman-ralph@users.noreply.github.com> Co-authored-by: Ben Vargas <ben@vargas.com> Co-authored-by: Ben Vargas <ben@example.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * feat: Add OpenCode rule profile with AGENTS.md and MCP config (eyaltoledano#970) * add opencode to profile lists * add opencode profile / modify mcp config after add * add changeset * not necessary; main config being updated * add issue link * add/fix tests * fix url and docsUrl * update test for new urls * fix formatting * update/fix tests * chore: add coderabbit configuration (eyaltoledano#992) * chore: add coderabbit configuration * chore: fix coderabbit config * chore: improve coderabbit config * chore: more coderabbit reviews * chore: remove all defaults * docs: Update MCP server name for consistency and use 'Add to Cursor' button (eyaltoledano#995) * update MCP server name to task-master-ai for consistency * add changeset * update cursor link & switch to https * switch back to Add to Cursor button (https link) * update changeset * update changeset * update changeset * update changeset * use GitHub markdown format * fix(ai-validation): comprehensive fixes for AI response validation issues (eyaltoledano#1000) * fix(ai-validation): comprehensive fixes for AI response validation issues - Fix update command validation when AI omits subtasks/status/dependencies - Fix add-task command when AI returns non-string details field - Fix update-task command when AI subtasks miss required fields - Add preprocessing to ensure proper field types before validation - Prevent split() errors on non-string fields - Set proper defaults for missing required fields * chore: run format * chore: implement coderabbit suggestions * feat: add kiro profile (eyaltoledano#1001) * feat: add kiro profile * chore: fix format * chore: implement requested changes * chore: fix CI * refactor: remove unused resource and resource template initialization (eyaltoledano#1002) * refactor: remove unused resource and resource template initialization * chore: implement requested changes * fix(core): Implement Boundary-First Tag Resolution (eyaltoledano#943) * refactor(context): Standardize tag and projectRoot handling across all task tools This commit unifies context management by adopting a boundary-first resolution strategy. All task-scoped tools now resolve `tag` and `projectRoot` at their entry point and forward these values to the underlying direct functions. This approach centralizes context logic, ensuring consistent behavior and enhanced flexibility in multi-tag environments. * fix(tag): Clean up tag handling in task functions and sync process This commit refines the handling of the `tag` parameter across multiple functions, ensuring consistent context management. The `tag` is now passed more efficiently in `listTasksDirect`, `setTaskStatusDirect`, and `syncTasksToReadme`, improving clarity and reducing redundancy. Additionally, a TODO comment has been added in `sync-readme.js` to address future tag support enhancements. * feat(tag): Implement Boundary-First Tag Resolution for consistent tag handling This commit introduces Boundary-First Tag Resolution in the task manager, ensuring consistent and deterministic tag handling across CLI and MCP. This change resolves potential race conditions and improves the reliability of tag-specific operations. Additionally, the `expandTask` function has been updated to use the resolved tag when writing JSON, enhancing data integrity during task updates. * chore(biome): formatting * fix(expand-task): Update writeJSON call to use tag instead of resolvedTag * fix(commands): Enhance complexity report path resolution and task initialization `resolveComplexityReportPath` function to streamline output path generation based on tag context and user-defined output. - Improved clarity and maintainability of command handling by centralizing path resolution logic. * Fix: unknown currentTag * fix(task-manager): Update generateTaskFiles calls to include tag and projectRoot parameters This commit modifies the `moveTask` and `updateSubtaskById` functions to pass the `tag` and `projectRoot` parameters to the `generateTaskFiles` function. This ensures that task files are generated with the correct context when requested, enhancing consistency in task management operations. * fix(commands): Refactor tag handling and complexity report path resolution This commit updates the `registerCommands` function to utilize `taskMaster.getCurrentTag()` for consistent tag retrieval across command actions. It also enhances the initialization of `TaskMaster` by passing the tag directly, improving clarity and maintainability. The complexity report path resolution is streamlined to ensure correct file naming based on the current tag context. * fix(task-master): Update complexity report path expectations in tests This commit modifies the `initTaskMaster` test to expect a valid string for the complexity report path, ensuring it matches the expected file naming convention. This change enhances test reliability by verifying the correct output format when the path is generated. * fix(set-task-status): Enhance logging and tag resolution in task status updates This commit improves the logging output in the `registerSetTaskStatusTool` function to include the tag context when setting task statuses. It also updates the tag handling by resolving the tag using the `resolveTag` utility, ensuring that the correct tag is used when updating task statuses. Additionally, the `setTaskStatus` function is modified to remove the tag parameter from the `readJSON` and `writeJSON` calls, streamlining the data handling process. * fix(commands, expand-task, task-manager): Add complexity report option and enhance path handling This commit introduces a new `--complexity-report` option in the `registerCommands` function, allowing users to specify a custom path for the complexity report. The `expandTask` function is updated to accept the `complexityReportPath` from the context, ensuring it is utilized correctly during task expansion. Additionally, the `setTaskStatus` function now includes the `tag` parameter in the `readJSON` and `writeJSON` calls, improving task status updates with proper context. The `initTaskMaster` function is also modified to create parent directories for output paths, enhancing file handling robustness. * fix(expand-task): Add complexityReportPath to context for task expansion tests This commit updates the test for the `expandTask` function by adding the `complexityReportPath` to the context object. This change ensures that the complexity report path is correctly utilized in the test, aligning with recent enhancements to complexity report handling in the task manager. * chore: implement suggested changes * fix(parse-prd): Clarify tag parameter description for task organization Updated the documentation for the `tag` parameter in the `parse-prd.js` file to provide a clearer context on its purpose for organizing tasks into separate task lists. * Fix Inconsistent tag resolution pattern. * fix: Enhance complexity report path handling with tag support This commit updates various functions to incorporate the `tag` parameter when resolving complexity report paths. The `expandTaskDirect`, `resolveComplexityReportPath`, and related tools now utilize the current tag context, improving consistency in task management. Additionally, the complexity report path is now correctly passed through the context in the `expand-task` and `set-task-status` tools, ensuring accurate report retrieval based on the active tag. * Updated the JSDoc for the `tag` parameter in the `show-task.js` file. * Remove redundant comment on tag parameter in readJSON call * Remove unused import for getTagAwareFilePath * Add missed complexityReportPath to args for task expansion * fix(tests): Enhance research tests with tag-aware functionality This commit updates the `research.test.js` file to improve the testing of the `performResearch` function by incorporating tag-aware functionality. Key changes include mocking the `findProjectRoot` to return a valid path, enhancing the `ContextGatherer` and `FuzzyTaskSearch` mocks, and adding comprehensive tests for tag parameter handling in various scenarios. The tests now cover passing different tag values, ensuring correct behavior when tags are provided, undefined, or null, and validating the integration of tags in task discovery and context gathering processes. * Remove unused import for * fix: Refactor complexity report path handling and improve argument destructuring This commit enhances the `expandTaskDirect` function by improving the destructuring of arguments for better readability. It also updates the `analyze.js` and `analyze-task-complexity.js` files to utilize the new `resolveComplexityReportOutputPath` function, ensuring tag-aware resolution of output paths. Additionally, logging has been added to provide clarity on the report path being used. * test: Add complexity report tag isolation tests and improve path handling This commit introduces a new test file for complexity report tag isolation, ensuring that different tags maintain separate complexity reports. It enhances the existing tests in `analyze-task-complexity.test.js` by updating expectations to use `expect.stringContaining` for file paths, improving robustness against path changes. The new tests cover various scenarios, including path resolution and report generation for both master and feature tags, ensuring no cross-tag contamination occurs. * Update scripts/modules/task-manager/list-tasks.js Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update scripts/modules/task-manager/list-tasks.js Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * test(complexity-report): Fix tag slugification in filename expectations - Update mocks to use slugifyTagForFilePath for cross-platform compatibility - Replace raw tag values with slugified versions in expected filenames - Fix test expecting 'feature/user-auth-v2' to expect 'feature-user-auth-v2' - Align test with actual filename generation logic that sanitizes special chars --------- Co-authored-by: Ralph Khreish <35776126+Crunchyman-ralph@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: Update VS Code profile with MCP config transformation (eyaltoledano#971) * remove dash in server name * add OLLAMA_API_KEY to VS Code MCP instructions * transform vscode mcp to correct format * add changeset * switch back to task-master-ai * use task-master-ai * Batch fixes before release (eyaltoledano#1011) * fix: improve projectRoot * fix: improve task-master lang command * feat: add documentation to the readme so more people can access it * fix: expand command subtask dependency validation * fix: update command more reliable with perplexity and other models * chore: fix CI * chore: implement requested changes * chore: fix CI * chore: fix changeset release for extension package (eyaltoledano#1012) * chore: fix changeset release for extension package * chore: fix CI * chore: rc version bump * chore: adjust kimi k2 max tokens (eyaltoledano#1014) * docs: Auto-update and format models.md --------- Co-authored-by: Ben Vargas <ben@vargas.com> Co-authored-by: neno-is-ooo <204701868+neno-is-ooo@users.noreply.github.com> Co-authored-by: Claude <noreply@anthropic.com> Co-authored-by: Joe Danziger <joe@ticc.net> Co-authored-by: Ben Vargas <ben@example.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Parthy <52548018+mm-parthy@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* chore: add coderabbit configuration * chore: fix coderabbit config * chore: improve coderabbit config * chore: more coderabbit reviews * chore: remove all defaults
* fix: prevent CLAUDE.md overwrite by using imports (eyaltoledano#949) * fix: prevent CLAUDE.md overwrite by using imports - Copy Task Master instructions to .taskmaster/CLAUDE.md - Add import section to user's CLAUDE.md instead of overwriting - Preserve existing user content - Clean removal of Task Master content on uninstall Closes eyaltoledano#929 * chore: add changeset for Claude import fix * fix: task master (tm) custom slash commands w/ proper syntax (eyaltoledano#968) * feat: add task master (tm) custom slash commands Add comprehensive task management system integration via custom slash commands. Includes commands for: - Project initialization and setup - Task parsing from PRD documents - Task creation, update, and removal - Subtask management - Dependency tracking and validation - Complexity analysis and task expansion - Project status and reporting - Workflow automation This provides a complete task management workflow directly within Claude Code. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> * chore: add changeset --------- Co-authored-by: neno-is-ooo <204701868+neno-is-ooo@users.noreply.github.com> Co-authored-by: Claude <noreply@anthropic.com> * chore: create extension scaffolding (eyaltoledano#989) * chore: create extension scaffolding * chore: fix workspace for changeset * chore: fix package-lock * feat(profiles): Add MCP configuration to Claude Code rules (eyaltoledano#980) * add .mcp.json with claude profile * add changeset * update changeset * update test * fix: show command no longer requires complexity report to exist (eyaltoledano#979) Co-authored-by: Ben Vargas <ben@example.com> * feat: complete Groq provider integration and add Kimi K2 model (eyaltoledano#978) * feat: complete Groq provider integration and add Kimi K2 model - Add missing getRequiredApiKeyName() method to GroqProvider class - Register GroqProvider in ai-services-unified.js PROVIDERS object - Add Groq API key handling to config-manager.js (isApiKeySet and getMcpApiKeyStatus) - Add GROQ_API_KEY to env.example with format hint - Add moonshotai/kimi-k2-instruct model to Groq provider ($1/$3 per 1M tokens, 16k max) - Fix import sorting for linting compliance - Add GroqProvider mock to ai-services-unified tests Fixes missing implementation pieces that prevented Groq provider from working. * chore: improve changeset --------- Co-authored-by: Ben Vargas <ben@example.com> Co-authored-by: Ralph Khreish <35776126+Crunchyman-ralph@users.noreply.github.com> * docs: Auto-update and format models.md * feat: Add Amp rule profile with AGENT.md and MCP config (eyaltoledano#973) * Amp profile + tests * generatlize to Agent instead of Claude Code to support any agent * add changeset * unnecessary tab formatting * fix exports * fix formatting * feat: Add Zed editor rule profile with agent rules and MCP config (eyaltoledano#974) * zed profile * add changeset * update changeset * fix: Add missing API keys to .env.example and README.md (eyaltoledano#972) * add OLLAMA_API_KEY * add missing API keys * add changeset * update keys and fix OpenAI comment * chore: create extension scaffolding (eyaltoledano#989) * chore: create extension scaffolding * chore: fix workspace for changeset * chore: fix package-lock * feat(profiles): Add MCP configuration to Claude Code rules (eyaltoledano#980) * add .mcp.json with claude profile * add changeset * update changeset * update test * fix: show command no longer requires complexity report to exist (eyaltoledano#979) Co-authored-by: Ben Vargas <ben@example.com> * feat: complete Groq provider integration and add Kimi K2 model (eyaltoledano#978) * feat: complete Groq provider integration and add Kimi K2 model - Add missing getRequiredApiKeyName() method to GroqProvider class - Register GroqProvider in ai-services-unified.js PROVIDERS object - Add Groq API key handling to config-manager.js (isApiKeySet and getMcpApiKeyStatus) - Add GROQ_API_KEY to env.example with format hint - Add moonshotai/kimi-k2-instruct model to Groq provider ($1/$3 per 1M tokens, 16k max) - Fix import sorting for linting compliance - Add GroqProvider mock to ai-services-unified tests Fixes missing implementation pieces that prevented Groq provider from working. * chore: improve changeset --------- Co-authored-by: Ben Vargas <ben@example.com> Co-authored-by: Ralph Khreish <35776126+Crunchyman-ralph@users.noreply.github.com> * docs: Auto-update and format models.md * feat: Add Amp rule profile with AGENT.md and MCP config (eyaltoledano#973) * Amp profile + tests * generatlize to Agent instead of Claude Code to support any agent * add changeset * unnecessary tab formatting * fix exports * fix formatting * feat: Add Zed editor rule profile with agent rules and MCP config (eyaltoledano#974) * zed profile * add changeset * update changeset --------- Co-authored-by: Ralph Khreish <35776126+Crunchyman-ralph@users.noreply.github.com> Co-authored-by: Ben Vargas <ben@vargas.com> Co-authored-by: Ben Vargas <ben@example.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * feat: Add OpenCode rule profile with AGENTS.md and MCP config (eyaltoledano#970) * add opencode to profile lists * add opencode profile / modify mcp config after add * add changeset * not necessary; main config being updated * add issue link * add/fix tests * fix url and docsUrl * update test for new urls * fix formatting * update/fix tests * chore: add coderabbit configuration (eyaltoledano#992) * chore: add coderabbit configuration * chore: fix coderabbit config * chore: improve coderabbit config * chore: more coderabbit reviews * chore: remove all defaults * docs: Update MCP server name for consistency and use 'Add to Cursor' button (eyaltoledano#995) * update MCP server name to task-master-ai for consistency * add changeset * update cursor link & switch to https * switch back to Add to Cursor button (https link) * update changeset * update changeset * update changeset * update changeset * use GitHub markdown format * fix(ai-validation): comprehensive fixes for AI response validation issues (eyaltoledano#1000) * fix(ai-validation): comprehensive fixes for AI response validation issues - Fix update command validation when AI omits subtasks/status/dependencies - Fix add-task command when AI returns non-string details field - Fix update-task command when AI subtasks miss required fields - Add preprocessing to ensure proper field types before validation - Prevent split() errors on non-string fields - Set proper defaults for missing required fields * chore: run format * chore: implement coderabbit suggestions * feat: add kiro profile (eyaltoledano#1001) * feat: add kiro profile * chore: fix format * chore: implement requested changes * chore: fix CI * refactor: remove unused resource and resource template initialization (eyaltoledano#1002) * refactor: remove unused resource and resource template initialization * chore: implement requested changes * fix(core): Implement Boundary-First Tag Resolution (eyaltoledano#943) * refactor(context): Standardize tag and projectRoot handling across all task tools This commit unifies context management by adopting a boundary-first resolution strategy. All task-scoped tools now resolve `tag` and `projectRoot` at their entry point and forward these values to the underlying direct functions. This approach centralizes context logic, ensuring consistent behavior and enhanced flexibility in multi-tag environments. * fix(tag): Clean up tag handling in task functions and sync process This commit refines the handling of the `tag` parameter across multiple functions, ensuring consistent context management. The `tag` is now passed more efficiently in `listTasksDirect`, `setTaskStatusDirect`, and `syncTasksToReadme`, improving clarity and reducing redundancy. Additionally, a TODO comment has been added in `sync-readme.js` to address future tag support enhancements. * feat(tag): Implement Boundary-First Tag Resolution for consistent tag handling This commit introduces Boundary-First Tag Resolution in the task manager, ensuring consistent and deterministic tag handling across CLI and MCP. This change resolves potential race conditions and improves the reliability of tag-specific operations. Additionally, the `expandTask` function has been updated to use the resolved tag when writing JSON, enhancing data integrity during task updates. * chore(biome): formatting * fix(expand-task): Update writeJSON call to use tag instead of resolvedTag * fix(commands): Enhance complexity report path resolution and task initialization `resolveComplexityReportPath` function to streamline output path generation based on tag context and user-defined output. - Improved clarity and maintainability of command handling by centralizing path resolution logic. * Fix: unknown currentTag * fix(task-manager): Update generateTaskFiles calls to include tag and projectRoot parameters This commit modifies the `moveTask` and `updateSubtaskById` functions to pass the `tag` and `projectRoot` parameters to the `generateTaskFiles` function. This ensures that task files are generated with the correct context when requested, enhancing consistency in task management operations. * fix(commands): Refactor tag handling and complexity report path resolution This commit updates the `registerCommands` function to utilize `taskMaster.getCurrentTag()` for consistent tag retrieval across command actions. It also enhances the initialization of `TaskMaster` by passing the tag directly, improving clarity and maintainability. The complexity report path resolution is streamlined to ensure correct file naming based on the current tag context. * fix(task-master): Update complexity report path expectations in tests This commit modifies the `initTaskMaster` test to expect a valid string for the complexity report path, ensuring it matches the expected file naming convention. This change enhances test reliability by verifying the correct output format when the path is generated. * fix(set-task-status): Enhance logging and tag resolution in task status updates This commit improves the logging output in the `registerSetTaskStatusTool` function to include the tag context when setting task statuses. It also updates the tag handling by resolving the tag using the `resolveTag` utility, ensuring that the correct tag is used when updating task statuses. Additionally, the `setTaskStatus` function is modified to remove the tag parameter from the `readJSON` and `writeJSON` calls, streamlining the data handling process. * fix(commands, expand-task, task-manager): Add complexity report option and enhance path handling This commit introduces a new `--complexity-report` option in the `registerCommands` function, allowing users to specify a custom path for the complexity report. The `expandTask` function is updated to accept the `complexityReportPath` from the context, ensuring it is utilized correctly during task expansion. Additionally, the `setTaskStatus` function now includes the `tag` parameter in the `readJSON` and `writeJSON` calls, improving task status updates with proper context. The `initTaskMaster` function is also modified to create parent directories for output paths, enhancing file handling robustness. * fix(expand-task): Add complexityReportPath to context for task expansion tests This commit updates the test for the `expandTask` function by adding the `complexityReportPath` to the context object. This change ensures that the complexity report path is correctly utilized in the test, aligning with recent enhancements to complexity report handling in the task manager. * chore: implement suggested changes * fix(parse-prd): Clarify tag parameter description for task organization Updated the documentation for the `tag` parameter in the `parse-prd.js` file to provide a clearer context on its purpose for organizing tasks into separate task lists. * Fix Inconsistent tag resolution pattern. * fix: Enhance complexity report path handling with tag support This commit updates various functions to incorporate the `tag` parameter when resolving complexity report paths. The `expandTaskDirect`, `resolveComplexityReportPath`, and related tools now utilize the current tag context, improving consistency in task management. Additionally, the complexity report path is now correctly passed through the context in the `expand-task` and `set-task-status` tools, ensuring accurate report retrieval based on the active tag. * Updated the JSDoc for the `tag` parameter in the `show-task.js` file. * Remove redundant comment on tag parameter in readJSON call * Remove unused import for getTagAwareFilePath * Add missed complexityReportPath to args for task expansion * fix(tests): Enhance research tests with tag-aware functionality This commit updates the `research.test.js` file to improve the testing of the `performResearch` function by incorporating tag-aware functionality. Key changes include mocking the `findProjectRoot` to return a valid path, enhancing the `ContextGatherer` and `FuzzyTaskSearch` mocks, and adding comprehensive tests for tag parameter handling in various scenarios. The tests now cover passing different tag values, ensuring correct behavior when tags are provided, undefined, or null, and validating the integration of tags in task discovery and context gathering processes. * Remove unused import for * fix: Refactor complexity report path handling and improve argument destructuring This commit enhances the `expandTaskDirect` function by improving the destructuring of arguments for better readability. It also updates the `analyze.js` and `analyze-task-complexity.js` files to utilize the new `resolveComplexityReportOutputPath` function, ensuring tag-aware resolution of output paths. Additionally, logging has been added to provide clarity on the report path being used. * test: Add complexity report tag isolation tests and improve path handling This commit introduces a new test file for complexity report tag isolation, ensuring that different tags maintain separate complexity reports. It enhances the existing tests in `analyze-task-complexity.test.js` by updating expectations to use `expect.stringContaining` for file paths, improving robustness against path changes. The new tests cover various scenarios, including path resolution and report generation for both master and feature tags, ensuring no cross-tag contamination occurs. * Update scripts/modules/task-manager/list-tasks.js Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update scripts/modules/task-manager/list-tasks.js Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * test(complexity-report): Fix tag slugification in filename expectations - Update mocks to use slugifyTagForFilePath for cross-platform compatibility - Replace raw tag values with slugified versions in expected filenames - Fix test expecting 'feature/user-auth-v2' to expect 'feature-user-auth-v2' - Align test with actual filename generation logic that sanitizes special chars --------- Co-authored-by: Ralph Khreish <35776126+Crunchyman-ralph@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix: Update VS Code profile with MCP config transformation (eyaltoledano#971) * remove dash in server name * add OLLAMA_API_KEY to VS Code MCP instructions * transform vscode mcp to correct format * add changeset * switch back to task-master-ai * use task-master-ai * Batch fixes before release (eyaltoledano#1011) * fix: improve projectRoot * fix: improve task-master lang command * feat: add documentation to the readme so more people can access it * fix: expand command subtask dependency validation * fix: update command more reliable with perplexity and other models * chore: fix CI * chore: implement requested changes * chore: fix CI * chore: fix changeset release for extension package (eyaltoledano#1012) * chore: fix changeset release for extension package * chore: fix CI * chore: rc version bump * chore: adjust kimi k2 max tokens (eyaltoledano#1014) * docs: Auto-update and format models.md --------- Co-authored-by: Ben Vargas <ben@vargas.com> Co-authored-by: neno-is-ooo <204701868+neno-is-ooo@users.noreply.github.com> Co-authored-by: Claude <noreply@anthropic.com> Co-authored-by: Joe Danziger <joe@ticc.net> Co-authored-by: Ben Vargas <ben@example.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Parthy <52548018+mm-parthy@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Summary by CodeRabbit