Files
claude-task-master/.changeset
Oren Me b53065713c feat: add support for MCP Sampling as AI provider (#863)
* feat: support MCP sampling

* support provider registry

* use standard config options for MCP provider

* update fastmcp to support passing params to requestSampling

* move key name definition to base provider

* moved check for required api key to provider class

* remove unused code

* more cleanup

* more cleanup

* refactor provider

* remove not needed files

* more cleanup

* more cleanup

* more cleanup

* update docs

* fix tests

* add tests

* format fix

* clean files

* merge fixes

* format fix

* feat: add support for MCP Sampling as AI provider

* initial mcp ai sdk

* fix references to old provider

* update models

* lint

* fix gemini-cli conflicts

* ran format

* Update src/provider-registry/index.js

Co-authored-by: Ralph Khreish <35776126+Crunchyman-ralph@users.noreply.github.com>

* fix circular dependency

Circular Dependency Issue  FIXED
Root Cause: BaseAIProvider was importing from index.js, which includes commands.js and other modules that eventually import back to AI providers
Solution: Changed imports to use direct paths to avoid circular dependencies:
Updated base-provider.js to import log directly from utils.js
Updated gemini-cli.js to import log directly from utils.js
Result: Fixed 11 failing tests in mcp-provider.test.js

* fix gemini test

* fix(claude-code): recover from CLI JSON truncation bug (#913) (#920)

Gracefully handle SyntaxError thrown by @anthropic-ai/claude-code when the CLI truncates large JSON outputs (4–16 kB cut-offs).\n\nKey points:\n• Detect JSON parse error + existing buffered text in both doGenerate() and doStream() code paths.\n• Convert the failure into a recoverable 'truncated' finish state and push a provider-warning.\n• Allows Task Master to continue parsing long PRDs / expand-task operations instead of crashing.\n\nA patch changeset (.changeset/claude-code-json-truncation.md) is included for the next release.\n\nRef: eyaltoledano/claude-task-master#913

* docs: fix gemini-cli authentication documentation (#923)

Remove erroneous 'gemini auth login' command references and replace with correct 'gemini' command authentication flow. Update documentation to reflect proper OAuth setup process via the gemini CLI interactive interface.

* fix tests

* fix: update ai-sdk-provider-gemini-cli to 0.0.4 for improved authentication (#932)

- Fixed authentication compatibility issues with Google auth
- Added support for 'api-key' auth type alongside 'gemini-api-key'
- Resolved "Unsupported authType: undefined" runtime errors
- Updated @google/gemini-cli-core dependency to 0.1.9
- Improved documentation and removed invalid auth references
- Maintained backward compatibility while enhancing type validation

* call logging directly

Need to patch upstream fastmcp to allow easier access and bootstrap the TM mcp logger to use the fastmcp logger which today is only exposed in the tools handler

* fix tests

* removing logs until we figure out how to pass mcp logger

* format

* fix tests

* format

* clean up

* cleanup

* readme fix

---------

Co-authored-by: Oren Melamed <oren.m@gloat.com>
Co-authored-by: Ralph Khreish <35776126+Crunchyman-ralph@users.noreply.github.com>
Co-authored-by: Ben Vargas <ben@vargas.com>
2025-07-09 10:54:38 +02:00
..
2025-03-29 09:29:50 +01:00
2025-03-28 20:38:53 +01:00

Changesets

This folder has been automatically generated by @changesets/cli, a build tool that works with multi-package repos or single-package repos to help version and publish code. Full documentation is available in the Changesets repository.

What are Changesets?

Changesets are a way to track changes to packages in your repository. Each changeset:

  • Describes the changes you've made
  • Specifies the type of version bump needed (patch, minor, or major)
  • Connects these changes with release notes
  • Automates the versioning and publishing process

How to Use Changesets in Task Master

2. Making Changes

  1. Create a new branch for your changes
  2. Make your code changes
  3. Write tests and ensure all tests pass

3. Creating a Changeset

After making changes, create a changeset by running:

npx changeset

This will:

  • Walk you through a CLI to describe your changes
  • Ask you to select impact level (patch, minor, major)
  • Create a markdown file in the .changeset directory

4. Impact Level Guidelines

When choosing the impact level for your changes:

  • Patch: Bug fixes and minor changes that don't affect how users interact with the system
    • Example: Fixing a typo in output text, optimizing code without changing behavior
  • Minor: New features or enhancements that don't break existing functionality
    • Example: Adding a new flag to an existing command, adding new task metadata fields
  • Major: Breaking changes that require users to update their usage
    • Example: Renaming a command, changing the format of the tasks.json file

5. Writing Good Changeset Descriptions

Your changeset description should:

  • Be written for end-users, not developers
  • Clearly explain what changed and why
  • Include any migration steps or backward compatibility notes
  • Reference related issues or pull requests with #issue-number

Examples:

# Good

Added new `--research` flag to the `expand` command that uses Perplexity AI
to provide research-backed task expansions. Requires PERPLEXITY_API_KEY
environment variable.

# Not Good

Fixed stuff and added new flag

6. Committing Your Changes

Commit both your code changes and the generated changeset file:

git add .
git commit -m "Add feature X with changeset"
git push

7. Pull Request Process

  1. Open a pull request
  2. Ensure CI passes
  3. Await code review
  4. Once approved and merged, your changeset will be used during the next release

Release Process (for Maintainers)

When it's time to make a release:

  1. Ensure all desired changesets are merged
  2. Run npx changeset version to update package versions and changelog
  3. Review and commit the changes
  4. Run npm publish to publish to npm

This can be automated through Github Actions

Common Issues and Solutions

  • Merge Conflicts in Changeset Files: Resolve just like any other merge conflict
  • Multiple Changes in One PR: Create multiple changesets if changes affect different areas
  • Accidentally Committed Without Changeset: Create the changeset after the fact and commit it separately

Additional Resources