Commit graph

3295 commits

Author SHA1 Message Date
Hannes Rudolph
876862a607 fix(codex): remove unused lastServiceTier property from OpenAiNativeCodexHandler 2026-01-09 19:43:14 -07:00
Hannes Rudolph
7917b419fa Add OAuth file size error messages and update settings localization for Codex
- Added error message for oversized OAuth credential files in multiple languages (German, Spanish, French, Hindi, Indonesian, Italian, Japanese, Korean, Dutch, Polish, Portuguese, Russian, Turkish, Vietnamese, Chinese Simplified, Chinese Traditional).
- Updated settings localization to include OAuth credential path descriptions and related information for Codex in multiple languages.
2026-01-09 19:43:14 -07:00
Hannes Rudolph
ccaed3debf fix(codex): address @daniel-lxs review — i18n settings, auth.json size guard, remove previous_response_id, avoid as-any reasoning mutation 2026-01-09 19:43:14 -07:00
Hannes Rudolph
297956a170 refactor(openai-native-codex): address @daniel-lxs review — remove unused const, strengthen typing for message transform and auth.json parsing, extract helpers for testability 2026-01-09 19:43:13 -07:00
Hannes Rudolph
3922396bc4 fix(codex): improve oauth error guidance and correct comment on default reasoning effort 2026-01-09 19:43:13 -07:00
Hannes Rudolph
dc4ec3c077 feat(i18n): add OpenAI Native Codex OAuth error messages in multiple languages 2026-01-09 19:43:13 -07:00
Hannes Rudolph
9408eb4556 i18n(openai-native-codex): localize provider errors; document immutable Codex system prompt and override rationale\n\n- Add i18n keys under common.errors.openaiNativeCodex and use t() in handler\n- Explain immutability and strategy where we inject overrides in OpenAiNativeCodexHandler\n- Add commentary to codex prompt file describing canonical prompt and override rationale 2026-01-09 19:43:13 -07:00
Hannes Rudolph
43c9f576c7 feat(openai-native-codex): remove service tier logic; stop forcing minimal effort; add request timeout; improve auth.json error guidance; update ChatGPT link; clear reasoningEffort on model change\n\n- Remove service_tier handling entirely for Codex (server decides tier)\n- Do not auto-default GPT-5 to minimal for Codex; use model/user defaults only\n- Add AbortController using getApiRequestTimeout() to prevent hanging requests\n- Improve auth.json error messages with Codex CLI guidance\n- Update settings link to chatgpt.com\n- Clear reasoningEffort on model change for Codex like native OpenAI 2026-01-09 19:43:13 -07:00
Hannes Rudolph
353c83276b feat: integrate override prompt for dynamic instructions in Codex responses 2026-01-09 19:42:29 -07:00
Hannes Rudolph
7d99ef6afa feat(codex): align validation with optional auth.json path; docs mapping; SSE parser cleanup
- Validation text for OpenAiNativeCodex auth path now reflects optional with default to ~/.codex/auth.json
- Provider Documentation link: map openai-native-codex -> openai to avoid 404
- Remove unused hasContent in SSE parser to satisfy lint
- Verified: cd src && npx vitest run (all tests passed)
2026-01-09 19:42:29 -07:00
Hannes Rudolph
5a82c334ae
chore: disable edit_file tool for Gemini/Vertex (#10594) 2026-01-09 21:24:15 -05:00
roomote[bot]
d97e540ac6
fix(cerebras): ensure all tools have consistent strict mode values (#10589)
Co-authored-by: Roo Code <roomote@roocode.com>
2026-01-09 18:50:16 -07:00
Hannes Rudolph
e39abbffa1
fix: make edit_file matching more resilient (#10585) 2026-01-09 20:32:13 -05:00
Hannes Rudolph
168cfcaba5
fix: round-trip Gemini thought signatures for tool calls (#10590) 2026-01-09 20:03:58 -05:00
Hannes Rudolph
108f78db6c
feat: add debug setting to settings page (#10580)
* feat: add debug mode toggle to settings

* Update About component with debug mode description

* i18n: add debug mode strings to settings locales

* Update debug mode description in all locales

* fix: post state to webview after debugSetting update

This addresses the review feedback that the debugSetting handler was not
posting updated state back to the webview, which could cause the UI to
stay stale until another state refresh occurred.

* fix: clarify debug mode description to specify task header location

Updated debugMode.description across all 18 locales to clarify that
debug buttons appear in the task header, per review feedback.

* fix: remove redundant postStateToWebview call after debug setting update

* Update src/core/webview/webviewMessageHandler.ts

Co-authored-by: roomote[bot] <219738659+roomote[bot]@users.noreply.github.com>

---------

Co-authored-by: roomote[bot] <219738659+roomote[bot]@users.noreply.github.com>
2026-01-09 18:06:02 -05:00
Chris Estreich
a4eb15b5a8
Add some functionality to @roo-code/core for the cli (#10584) 2026-01-09 13:05:15 -08:00
Chris Estreich
3171ffc809
Move more types to @roo-code/types (for the cli) (#10583) 2026-01-09 11:59:06 -08:00
Daniel
907b94bc40
fix(openai): remove convertToSimpleMessages to fix tool calling for OpenAI-compatible providers (#10575) 2026-01-09 12:03:46 -05:00
Daniel
b7bd859473
feat: improve error messaging for stream termination errors from provider (#10548) 2026-01-09 10:03:12 -05:00
Daniel
7b771a209e
fix: merge approval feedback into tool result instead of pushing duplicate (ROO-410) (#10519) 2026-01-09 10:01:52 -05:00
Daniel
ade10e275f
fix(vscode-lm): order text parts before tool calls in assistant messages (#10573) 2026-01-09 10:01:26 -05:00
Daniel
9ac449919e
fix: ensure assistant message content is never undefined for Gemini compatibility (#10559) 2026-01-08 20:32:30 -05:00
github-actions[bot]
eb7d8f4f2c
Changeset version bump (#10558)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2026-01-08 17:49:25 -05:00
Daniel
ef4b95060b
fix: stabilize file paths during native tool call streaming (#10555) 2026-01-08 17:38:58 -05:00
Daniel
e3c0cd64dc
fix: disable Gemini thought signature persistence to prevent corrupted signature errors (#10554) 2026-01-08 17:36:45 -05:00
Daniel
1d9f7f2aa6
fix: change minItems from 2 to 1 for Anthropic API compatibility (#10551) 2026-01-08 15:30:24 -05:00
github-actions[bot]
2cd4c2e2d5
Changeset version bump (#10546)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2026-01-08 09:54:01 -05:00
Matt Rubens
f84beade7a
Release v3.39.0 (#10537) 2026-01-08 01:52:53 -05:00
roomote[bot]
1573edf295
fix: make command chaining examples shell-aware for Windows compatibility (#10434)
* fix: make command chaining examples shell-aware for Windows compatibility

Addresses Issue #10352 where Roo Code generates Unix-style command
chaining (&&) even on Windows systems using PowerShell or cmd.exe.

Changes:
- Add getCommandChainOperator() to detect the user shell and return
  the appropriate command chaining syntax:
  - Unix shells (bash, zsh, etc.): &&
  - PowerShell: ;
  - cmd.exe: &
- Update getRulesSection() to use shell-specific chaining in examples
- Add informative note for non-Unix shells about different syntaxes
- Add comprehensive tests for shell detection and command chaining

* feat: add Unix utility guidance for Windows shells

Addresses feedback from issue #10352 about sed and other Unix-specific
utilities being suggested on Windows. The system prompt now includes
guidance for PowerShell and cmd.exe users to use native alternatives:

PowerShell:
- Select-String instead of grep
- Get-Content instead of cat
- Remove-Item instead of rm
- Copy-Item instead of cp
- Move-Item instead of mv
- -replace operator or [regex] instead of sed

cmd.exe:
- type instead of cat
- del instead of rm
- copy instead of cp
- move instead of mv
- find/findstr instead of grep

* Apply suggestion from @roomote[bot]

Co-authored-by: roomote[bot] <219738659+roomote[bot]@users.noreply.github.com>

* fix: use && for cmd.exe to preserve conditional execution semantics

- Update getCommandChainOperator() to return && for cmd.exe (already done)
- Update getCommandChainNote() to document && instead of & for cmd.exe
- Update JSDoc to reflect cmd.exe uses && for conditional execution
- Update tests to expect && for cmd.exe

cmd.exe supports && for conditional execution (run next command only if
previous succeeds), which provides the same semantics as Unix shells.

* fix: update PowerShell note to use && for cmd.exe reference

---------

Co-authored-by: Roo Code <roomote@roocode.com>
Co-authored-by: Hannes Rudolph <hrudolph@gmail.com>
Co-authored-by: roomote[bot] <219738659+roomote[bot]@users.noreply.github.com>
2026-01-07 20:57:08 -05:00
roomote[bot]
ca0c9010d5
fix: use task stored API config as fallback for rate limit (#10266)
Co-authored-by: Roo Code <roomote@roocode.com>
2026-01-07 17:21:08 -07:00
roomote[bot]
75525817ec
feat: filter @ mention file search results using .rooignore (#10174)
* feat: filter @ mention file search results using .rooignore

- Modify searchFiles case in webviewMessageHandler.ts to filter results using RooIgnoreController
- Use existing RooIgnoreController from current task if available, otherwise create a temporary one
- Respect showRooIgnoredFiles setting to allow users to toggle this behavior
- Add comprehensive test coverage for the new filtering behavior

Fixes #10169

* fix: dispose temporary RooIgnoreController to prevent resource leak

Addresses Rooviewer feedback: the temporary RooIgnoreController created
when no task exists was never disposed, causing file watchers to accumulate.

Changes:
- Track temporary controller separately with tempController variable
- Wrap filtering logic in try/finally block
- Call dispose() in finally block to ensure cleanup
- Add test cases to verify dispose is called for temp controllers
- Verify task's controller is NOT disposed (only temp ones)

---------

Co-authored-by: Roo Code <roomote@roocode.com>
Co-authored-by: Hannes Rudolph <hrudolph@gmail.com>
2026-01-07 18:37:32 -05:00
roomote[bot]
d7d3f4099b
fix: handle PowerShell ENOENT error in os-name on Windows (#9897)
Co-authored-by: Roo Code <roomote@roocode.com>
2026-01-07 13:07:25 -05:00
Hannes Rudolph
43f7ce025f
feat: add support for image file @mentions (#10189)
Co-authored-by: Roo Code <roomote@roocode.com>
2026-01-07 11:44:04 -05:00
roomote[bot]
e287a82144
fix: remove legacy Claude 2 series models from Bedrock provider (#10501)
Co-authored-by: Roo Code <roomote@roocode.com>
2026-01-07 11:30:37 -05:00
Hannes Rudolph
9700eab792
feat: implement sticky provider profile for task-level API config persistence (#10018) 2026-01-07 09:03:44 -07:00
roomote[bot]
7f2978abad
fix: add missing description fields for debugProxy configuration (#10505)
Co-authored-by: Roo Code <roomote@roocode.com>
2026-01-06 20:46:53 -05:00
roomote[bot]
781ed1e178
feat: add Kimi K2 thinking model to Fireworks AI provider (#9202)
Co-authored-by: Roo Code <roomote@roocode.com>
2026-01-06 20:31:56 -05:00
Daniel
741b2680b5
fix: prevent duplicate tool_result blocks causing API errors (#10497) 2026-01-06 18:27:27 -05:00
Hannes Rudolph
503f40241d
feat(proxy): add debug-mode proxy routing (#10467) 2026-01-06 13:17:50 -07:00
Daniel
6b13d1d84e
fix: add additionalProperties: false to MCP tool schemas for OpenAI Responses API (#10472) 2026-01-06 00:26:17 -05:00
Daniel
6f0948137f
fix: preserve tool_use blocks for all tool_results in kept messages during condensation (#10471) 2026-01-06 00:22:33 -05:00
Chris Estreich
b11d53adf4
VSCode shim + basic cli (#10452)
Co-authored-by: Roo Code <roomote@roocode.com>
2026-01-05 10:24:05 -08:00
roomote[bot]
f2276bebc4
fix: add explicit deduplication for duplicate tool_result blocks (#10466)
Co-authored-by: Roo Code <roomote@roocode.com>
Co-authored-by: daniel-lxs <ricciodaniel98@gmail.com>
2026-01-05 11:24:07 -05:00
roomote[bot]
cbc0ae4726
feat: add image support documentation to read_file native tool description (#10442)
Co-authored-by: Roo Code <roomote@roocode.com>
2026-01-05 09:43:28 -05:00
github-actions[bot]
d23824dba5
Changeset version bump (#10451)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2026-01-03 19:23:17 -05:00
roomote[bot]
c307dc7756
fix: add maxConcurrentFileReads limit to native read_file tool schema (#10449)
Co-authored-by: Roo Code <roomote@roocode.com>
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2026-01-03 19:08:37 -05:00
Matt Rubens
08c3431fc5
feat: recursively load .roo/rules and AGENTS.md from subdirectories (#10446)
Co-authored-by: Roo Code <roomote@roocode.com>
2026-01-03 15:05:48 -05:00
Hannes Rudolph
3074ccc278
fix(claude-code): stop frequent sign-ins by hardening OAuth refresh (#10410)
* fix(claude-code): prevent sign-outs on oauth refresh

* test(claude-code): restore fetch after mocking

* refactor(claude-code): replace while(true) with bounded for loop for clarity

---------

Co-authored-by: Roo Code <roomote@roocode.com>
2026-01-01 07:52:01 -08:00
github-actions[bot]
2068531801
Changeset version bump (#10417)
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-31 00:21:30 -08:00
Matt Rubens
dea33f978c
fix: prevent write_to_file from creating files at truncated paths (#10415)
Co-authored-by: daniel-lxs <ricciodaniel98@gmail.com>
Co-authored-by: Roo Code <roomote@roocode.com>
2025-12-31 00:12:24 -08:00