Commit graph

6224 commits

Author SHA1 Message Date
Roo Code
2d6e4b4308 chore: trigger CodeQL rerun for PR #9681 2025-11-29 19:36:49 +00:00
Hannes Rudolph
f9eb6d9cf3
feat: add debug buttons to view API and UI history (#9684)
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-11-28 23:18:15 -05:00
Hannes Rudolph
933534896a
feat: add apply_patch native tool (#9663)
Co-authored-by: daniel-lxs <ricciodaniel98@gmail.com>
2025-11-28 23:07:03 -05:00
roomote[bot]
c688a6466e
fix: display install count in millions instead of thousands (#9677)
Co-authored-by: Roo Code <roomote@roocode.com>
2025-11-28 20:36:34 -05:00
Daniel
127ecf6ddd
feat: enable native tool calls for Vertex Gemini models (#9678)
Add supportsNativeTools: true to all Gemini-based models in the Vertex
provider. The VertexHandler extends GeminiHandler which already has full
native tool handling logic implemented.

Models updated:
- gemini-3-pro-preview
- gemini-2.5-flash-preview-05-20:thinking
- gemini-2.5-flash-preview-05-20
- gemini-2.5-flash
- gemini-2.5-flash-preview-04-17:thinking
- gemini-2.5-flash-preview-04-17
- gemini-2.5-pro-preview-03-25
- gemini-2.5-pro-preview-05-06
- gemini-2.5-pro-preview-06-05
- gemini-2.5-pro
- gemini-2.5-pro-exp-03-25
- gemini-2.0-pro-exp-02-05
- gemini-2.0-flash-001
- gemini-2.0-flash-lite-001
- gemini-2.0-flash-thinking-exp-01-21
- gemini-1.5-flash-002
- gemini-1.5-pro-002
- gemini-2.5-flash-lite-preview-06-17
2025-11-28 13:48:55 -05:00
Daniel
59ee1c9d04
feat: add native tools support for OpenAI-compatible providers (#9676)
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-11-28 11:59:32 -05:00
Daniel
5d020991bd
feat(groq): enable native tool support for models that support function calling (#9673)
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-11-28 11:02:34 -05:00
Matt Rubens
53d1f43cc1
Include tool format in environment details (#9661) 2025-11-28 10:50:00 -05:00
Daniel
bd2c50142c
feat: add native tool support to Requesty provider (#9672)
- Import resolveToolProtocol and TOOL_PROTOCOL from @roo-code/types
- Add tools and tool_choice to completion params when native protocol is enabled
- Handle tool_call_partial chunks in streaming response
- Add comprehensive tests for native tool support
2025-11-28 10:38:58 -05:00
Daniel
b111d125c0
feat: enable native tool support for DeepSeek and Doubao models (#9671)
Add supportsNativeTools: true to DeepSeek and Doubao model definitions,
enabling native OpenAI-compatible tool calling for these providers.

Both providers already extend OpenAiHandler which has built-in support
for native tools, so this change is all that's needed to enable the feature.
2025-11-28 10:38:03 -05:00
Hannes Rudolph
e682c039de
feat: add search_and_replace tool for batch text replacements (#9549)
Co-authored-by: daniel-lxs <ricciodaniel98@gmail.com>
2025-11-27 21:19:10 -07:00
Hannes Rudolph
9b5f6392df
Metadata‑driven subtasks (no UI changes): automatic parent resume and single‑open safety (#9090) 2025-11-27 21:18:42 -07:00
Hannes Rudolph
3f0a6971ca
feat(web-evals): add task log viewing, export failed logs, and new run options (#9637)
Co-authored-by: roomote[bot] <219738659+roomote[bot]@users.noreply.github.com>
2025-11-27 21:15:31 -07:00
Daniel
5a6dd58fcb
feat: add model-specific tool customization via excludedTools and includedTools (#9641)
* feat: add model-specific tool customization via excludedTools and includedTools

- Add excludedTools and includedTools to ModelInfo schema
- Implement applyModelToolCustomization helper to filter tools based on model config
- Integrate model tool filtering into filterNativeToolsForMode for native protocol
- Add comprehensive tests for tool customization functionality
- Wire up modelInfo through buildNativeToolsArray and Task.ts

This allows providers to override which native tools are available on a per-model basis via MODEL_DEFAULTS, enabling better control over tool selection for models with specific needs.

* feat: add customTools for opt-in only tools

- Add customTools array to ToolGroupConfig for defining opt-in only tools
- Update getToolsForMode() to exclude customTools from default tool set
- Modify applyModelToolCustomization() to include customTools only via includedTools
- Add tests for customTools functionality
- Add comprehensive documentation with usage examples

customTools allows defining tools that are NOT available by default,
even when a mode includes their group. These tools are only available
when explicitly included via a model's includedTools configuration.

This enables:
- Gradual rollout of experimental tools
- Model-specific specialized capabilities
- Safe experimentation without affecting default tool sets

* Add assertions for customTools tests per review feedback

* test: add tests for including customTools via includedTools

* Update src/core/prompts/tools/__tests__/filter-tools-for-mode.spec.ts

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>

---------

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-11-27 13:45:32 -05:00
github-actions[bot]
b149e69823
Changeset version bump (#9658)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-11-27 13:02:36 -05:00
Matt Rubens
b8f2da10c2
chore: add changeset for v3.34.8 (#9657) 2025-11-27 12:58:36 -05:00
Daniel
d2d311e501
fix: race condition in new_task tool for native protocol (#9655)
The pendingNewTaskToolCallId was being set AFTER startSubtask() returned.
However, startSubtask() contains a 500ms delay during which the subtask
could complete. If the subtask completed during this window, completeSubtask()
would be called before pendingNewTaskToolCallId was set, causing it to
fall through to the XML protocol path and add a text message instead of
a proper tool_result block, breaking the API conversation structure.

This fix moves the pendingNewTaskToolCallId assignment to happen BEFORE
calling startSubtask(), ensuring the ID is set before the subtask starts.
If the subtask creation fails, the pending ID is cleared.
2025-11-27 12:30:55 -05:00
github-actions[bot]
400d0cd183
Changeset version bump (#9654)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-11-27 10:57:38 -05:00
Matt Rubens
1e34d3ded6
chore: add changeset for v3.34.7 (#9651) 2025-11-27 10:54:19 -05:00
Matt Rubens
520d4fb0be
Add 'taking you to cloud' screen after provider welcome (#9652) 2025-11-27 10:44:12 -05:00
Matt Rubens
5b64aa95f6
Support native tools in the anthropic provider (#9644)
Co-authored-by: Roo Code <roomote@roocode.com>
2025-11-27 00:42:54 -05:00
Matt Rubens
254bd23c90
Moonshot native tool call support (#9646) 2025-11-27 00:08:36 -05:00
Matt Rubens
fb94eb3814
Enable native tool calling for z.ai (#9645) 2025-11-27 00:08:09 -05:00
Hannes Rudolph
f5ce56c696
fix(claude-code): disable native tools and temperature support (#9643) 2025-11-26 23:56:24 -05:00
Matt Rubens
b31e755739
Fix openrouter tool calls (#9642) 2025-11-26 22:29:49 -05:00
Daniel
4cdec7db8d
fix: create parent directories early in write_to_file to prevent ENOENT errors (#9640) 2025-11-26 19:53:10 -05:00
Daniel
867a5c79f9
fix: OpenRouter GPT-5 strict schema validation for read_file tool (#9633) 2025-11-26 19:37:36 -05:00
github-actions[bot]
ba09228015
Changeset version bump (#9632)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-11-26 18:10:00 -05:00
Matt Rubens
c1707422d4
Release v3.34.6 (#9631) 2025-11-26 18:05:34 -05:00
Matt Rubens
339a869ea9
Add fine grained tool streaming for OpenRouter Anthropic (#9629) 2025-11-26 18:02:16 -05:00
Hannes Rudolph
fb9c57e1d9
fix: filter non-Anthropic content blocks before sending to Vertex API (#9618) 2025-11-26 17:47:04 -05:00
Daniel
87d646316e
fix: convert line_ranges strings to lineRanges objects in native tool calls (#9627) 2025-11-26 17:34:54 -05:00
Daniel
b1765361dd
fix: defer new_task tool_result until subtask completes for native protocol (#9628) 2025-11-26 17:25:04 -05:00
roomote[bot]
7e17982c40
feat(bedrock): allow global inference selection when cross-region is enabled (#9616)
Co-authored-by: Roo Code <roomote@roocode.com>
2025-11-26 17:13:19 -05:00
Hannes Rudolph
3208f6f6dc
feat: wire MULTIPLE_NATIVE_TOOL_CALLS experiment to OpenAI parallel_tool_calls (#9621) 2025-11-26 17:12:54 -05:00
Hannes Rudolph
240bc0b6b1
feat(mistral): add native tool calling support (#9625) 2025-11-26 17:12:04 -05:00
roomote[bot]
16f36896e2
fix: update default settings for inline terminal and codebase indexing (#9622)
Co-authored-by: Roo Code <roomote@roocode.com>
2025-11-26 17:10:27 -05:00
Daniel
f3889195d7
fix: prevent model cache from persisting empty API responses (#9623) 2025-11-26 16:59:24 -05:00
Daniel
3cd3357808
fix: exclude access_mcp_resource tool when MCP has no resources (#9615) 2025-11-26 15:18:15 -05:00
Daniel
a8a44510d5
fix: restore content undefined check in WriteToFileTool.handlePartial() (#9614) 2025-11-26 11:16:47 -05:00
George Goranov
56c630ca92
Feature/bedrock embeddings support (#9475)
* feat: add AWS Bedrock support for codebase indexing

- Add bedrock as a new EmbedderProvider type
- Add AWS Bedrock embedding model profiles (titan-embed-text models)
- Create BedrockEmbedder class with support for Titan and Cohere models
- Add Bedrock configuration support to config manager and interfaces
- Update service factory to create BedrockEmbedder instances
- Add comprehensive tests for BedrockEmbedder
- Add localization strings for Bedrock support

Closes #8658

* fix: add missing bedrockOptions to loadConfiguration return type

* Fix various issues that the original PR missed.

* Remove debug logs

* Rename AWS Bedrock -> Amazon Bedrock

* Remove some 'as any's

* Revert README changes

* Add translations

* More translations

* Remove leftover code from a debugging session.

* fix: add bedrock to codebaseIndexModelsSchema and update brace-expansion override

- Add bedrock provider to codebaseIndexModelsSchema type definition to fix empty model dropdown in UI
- Update pnpm override for brace-expansion from '>=2.0.2' to '^2.0.2' to resolve ESM/CommonJS compatibility issues

* Improvements to AWS Bedrock embeddings support

- Enhanced bedrock.ts embedder implementation
- Added comprehensive test coverage in bedrock.spec.ts
- Updated config-manager.ts for better Bedrock configuration handling
- Improved service-factory.ts integration
- Updated embeddingModels.ts with Bedrock models
- Enhanced CodeIndexPopover.tsx UI for Bedrock options
- Added auto-populate test for CodeIndexPopover
- Updated pnpm-lock.yaml dependencies

* Restore openrouter config

* Remove debug log

* Fix config-manager.spec.ts unit test.

* Add translations for "optional"

* Revert unnecessary change related to open ia embedder

---------

Co-authored-by: Roo Code <roomote@roocode.com>
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
Co-authored-by: Smartsheet-JB-Brown <jb.brown@smartsheet.com>
2025-11-26 08:58:58 -05:00
github-actions[bot]
3806b3d27d
Changeset version bump (#9604)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-11-26 00:51:15 -05:00
Matt Rubens
8a2d28fc55
chore: add changeset for v3.34.5 (#9603) 2025-11-26 00:46:00 -05:00
Hannes Rudolph
4442397507
feat(web-evals): enhance dashboard with dynamic tool columns and UX improvements (#9592)
Co-authored-by: Roo Code <roomote@roocode.com>
2025-11-26 00:15:29 -05:00
Matt Rubens
3c989d3591
Revert "Add support for Roo Code Cloud as an embeddings provider" (#9602) 2025-11-26 00:08:39 -05:00
Matt Rubens
71e761e21b
Make single file read only apply to xml tools (#9600) 2025-11-26 00:08:00 -05:00
Matt Rubens
0fe55b9403
fix: update API handler when toolProtocol changes (#9599) 2025-11-25 23:54:12 -05:00
roomote[bot]
099ea6dc6a
feat: add Bedrock Opus 4.5 to global inference model list (#9595)
Co-authored-by: Roo Code <roomote@roocode.com>
2025-11-25 22:22:56 -05:00
Daniel
05f35735f0
feat: enable multiple native tool calls per turn with failure guardrails (#9273) 2025-11-25 20:21:13 -05:00
Daniel
f173c9c2dc
feat: set native tools as default for minimax-m2 and claude-haiku-4.5 (#9586) 2025-11-25 16:24:02 -05:00