Commit graph

2890 commits

Author SHA1 Message Date
Roo Code
bfabe5da76 fix: strip XML tags from kimi-k2-thinking model reasoning output
- Added stripXmlTags method to remove XML tags from reasoning content
- Applied XML tag stripping specifically for moonshot/kimi-k2-thinking model
- Added tests to verify XML tags are stripped for kimi model but preserved for others
- Fixes #9172 where XML tags were displayed in thinking prompts
2025-11-11 18:57:22 +00:00
Chris Estreich
6e6341346e
Move auto-approval from ChatView to Task (#9157) 2025-11-10 17:01:50 -08:00
Daniel
cb9abcf955
Add native tool definitions (#9156) 2025-11-10 17:31:05 -05:00
Daniel
e8ac3bf359
Gate XML out when native tool protocol is ON (#9107) 2025-11-10 14:59:15 -05:00
Daniel
4cd5c9022e
fix: prevent command_output ask from blocking in cloud/headless environments (#9152) 2025-11-10 11:47:26 -05:00
Matt Rubens
b09d0a7640
IPC command for sending messages to the current task (#9149) 2025-11-10 11:44:04 -05:00
github-actions[bot]
e98f4b9057
Changeset version bump (#9112)
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-07 23:30:28 -05:00
Daniel
78fc2126d3
fix: prevent context condensing on settings save when provider/model unchanged (#9108)
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-11-07 22:58:02 -05:00
Daniel
fc2147ab4f
fix: prevent crash when streaming chunks have null choices array (#9105) 2025-11-07 13:18:38 -05:00
Daniel
247b06186f
feat: Add comprehensive error logging to Roo Cloud provider (#9098)
feat: add comprehensive error logging to Roo Cloud provider

- Add detailed error logging in handleOpenAIError() to capture error details before transformation
- Enhanced getRooModels() to log HTTP response details on failed requests
- Added error context logging to RooHandler streaming and model loading
- All existing tests passing (48 total)
2025-11-07 08:53:10 -08:00
roomote[bot]
2abdad6d55
fix: respect custom OpenRouter URL for all API operations (#8951)
Co-authored-by: Roo Code <roomote@roocode.com>
2025-11-07 10:35:12 -05:00
github-actions[bot]
47415fa19a
Changeset version bump (#9094)
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-06 23:18:40 -05:00
Daniel
b17760bf57
feat: auto-switch to imported mode with architect fallback (#9003)
Co-authored-by: roomote[bot] <219738659+roomote[bot]@users.noreply.github.com>
Co-authored-by: Seth Miller <sethmillerp@gmail.com>
Co-authored-by: heyseth <sethmillerp@gmail.com>
Co-authored-by: Roo Code <roomote@roocode.com>
2025-11-06 16:40:27 -05:00
roomote[bot]
1ba0150f7a
fix: use system role for OpenAI Compatible provider when streaming is disabled (#8216)
Co-authored-by: Roo Code <roomote@roocode.com>
Co-authored-by: daniel-lxs <ricciodaniel98@gmail.com>
2025-11-06 16:39:20 -05:00
Hannes Rudolph
0fd7023ea7
feat(chat): Improve diff appearance in main chat view (#8932)
Co-authored-by: daniel-lxs <ricciodaniel98@gmail.com>
2025-11-06 16:18:01 -05:00
Daniel
d631aa643c
fix(task): auto-retry on empty assistant response (#9076) (#9083) 2025-11-06 16:15:31 -05:00
roomote[bot]
bf048492fb
feat: add MiniMax-M2-Stable model and enable prompt caching (#9072)
Co-authored-by: Roo Code <roomote@roocode.com>
Co-authored-by: Daniel <57051444+daniel-lxs@users.noreply.github.com>
2025-11-06 12:34:53 -08:00
github-actions[bot]
7320d79c08
Changeset version bump (#9066)
* changeset version bump

* Revise CHANGELOG for version 3.30.2

Updated changelog for version 3.30.2 with new features and fixes.

---------

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-05 23:12:44 -05:00
Hannes Rudolph
65230f1f5c
feat: Global Inference for Bedrock models (#8750) (#8940)
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
Co-authored-by: Roo Code <roomote@roocode.com>
2025-11-05 15:56:19 -05:00
roomote[bot]
413ab1a95c
feat: add Qwen3 embedding models (0.6B and 4B) to OpenRouter support (#9060)
Co-authored-by: Roo Code <roomote@roocode.com>
2025-11-05 15:35:25 -05:00
AJ Juaire
c6a02bb8da
Fix Bedrock user agent to report full SDK details (#9043) 2025-11-05 14:08:58 -05:00
Seth Miller
097bc699ba
fix(checkpoints): resolve incorrect commit location when GIT_DIR set in Dev Containers (#8811) 2025-11-04 22:10:07 -05:00
Hannes Rudolph
ea339738e5
Set Claude Sonnet 4.5 as default for key providers (#8922) 2025-11-04 22:07:24 -05:00
Daniel
e25b4e62d1
fix: eliminate UI flicker during task cancellation (#9037)
* fix: eliminate UI flicker during task cancellation

- Modify ClineProvider.createTaskWithHistoryItem() to detect when rehydrating current task
- Implement in-place task replacement to avoid empty stack state that causes UI flicker
- Add comprehensive unit tests for flicker-free cancel behavior
- Maintain backward compatibility and proper event listener cleanup

Fixes the jarring navigation to home view when cancelling tasks

* fix: ensure proper garbage collection of old task during flicker-free rehydration

- Call abortTask(true) on old task before replacement to stop processes and mark as abandoned
- This ensures proper cleanup and prevents memory leaks during task cancellation
- Add test verification for abortTask cleanup
2025-11-04 21:40:39 -05:00
github-actions[bot]
54745fc234
Changeset version bump (#9034)
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-04 15:39:04 -05:00
Matt Rubens
77971a5e8f
Revert "fix: prevent UI flicker and enable resumption after task cancellation" (#9032) 2025-11-04 15:29:14 -05:00
Daniel
f717863a32
fix: correct OpenRouter Mistral model dimension from 3072 to 1536 (#9028) 2025-11-04 12:29:04 -05:00
github-actions[bot]
8e4b145681
Changeset version bump (#9005)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Chris Estreich <cestreich@gmail.com>
2025-11-03 16:27:21 -08:00
Matt Rubens
65bb672d23
chore: add changeset for v3.30.0 (#9006) 2025-11-03 16:09:23 -08:00
Daniel
58edc71672
fix: prevent UI flicker and enable resumption after task cancellation (#8986) 2025-11-03 15:40:39 -05:00
Daniel
ce88b0272a
feat: add preserveReasoning flag to include reasoning in API history (#8934) 2025-11-03 10:38:39 -05:00
Hannes Rudolph
f7856ef5cc
Terminal settings: Cleanup terminal settings tab and change default terminal to inline (#8342)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-11-03 10:38:09 -05:00
Matt Rubens
5b753f5855
Don't output newline-only reasoning (#8990)
Co-authored-by: Roo Code <roomote@roocode.com>
2025-11-02 23:17:59 -05:00
Matt Rubens
613255c09a
Handle <think> tags in the base OpenAI-compatible provider (#8989) 2025-11-02 22:22:49 -05:00
Matt Rubens
8d98b303b3
Union a hard-coded list of chutes models with the dynamic list (#8988) 2025-11-02 21:47:43 -05:00
roomote[bot]
d863010673
feat: add MiniMax M2 model to Fireworks.ai provider (#8962)
Co-authored-by: Roo Code <roomote@roocode.com>
2025-11-02 21:43:58 -05:00
roomote[bot]
8dc8452123
feat: add GLM-4.6 model to Fireworks provider (#8754)
Co-authored-by: Roo Code <roomote@roocode.com>
2025-11-02 21:41:24 -05:00
David Markey
34f45f1b28
feat: add OpenRouter embedding provider support (#8973)
* feat: add OpenRouter embedding provider support

Implement comprehensive OpenRouter embedding provider support for codebase indexing with the following features:

- New OpenRouterEmbedder class with full API compatibility
- Support for OpenRouter's OpenAI-compatible embedding endpoint
- Rate limiting and retry logic with exponential backoff
- Base64 embedding handling to bypass OpenAI package limitations
- Global rate limit state management across embedder instances
- Configuration updates for API key storage and provider selection
- UI integration for OpenRouter provider settings
- Comprehensive test suite with mocking
- Model dimension support for OpenRouter's embedding models

This adds OpenRouter as the 7th supported embedding provider alongside OpenAI, Ollama, OpenAI-compatible, Gemini, Mistral, and Vercel AI Gateway.

* Add translation key

* Fix mutex double release bug

* Add translations

* Add more translations

* Fix failing tests

* code-index(openrouter): fix HTTP-Referer header to RooCodeInc/Roo-Code; i18n: add and wire OpenRouter Code Index strings; test: assert default headers in embedder

---------

Co-authored-by: daniel-lxs <ricciodaniel98@gmail.com>
2025-11-02 19:12:28 -05:00
roomote[bot]
d0e519de3f
feat: convert Chutes to dynamic/router provider (#8980)
* feat: convert Chutes to dynamic/router provider

- Add chutes to dynamicProviders array in provider-settings
- Add chutes entry to dynamicProviderExtras in api.ts
- Create fetcher function for Chutes models API
- Convert ChutesHandler to extend RouterProvider
- Update tests to work with dynamic provider setup
- Export chutesDefaultModelInfo for RouterProvider constructor

* fix: address security and code quality issues from review

- Fix potential API key leakage in error logging
- Add temperature support check before setting temperature
- Improve code consistency with RouterProvider patterns

* fix: add chutes to routerModels initialization

- Fix TypeScript error in webviewMessageHandler
- Ensure chutes is included in RouterName Record type

* Fixes

* Support reasoning

* Fix tests

* Remove reasoning checkbox

---------

Co-authored-by: Roo Code <roomote@roocode.com>
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-11-02 16:28:33 -05:00
Thibault Jaigu
ca10cba3c4
fix: create new Requesty profile during OAuth (#8699)
Co-authored-by: John Costa <john@requesty.ai>
2025-11-02 01:07:16 -04:00
Daniel
31de103e7d
feat: optimize router model fetching with single-provider filtering (#8956) 2025-11-02 01:04:34 -04:00
Matt Rubens
388d40524d
Capture the reasoning content in base-openai-compatible for GLM 4.6 (#8976) 2025-11-02 01:00:33 -04:00
github-actions[bot]
d7ea6d679e
Changeset version bump (#8968)
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-01 15:36:42 -04:00
roomote[bot]
89d67efc6d
fix: add keyword index for type field to fix Qdrant codebase_search error (#8964)
Co-authored-by: Roo Code <roomote@roocode.com>
2025-11-01 13:20:56 -04:00
Matt Rubens
416fa5727e
Fix cost and token tracking between provider styles (#8954) 2025-10-31 15:14:29 -04:00
github-actions[bot]
4a096e1cb9
Changeset version bump (#8907)
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-10-30 23:22:28 -04:00
roomote[bot]
81d5f63b72
fix: remove search_and_replace tool from codebase (#8892)
Co-authored-by: Roo Code <roomote@roocode.com>
Co-authored-by: daniel-lxs <ricciodaniel98@gmail.com>
Co-authored-by: Hannes Rudolph <hrudolph@gmail.com>
2025-10-30 22:51:29 -04:00
Daniel
c66fed9611
feat: improve @ file search for large projects (#8805)
* feat: improve @ file search for large projects

- Increase default file limit from 5,000 to 10,000 (configurable up to 500,000)
- Respect VSCode search settings (useIgnoreFiles, useGlobalIgnoreFiles, useParentIgnoreFiles)
- Add 'maximumIndexedFilesForFileSearch' configuration setting
- Add tests for new functionality

Conservative default of 10k keeps memory usage low while still providing 2x
improvement. Users with large projects can opt-in to higher limits (up to 500k).

This is a simplified alternative to PR #5723 that solves the same problem
without the complexity of caching. Ripgrep is already fast enough for
10k+ files, and the benefit of caching doesn't justify 2,200+ lines of
additional code and maintenance burden.

Fixes #5721

* fix: add missing translations for maximumIndexedFilesForFileSearch setting

* test: improve file-search tests to verify configuration behavior
2025-10-30 22:16:42 -04:00
roomote[bot]
b284eddf40
fix: prevent infinite loop when canceling during auto-retry (#8902)
* fix: prevent infinite loop when canceling during auto-retry

- Add abort check after backoffAndAnnounce in first-chunk retry logic
- Add abort check after backoffAndAnnounce in mid-stream retry logic
- Properly handle task abortion to break retry loops

Fixes #8901

* docs: add critical comments explaining abort checks

- Document the importance of abort checks after backoff
- Explain how these checks prevent infinite loops
- Add context for future maintainability

---------

Co-authored-by: Roo Code <roomote@roocode.com>
2025-10-30 19:12:30 -04:00
Dicha Zelianivan Arkana
f583be3c30
fix(context): truncate type definition to match max read line (#8509)
Co-authored-by: daniel-lxs <ricciodaniel98@gmail.com>
2025-10-30 16:55:55 -04:00