Commit graph

6253 commits

Author SHA1 Message Date
Matt Rubens
954a6cbb43
chore: add changeset for v3.35.2 (#9737) 2025-12-02 00:34:18 -05:00
Matt Rubens
6f0addfab7
Assume all LiteLLM models support native tools (#9736) 2025-12-02 00:22:48 -05:00
Matt Rubens
700fe42669
Look for a tag in the Roo provider to default the model to native tool calling (#9735) 2025-12-02 00:12:57 -05:00
Matt Rubens
d2b274a9af
Allow models to contain default temperature (#9734) 2025-12-01 23:29:42 -05:00
Chris Estreich
b2b4f6411f
Pass app version to provider (#9730) 2025-12-01 16:04:33 -08:00
github-actions[bot]
ba7340f460
Changeset version bump (#9729)
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-12-01 18:31:54 -05:00
Matt Rubens
e7043e5cea
chore: add changeset for v3.35.1 (#9728) 2025-12-01 18:27:12 -05:00
Chris Estreich
3f4f7c0c41
Better IPC error logging (#9727) 2025-12-01 15:02:34 -08:00
Daniel
edd7cc0986
fix: flush pending tool results before task delegation (#9726)
When tools are called in parallel (e.g., update_todo_list + new_task),
the tool results accumulate in userMessageContent but aren't saved to
API history until all tools complete. When new_task triggers delegation,
the parent is disposed before these pending results are saved, causing
400 errors when the parent resumes (missing tool_result for tool_use).

This fix:
- Adds flushPendingToolResultsToHistory() method in Task.ts that saves
  pending userMessageContent to API history
- Calls this method in delegateParentAndOpenChild() before disposing the
  parent task
- Safe for both native/XML protocols and sequential/parallel execution
  (returns early if there's nothing to flush)
2025-12-01 17:32:54 -05:00
Chris Estreich
9b18014b4b
chore: bump version to v1.89.0 (#9718) 2025-12-01 14:25:48 -08:00
github-actions[bot]
35d4634b80
Changeset version bump (#9725)
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-12-01 16:51:25 -05:00
Matt Rubens
bfb3386785
chore: add changeset for v3.35.0 (#9724) 2025-12-01 16:44:24 -05:00
roomote[bot]
9dac7e7b63
fix: prevent navigation buttons from wrapping on smaller screens (#9721)
Co-authored-by: Roo Code <roomote@roocode.com>
2025-12-01 16:39:28 -05:00
Daniel
ad28e12818
feat: add native tool support for LiteLLM provider (#9719) 2025-12-01 16:35:08 -05:00
Matt Rubens
be7659461a
Support tool calling in native ollama provider (#9696)
Co-authored-by: Roo Code <roomote@roocode.com>
2025-12-01 15:28:01 -05:00
Matt Rubens
faa6c40ac1
Bedrock native tool calling (#9698) 2025-12-01 15:26:34 -05:00
Matt Rubens
8244f70d7b
Default grok code fast to native tools (#9717) 2025-12-01 15:07:05 -05:00
Matt Rubens
b5acebccf5
Add native tool support for vercel ai gateway (#9697)
Co-authored-by: Roo Code <roomote@roocode.com>
2025-12-01 14:52:05 -05:00
Matt Rubens
eb120543e1
Add native tools support to Unbound (#9699)
Co-authored-by: Roo Code <roomote@roocode.com>
2025-12-01 14:50:01 -05:00
Matt Rubens
0a2d1a41e4
Add NTC support for Cerebras (#9692) 2025-12-01 14:49:53 -05:00
Daniel
34c524f78e
feat(chutes): detect native tool support from API supported_features (#9715)
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-12-01 12:57:26 -05:00
Silentflower
bf3e4d8f1f
fix: preserve tool_use blocks in summary for parallel tool calls (#9714)
Co-authored-by: huajiwuyan <huajiwuyan@gmail.com>
2025-12-01 11:17:45 -05:00
Matt Rubens
af7470908d
Remove TabContent wrapper from Modes and MCP (#9712) 2025-12-01 11:06:21 -05:00
Matt Rubens
48d3e4d2e8
Release: v1.88.0 (#9713) 2025-12-01 10:47:24 -05:00
Matt Rubens
75903052ae
Update a couple provider labels (#9711)
Co-authored-by: Roo Code <roomote@roocode.com>
2025-12-01 10:44:12 -05:00
Bruno Bergher
49aad8576e
ux: Toolbar cleanup and settings consolidation (#9710)
Co-authored-by: Roo Code <roomote@roocode.com>
2025-12-01 09:43:15 -05:00
Bruno Bergher
f26d5a479f
ux: Improvements to the new, RCC Provider centric onboarding flow (#9709)
Co-authored-by: roomote[bot] <219738659+roomote[bot]@users.noreply.github.com>
2025-12-01 09:39:39 -05:00
Matt Rubens
4591e960ed
Add native tool calling for deepinfra (#9691) 2025-11-29 20:05:21 -05:00
Matt Rubens
ae29777062
Add Grok 4 Fast and Grok 4.1 Fast, plus xAI native tool calling (#9690)
* Add Grok 4 Fast and Grok 4.1 Fast

* Add native tool calling support
2025-11-29 19:41:42 -05:00
Hannes Rudolph
d2017c80cf
Add web-evals updates and kill run functionality (#9681)
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
Co-authored-by: Roo Code <roomote@roocode.com>
2025-11-29 13:08:56 -07: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