Skip to content

ci(changesets): version packages#996

Merged
omeraplak merged 1 commit into
mainfrom
changeset-release/main
Jan 28, 2026
Merged

ci(changesets): version packages#996
omeraplak merged 1 commit into
mainfrom
changeset-release/main

Conversation

@voltagent-bot

@voltagent-bot voltagent-bot commented Jan 28, 2026

Copy link
Copy Markdown
Member

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

Releases

@voltagent/core@2.3.0

Minor Changes

  • #991 e0b6693 Thanks @omeraplak! - feat: replace tool routers with searchTools + callTool tool routing

    Tool routing now exposes two system tools instead of router tools. The model must search first, then call the selected tool with schema-compliant args. createToolRouter and toolRouting.routers are removed.

    Migration guide

    1. Remove router tools and toolRouting.routers

    Before:

    import { Agent, createToolRouter } from "@voltagent/core";
    
    const router = createToolRouter({
      name: "tool_router",
      description: "Route requests to tools",
      embedding: "openai/text-embedding-3-small",
    });
    
    const agent = new Agent({
      name: "Tool Routing Agent",
      instructions: "Use tool_router when you need a tool.",
      tools: [router],
      toolRouting: {
        routers: [router],
        pool: [
          /* tools */
        ],
        topK: 2,
      },
    });

    After:

    import { Agent } from "@voltagent/core";
    
    const agent = new Agent({
      name: "Tool Routing Agent",
      instructions:
        "When you need a tool, call searchTools with the user request, then call callTool with the exact tool name and schema-compliant arguments.",
      toolRouting: {
        embedding: "openai/text-embedding-3-small",
        pool: [
          /* tools */
        ],
        topK: 2,
      },
    });
    1. Optional: disable search enforcement if needed
    const agent = new Agent({
      name: "Relaxed Agent",
      instructions: "Use searchTools before callTool when possible.",
      toolRouting: {
        pool: [
          /* tools */
        ],
        enforceSearchBeforeCall: false,
      },
    });

Summary by CodeRabbit

Release Notes

  • New Features

    • Introduced two-step tool routing flow for improved control: search available tools first, then invoke the specific tool with precise parameters.
    • Added optional setting to customize search enforcement behavior in tool routing configuration.
  • Breaking Changes

    • Tool routing mechanism has been redesigned. Migration required to adopt the new search-then-call pattern.
    • Removed legacy tool router exports and configuration options.

✏️ Tip: You can customize this high-level summary in your review settings.

@ghost

This comment has been minimized.

@coderabbitai

coderabbitai Bot commented Jan 28, 2026

Copy link
Copy Markdown
Contributor
📝 Walkthrough

Walkthrough

The PR bumps @voltagent/core from 2.2.2 to 2.3.0 across 57 example projects. The core package removes router-based tool routing APIs (createToolRouter, toolRouting) and replaces them with a two-step searchTools/callTool flow in a minor version release.

Changes

Cohort / File(s) Summary
Changeset Deletion
\.changeset/rare-papayas-bake\.md
Deleted migration guide documenting removal of tool router mechanism and transition to two-step searchTools/callTool flow
Core Package Updates
packages/core/package\.json, packages/core/CHANGELOG\.md
Version bumped 2.2.2 → 2.3.0; CHANGELOG documents breaking changes: removes createToolRouter export and toolRouting Agent option, replaces with searchTools + callTool workflow, adds optional enforceSearchBeforeCall setting
Example Dependencies
examples/*/package\.json (57 files)
Homogeneous version bump: @voltagent/core ^2.2.2 → ^2.3.0 across all example projects including base, github-repo-analyzer, github-star-stories, next-js-chatbot-starter-template, with-a2a-server, with-agent-tool, with-airtable, with-amazon-bedrock, with-anthropic, with-auth, with-cerbos, with-chroma, with-client-side-tools, with-cloudflare-workers, with-composio-mcp, with-custom-endpoints, with-dynamic-parameters, with-dynamic-prompts, with-feedback, with-google-ai, with-google-drive-mcp/server, with-google-vertex-ai, with-groq-ai, with-guardrails, with-hooks, with-hugging-face-mcp, with-langfuse, with-mcp-elicitation, with-mcp-server, with-mcp, with-memory-rest-api, with-middleware, with-nestjs, with-netlify-functions, with-nextjs-resumable-stream, with-nextjs, with-nuxt, with-offline-evals, with-ollama, with-peaka-mcp, with-pinecone, with-planagents, with-playwright, with-postgres, with-qdrant, with-rag-chatbot, with-recipe-generator, with-research-assistant, with-resumable-streams, with-retries-fallback, with-retrieval, with-slack, with-subagents, with-supabase, with-tavily-search, with-thinking-tool, with-tool-routing, with-tools, with-turso, with-vector-search, with-vercel-ai, with-viteval, with-voice-elevenlabs, with-voice-openai, with-voice-xsai, with-voltagent-actions, with-voltagent-exporter, with-voltagent-managed-memory, with-voltops-resumable-streams, with-voltops-retrieval, with-whatsapp, with-workflow, with-working-memory, with-youtube-to-blog, with-zapier-mcp

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

Possibly related PRs

Poem

🐰 Version two-point-three hops into view,
Old routers retire, a fresh start anew—
Search then call, a two-step ballet,
Tool routing evolved in a better way! 🎉

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The PR title 'ci(changesets): version packages' accurately describes the main change: using Changesets tooling to version and release packages.
Description check ✅ Passed The PR description is complete and follows the Changesets release pattern with detailed release notes, migration guide, code examples, and configuration options.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 128 files

Note: This PR contains a large number of files. cubic only reviews up to 75 files per PR, so some files may not have been reviewed.

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jan 28, 2026

Copy link
Copy Markdown

Deploying voltagent with  Cloudflare Pages  Cloudflare Pages

Latest commit: 2f1d882
Status: ✅  Deploy successful!
Preview URL: https://01f67516.voltagent.pages.dev
Branch Preview URL: https://changeset-release-main.voltagent.pages.dev

View logs

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 4

🤖 Fix all issues with AI agents
In `@examples/with-copilotkit/server/CHANGELOG.md`:
- Around line 3-11: Update the 0.0.4 CHANGELOG.md entry to mention the breaking
changes in `@voltagent/core`@3.0.0 by adding a brief migration note or link to the
migration guide: reference that createToolRouter has been replaced by the new
system tools searchTools and callTool and either summarize the required change
or add a URL/section pointing to the full migration steps; ensure the entry
mentions the package (`@voltagent/core`@3.0.0) and the removed/added symbols
(createToolRouter → searchTools, callTool) so users know what to update when
upgrading.

In `@examples/with-google-vertex-ai/package.json`:
- Line 8: Update the "@voltagent/logger" dependency in package.json from a caret
range to the exact version required by core@^3.0.0 by changing
"@voltagent/logger": "^2.0.2" to "@voltagent/logger": "2.0.2" so the example
matches the peer dependency constraint declared by core; locate the dependency
entry for "@voltagent/logger" in the examples/with-google-vertex-ai package.json
and replace the version specifier accordingly.

In `@packages/ag-ui/package.json`:
- Line 13: The peerDependency entry for "@voltagent/core" in package.json is
inconsistent (currently ">=1.0.0"); update the peerDependencies object to use
the same semver as devDependencies and the rest of the monorepo by changing the
"@voltagent/core" value to "^3.0.0" so the package's peer dependency aligns with
the new major version; locate the "@voltagent/core" key in package.json's
"peerDependencies" and replace its value accordingly.

In `@packages/cli/CHANGELOG.md`:
- Around line 3-9: The changelog header "Updated dependencies []:" is malformed;
open CHANGELOG.md and either remove the empty brackets or replace them with the
appropriate changeset/commit reference so the header reads e.g. "Updated
dependencies:" or "Updated dependencies [<changeset>]:", updating the exact line
containing "Updated dependencies []:" to maintain consistent changelog
formatting.
🧹 Nitpick comments (3)
packages/supabase/CHANGELOG.md (1)

3-9: Consider clarifying the major version bump and its impact.

The version 3.0.0 (major bump) is listed with only "Patch Changes," which creates ambiguity about whether this release contains breaking changes for @voltagent/supabase users. While the dependency update to @voltagent/core@3.0.0 is documented, it's unclear whether the breaking changes in core (tool routing modifications) affect this package's API surface.

Historical major releases (2.0.0, 1.0.0) included "Major Changes" sections with migration guidance. Consider either:

  1. Adding a "Major Changes" section if users are impacted by the core@3.0.0 breaking changes
  2. Adding a note explaining this is a version alignment bump with no breaking changes to the supabase package API itself

This would help users understand what to expect when upgrading.

examples/with-live-evals/CHANGELOG.md (1)

3-11: Consider adding a note about the major version bump in dependencies.

While the changelog entry is accurate, users may not immediately recognize that the dependency updates from 2.x to 3.0.0 include breaking changes in @voltagent/core. The previous major version bump (0.0.5) included a detailed migration summary and guide link.

Consider adding a brief note referencing the core package's breaking changes or linking to migration documentation, similar to the pattern used in version 0.0.5 (lines 16-31).

📝 Example enhancement
 ## 0.0.6
 
 ### Patch Changes
 
-- Updated dependencies [[`e0b6693`](https://github.com/VoltAgent/voltagent/commit/e0b6693dcdd18821735607cbd10ac1fa250c552e)]:
+- Updated dependencies to VoltAgent 3.0.0. Note: `@voltagent/core`@3.0.0 introduces breaking changes to tool routing APIs. See the [migration guide](https://voltagent.dev/docs/getting-started/migration-guide/) for details. [[`e0b6693`](https://github.com/VoltAgent/voltagent/commit/e0b6693dcdd18821735607cbd10ac1fa250c552e)]:
   - `@voltagent/core`@3.0.0
   - `@voltagent/scorers`@3.0.0
   - `@voltagent/server-hono`@3.0.0
packages/core/CHANGELOG.md (1)

9-55: Clarify whether searchTools / callTool are auto-injected or require explicit registration.

The migration example no longer lists tools, which may leave users unsure if they must add these system tools manually. A one-line clarification in the changelog would prevent misconfiguration.

✍️ Suggested clarification
-  Tool routing now exposes two system tools instead of router tools. The model must search first, then call the selected tool with schema-compliant args. `createToolRouter` and `toolRouting.routers` are removed.
+  Tool routing now exposes two system tools instead of router tools. The model must search first, then call the selected tool with schema-compliant args. `createToolRouter` and `toolRouting.routers` are removed. (Clarify whether `searchTools` / `callTool` are auto-injected or need to be registered explicitly.)

Comment on lines +3 to +11
## 0.0.4

### Patch Changes

- Updated dependencies [[`e0b6693`](https://github.com/VoltAgent/voltagent/commit/e0b6693dcdd18821735607cbd10ac1fa250c552e)]:
- @voltagent/core@3.0.0
- @voltagent/server-hono@3.0.0
- @voltagent/cli@0.1.22

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Consider adding migration context or reference for the 3.0.0 breaking changes.

The 0.0.4 entry documents dependency updates to @voltagent/core@3.0.0, which introduces breaking changes to tool routing (replacing createToolRouter with searchTools and callTool system tools). Unlike the detailed migration guide provided in the 0.0.3 entry for the 2.x upgrade, this entry lacks context about the breaking changes.

Consider adding a brief note about the breaking changes or a reference to the migration guide to help users upgrading this example.

📝 Suggested enhancement
 ## 0.0.4
 
 ### Patch Changes
 
 - Updated dependencies [[`e0b6693`](https://github.com/VoltAgent/voltagent/commit/e0b6693dcdd18821735607cbd10ac1fa250c552e)]:
   - `@voltagent/core`@3.0.0
   - `@voltagent/server-hono`@3.0.0
   - `@voltagent/cli`@0.1.22
+
+  VoltAgent 3.0.0 introduces breaking changes to tool routing. See the [`@voltagent/core` changelog](../../packages/voltagent/CHANGELOG.md) for migration details.
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
## 0.0.4
### Patch Changes
- Updated dependencies [[`e0b6693`](https://github.com/VoltAgent/voltagent/commit/e0b6693dcdd18821735607cbd10ac1fa250c552e)]:
- @voltagent/core@3.0.0
- @voltagent/server-hono@3.0.0
- @voltagent/cli@0.1.22
## 0.0.4
### Patch Changes
- Updated dependencies [[`e0b6693`](https://github.com/VoltAgent/voltagent/commit/e0b6693dcdd18821735607cbd10ac1fa250c552e)]:
- `@voltagent/core`@3.0.0
- `@voltagent/server-hono`@3.0.0
- `@voltagent/cli`@0.1.22
VoltAgent 3.0.0 introduces breaking changes to tool routing. See the [`@voltagent/core` changelog](../../packages/voltagent/CHANGELOG.md) for migration details.
🤖 Prompt for AI Agents
In `@examples/with-copilotkit/server/CHANGELOG.md` around lines 3 - 11, Update the
0.0.4 CHANGELOG.md entry to mention the breaking changes in
`@voltagent/core`@3.0.0 by adding a brief migration note or link to the migration
guide: reference that createToolRouter has been replaced by the new system tools
searchTools and callTool and either summarize the required change or add a
URL/section pointing to the full migration steps; ensure the entry mentions the
package (`@voltagent/core`@3.0.0) and the removed/added symbols (createToolRouter
→ searchTools, callTool) so users know what to update when upgrading.

"@voltagent/cli": "^0.1.22",
"@voltagent/core": "^3.0.0",
"@voltagent/libsql": "^3.0.0",
"@voltagent/logger": "^2.0.2",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Find all package.json files and filter for the relevant packages
echo "=== Finding `@voltagent/core` package ==="
fd 'package.json' -x cat {} + | grep -B5 -A5 '"name"\s*:\s*"@voltagent/core"' | head -50

echo ""
echo "=== Finding `@voltagent/logger` package ==="
fd 'package.json' -x cat {} + | grep -B5 -A5 '"name"\s*:\s*"@voltagent/logger"' | head -50

Repository: VoltAgent/voltagent

Length of output: 9068


🏁 Script executed:

#!/bin/bash
# More targeted search - find package.json files with `@voltagent` packages
echo "=== Searching for `@voltagent` packages ==="
rg '"@voltagent/(core|logger)"' --files-with-matches

Repository: VoltAgent/voltagent

Length of output: 30559


🏁 Script executed:

#!/bin/bash
# List all package.json files in the repo to understand structure
echo "=== All package.json files ==="
fd -H 'package.json$' | sort

Repository: VoltAgent/voltagent

Length of output: 4658


🏁 Script executed:

#!/bin/bash
# Read the logger package.json to check peer dependencies
echo "=== packages/logger/package.json ==="
cat packages/logger/package.json

Repository: VoltAgent/voltagent

Length of output: 1351


🏁 Script executed:

#!/bin/bash
# Read the core package.json to check version and peer dependencies
echo "=== packages/core/package.json ==="
cat packages/core/package.json

Repository: VoltAgent/voltagent

Length of output: 3628


Use exact version @voltagent/logger@2.0.2 to match core@^3.0.0 peer dependency constraint.

Core v3.0.0 declares "@voltagent/logger": "2.0.2" as an exact peer dependency (not a range), but the example specifies ^2.0.2. If logger publishes patch or minor releases (2.0.3, 2.1.0), they won't be declared compatible by core@3.0.0. Change to "@voltagent/logger": "2.0.2" to match the peer dependency requirement.

🤖 Prompt for AI Agents
In `@examples/with-google-vertex-ai/package.json` at line 8, Update the
"@voltagent/logger" dependency in package.json from a caret range to the exact
version required by core@^3.0.0 by changing "@voltagent/logger": "^2.0.2" to
"@voltagent/logger": "2.0.2" so the example matches the peer dependency
constraint declared by core; locate the dependency entry for "@voltagent/logger"
in the examples/with-google-vertex-ai package.json and replace the version
specifier accordingly.

Comment thread packages/ag-ui/package.json Outdated
Comment thread packages/cli/CHANGELOG.md Outdated
Comment on lines +3 to +9
## 0.1.22

### Patch Changes

- Updated dependencies []:
- @voltagent/sdk@2.0.3
- @voltagent/evals@3.0.0

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Fix malformed dependency update header.

The empty brackets in “Updated dependencies []:” look like a missing changeset/commit reference. Please populate or remove the brackets for consistent changelog formatting.

🛠️ Suggested fix
-- Updated dependencies []:
+- Updated dependencies:
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
## 0.1.22
### Patch Changes
- Updated dependencies []:
- @voltagent/sdk@2.0.3
- @voltagent/evals@3.0.0
## 0.1.22
### Patch Changes
- Updated dependencies:
- `@voltagent/sdk`@2.0.3
- `@voltagent/evals`@3.0.0
🤖 Prompt for AI Agents
In `@packages/cli/CHANGELOG.md` around lines 3 - 9, The changelog header "Updated
dependencies []:" is malformed; open CHANGELOG.md and either remove the empty
brackets or replace them with the appropriate changeset/commit reference so the
header reads e.g. "Updated dependencies:" or "Updated dependencies
[<changeset>]:", updating the exact line containing "Updated dependencies []:"
to maintain consistent changelog formatting.

@voltagent-bot
voltagent-bot force-pushed the changeset-release/main branch from 47a8fd7 to e85664b Compare January 28, 2026 12:58
@voltagent-bot
voltagent-bot force-pushed the changeset-release/main branch from e85664b to 2f1d882 Compare January 28, 2026 16:20
@omeraplak
omeraplak merged commit 1ac520d into main Jan 28, 2026
22 checks passed
@omeraplak
omeraplak deleted the changeset-release/main branch January 28, 2026 21:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants