Skip to content

v0.25.14

Choose a tag to compare

@yuanhao yuanhao released this 25 Oct 19:09
· 45 commits to main since this release
26938f3

Tool sources can change mid-run

ToolSource gains generation() -> u64, which defaults to 0, so existing sources are unchanged. A source whose generation moved is asked again before the run's next model request, once every tool call of the turn has returned. Its new tools are offered from that request, with the usual collision rules.

MCP notifications/tools/list_changed

New mcp::McpToolSource: an MCP server's tools, listed at the start of each run and again mid-run whenever the server announces a new list.

  • The stdio and HTTP transports record the notification while a call is being answered.
  • A custom McpTransport opts in through report_notifications(ServerNotifications) -> bool.
  • McpClient::tools_list_changes() and reports_notifications() are new.
  • A listing that fails keeps the last list that succeeded.
  • with_mcp_server_* still list the tools once.

Full details: CHANGELOG.md (#375).