Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
603 commits
Select commit Hold shift + click to select a range
f3b3751
Changeset version bump (#8375)
github-actions[bot] Sep 29, 2025
b264495
fix: Anthropic Sonnet 4.5 model id + Bedrock 1M context checkbox (#8384)
daniel-lxs Sep 29, 2025
8b74af9
chore: add changeset for v3.28.12 (#8385)
mrubens Sep 29, 2025
2502058
Changeset version bump (#8376)
github-actions[bot] Sep 29, 2025
8111da6
Fix Vertex Sonnet 4.5 (#8391)
mrubens Sep 29, 2025
7b7bb49
fix: remove topP parameter from Bedrock inference config (#8388)
daniel-lxs Sep 29, 2025
d25a8d7
chore: add changeset for v3.28.13 (#8393)
mrubens Sep 29, 2025
702b269
Changeset version bump (#8394)
github-actions[bot] Sep 29, 2025
e757bf2
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Sep 30, 2025
3e976e6
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Sep 30, 2025
9e98d1a
feat: add GLM-4.6 model support for z.ai provider (#8408)
roomote[bot] Sep 30, 2025
7418ebb
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Sep 30, 2025
14c0da8
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Sep 30, 2025
4ec921c
chore: add changeset for v3.28.14 (#8413)
mrubens Sep 30, 2025
9f41ee0
Changeset version bump (#8414)
github-actions[bot] Sep 30, 2025
3b40410
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Sep 30, 2025
9af9d5b
A couple more sonnet 4.5 fixes (#8421)
mrubens Sep 30, 2025
e33efc6
chore: Remove unsupported Gemini 2.5 Flash Image Preview free model (…
SannidhyaSah Sep 30, 2025
c552027
Include reasoning messages in cloud tasks (#8401)
mrubens Sep 30, 2025
3e47e88
fix: show send button when only images are selected in chat textarea …
roomote[bot] Sep 30, 2025
f8ed7a7
Add structured data to the homepage (#8427)
mrubens Oct 1, 2025
275bb89
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Oct 1, 2025
2e17e0a
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 1, 2025
b554e3f
fix(ui): disable send button when no input content and update tests
mini2s Oct 1, 2025
9bcd991
fix: Addresses overeager 'there are unsaved changes' dialog in settin…
brunobergher Oct 1, 2025
a061d1e
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Oct 1, 2025
11551bc
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 1, 2025
c8a8188
feat: add UsageStats schema and type (#8441)
roomote[bot] Oct 1, 2025
13534cc
Release: v1.80.0 (#8442)
jr Oct 1, 2025
27ddfc2
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Oct 2, 2025
5cbc479
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 2, 2025
8622d93
feat: add new DeepSeek and GLM models with detailed descriptions to t…
mohammad154 Oct 2, 2025
7ba8e33
Deprecate free grok 4 fast (#8481)
mrubens Oct 3, 2025
1de480b
fix: improve save button activation in prompts settings (#5780) (#8267)
roomote[bot] Oct 3, 2025
38c8028
fix: properly reset cost limit tracking when user clicks "Reset and C…
roomote[bot] Oct 3, 2025
7b4f074
chore(deps): update dependency vite to v6.3.6 [security] (#7838)
renovate[bot] Oct 3, 2025
18e5c19
chore(deps): update dependency glob to v11.0.3 (#7767)
renovate[bot] Oct 3, 2025
5a4aab1
chore: add changeset for v3.28.15 (#8491)
mrubens Oct 3, 2025
8c6587a
Changeset version bump (#8492)
github-actions[bot] Oct 3, 2025
97f9686
Clamp GPT-5 max output tokens to 20% of context window (#8495)
daniel-lxs Oct 3, 2025
bc3b1dd
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 4, 2025
960958a
fix: add ollama and lmstudio to MODELS_BY_PROVIDER (#8511)
mrubens Oct 5, 2025
85b0e8a
Release: v1.81.0 (#8519)
mrubens Oct 5, 2025
14fe9fa
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 5, 2025
28b642d
Add the parent task ID in telemetry (#8532)
mrubens Oct 6, 2025
5a3f911
Release: v1.82.0 (#8535)
mrubens Oct 6, 2025
cd8036d
feat: Experiment: Show a bit of stats in Cloud tab to help users disc…
brunobergher Oct 7, 2025
eeaafef
Revert "feat: Experiment: Show a bit of stats in Cloud tab to help us…
mrubens Oct 8, 2025
ef4ce2b
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Oct 8, 2025
10c6cdf
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 8, 2025
b011b63
Identify cloud tasks in the extension bridge (#8539)
cte Oct 9, 2025
41c157b
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Oct 9, 2025
08736b5
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 9, 2025
507a600
Revert "Clamp GPT-5 max output tokens to 20% of context window" (#8582)
mrubens Oct 9, 2025
9fc6ed6
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 9, 2025
bdc91b2
feat: Add Claude Sonnet 4.5 1M context window support for Claude Code…
ColbySerpa Oct 9, 2025
06189f6
chore: add changeset for v3.28.16 (#8592)
mrubens Oct 10, 2025
3a47c55
Changeset version bump (#8593)
github-actions[bot] Oct 10, 2025
8cff960
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Oct 10, 2025
cbf1d33
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 10, 2025
6b8c21f
fix(i18n): Update zh-TW run command title (#8631)
PeterDaveHello Oct 12, 2025
ce03b9e
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Oct 13, 2025
8248ae9
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 13, 2025
b2a5623
feat(commands, webview): Add TDD built-in command; Refactor welcome t…
mini2s Oct 13, 2025
c33f0ce
refactor(project-wiki): separate command from subtask initialization
mini2s Oct 13, 2025
deaa211
feat(command): update built-in commands count and names in tests
mini2s Oct 13, 2025
e5216c6
Add Claude Haiku 4.5 (#8673)
daniel-lxs Oct 15, 2025
932beab
Release v3.28.17 (#8674)
mrubens Oct 15, 2025
1a3a873
Changeset version bump (#8675)
github-actions[bot] Oct 15, 2025
270dce5
fix(editor): prevent file editing issues when git diff views are open…
hassoncs Oct 16, 2025
5069d84
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Oct 16, 2025
9f60a21
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 16, 2025
9aee31f
web: Cloud page and updates to Pricing to explain Cloud Agent Credits…
brunobergher Oct 16, 2025
6d6b836
feat: Add userAgent to Bedrock client for version tracking (#8663)
roomote[bot] Oct 17, 2025
0978ba3
feat: Cloud agents in extension (#8470)
brunobergher Oct 17, 2025
0e7a878
feat: Z AI: only two coding endpoints (#8687) (#8693)
hannesrudolph Oct 17, 2025
42881a5
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Oct 17, 2025
4ab42dd
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 17, 2025
4405f5a
Remove request content from UI messages (#8696)
mrubens Oct 17, 2025
49349e5
Left align the welcome title (#8700)
mrubens Oct 17, 2025
3aa9762
Update image generation model selection (#8698)
chrarnoldus Oct 17, 2025
966ad7c
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Oct 17, 2025
73343b3
feat(core): enhance client ID validation and CSP configuration
mini2s Oct 17, 2025
f30caf2
web: Mobile image in /cloud (#8705)
brunobergher Oct 17, 2025
aaa8dea
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 17, 2025
0a657a3
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 17, 2025
660f57b
feat(ui): add option to hide API request details by default
mini2s Oct 17, 2025
236957b
Revert cloud agents for now (#8713)
mrubens Oct 17, 2025
7dcfca7
chore: add changeset for v3.28.18 (#8715)
mrubens Oct 17, 2025
a027ff8
fix(task): adjust API request handling and error message assignment
mini2s Oct 17, 2025
868117e
Changeset version bump (#8716)
github-actions[bot] Oct 17, 2025
c1e2186
test: update telemetry client mocks and fix test id typo
mini2s Oct 17, 2025
3c14be4
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 17, 2025
c8d1a9d
Normalize docs-extractor audience tags; remove admin/stakeholder; str…
hannesrudolph Oct 17, 2025
891df38
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 18, 2025
f360c4e
Add Intercom as a subprocessor (#8718)
mrubens Oct 18, 2025
f99b994
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Oct 18, 2025
a8f87d2
web: Leftover white bg (#8719)
brunobergher Oct 18, 2025
9ef096b
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 20, 2025
d00c06b
feat(zgsm): add supportsMaxTokens flag and adjust max token handling
mini2s Oct 20, 2025
3c7437e
docs: update Configuring Profiles video link (#8189)
roomote[bot] Oct 20, 2025
e04b279
Fix link text for Roomote Control in README (#8742)
laz-001 Oct 20, 2025
4e6c717
Try a 5s status mutation timeout (#8734)
cte Oct 20, 2025
f3a505f
web: Landing page for the reviewerFirst pass (#8740)
brunobergher Oct 21, 2025
ae47117
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Oct 21, 2025
59eec3f
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 21, 2025
6ffdd44
Remove GPT‑5 instructions/reasoning_summary from UI message metadata …
hannesrudolph Oct 21, 2025
34392dd
Z.ai: add GLM-4.5-X, AirX, Flash (expand model coverage) (#8745)
hannesrudolph Oct 21, 2025
60719c6
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Oct 22, 2025
d11b13b
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 22, 2025
d9ed33d
Enable browser-use tool for all image-capable models (#8121)
roomote[bot] Oct 22, 2025
5ca3ada
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 22, 2025
6fa6c3c
Skip failing tools tests (#8767)
mrubens Oct 22, 2025
6173a59
Update text for clarity in reviewer page (#8753)
mrubens Oct 22, 2025
9ac1d6e
feat: add GLM-4.6-turbo model to chutes ai provider (#8502)
mohammad154 Oct 22, 2025
c74e42b
web: Dynamic OpenGraph images (#8773)
brunobergher Oct 22, 2025
a97cda1
web: Updates CTA link in /reviewer to send people to /cloud-agents/we…
brunobergher Oct 22, 2025
026cbd5
feat: add 'anthropic/claude-haiku-4.5' to prompt caching models (#8764)
hannesrudolph Oct 22, 2025
706066d
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 22, 2025
ef96fbd
refactor(core): consolidate global custom instructions and improve sh…
mini2s Oct 22, 2025
8187a8e
fix: update X/Twitter username from roo_code to roocode (#8780)
roomote[bot] Oct 22, 2025
68cd543
fix(zgsm): safely pass optional language metadata to avoid runtime er…
mini2s Oct 23, 2025
febeca7
test: update test expectations for shell handling and prompt enhancement
mini2s Oct 23, 2025
4100ebd
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 23, 2025
bbfa0ec
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Oct 23, 2025
b9110dc
fix: always show checkpoint restore options regardless of change dete…
daniel-lxs Oct 23, 2025
93c13e2
feat: add token-budget based file reading with intelligent preview (#…
daniel-lxs Oct 23, 2025
ac88d66
Remove a very verbose error for cloud agents (#8795)
cte Oct 23, 2025
4f084f8
fix: retry API requests on stream failures instead of aborting task (…
daniel-lxs Oct 23, 2025
3349c02
feat: improve auto-approve button responsiveness (#8798)
daniel-lxs Oct 24, 2025
f4121e2
Add checkpoint initialization timeout settings and fix checkpoint tim…
NaccOll Oct 24, 2025
97ec524
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Oct 24, 2025
ab9a485
feat: add dynamic model loading for Roo Code Cloud provider (#8728)
roomote[bot] Oct 24, 2025
e4431ec
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Oct 24, 2025
785c06c
refactor(tools): move imageHelpers to tools directory and update imports
mini2s Oct 24, 2025
9895dc9
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 24, 2025
485b551
Improve checkpoint menu translations for PR #7841 (#8796)
daniel-lxs Oct 24, 2025
1a9e7ca
Handle Roo provider pricing correctly (#8802)
mrubens Oct 24, 2025
ad56791
fix: preserve trailing newlines in stripLineNumbers for apply_diff (#…
roomote[bot] Oct 24, 2025
19e0690
Fix checkpoints test (#8803)
mrubens Oct 24, 2025
b33c082
Chore: Update magistral-medium-latest in mistral.ts (#8364)
ThomsenDrake Oct 24, 2025
a84f7ef
fix: respect nested .gitignore files in search_files (#8804)
daniel-lxs Oct 24, 2025
aae255d
fix(export): exclude max tokens field for models that don't support i…
elianiva Oct 24, 2025
6428d09
chore: add changeset for v3.29.0 (#8806)
mrubens Oct 24, 2025
97331bc
Changeset version bump (#8807)
github-actions[bot] Oct 24, 2025
6ab6de9
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Oct 25, 2025
c5c03ef
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 25, 2025
98b8d5b
fix: adjust GLM-4.6-turbo max output tokens to prevent context limit …
roomote[bot] Oct 25, 2025
f7009e9
fix: change Add to Context keybinding to avoid Redo conflict (#8653)
roomote[bot] Oct 26, 2025
8870348
feat: add Google Ads conversion tracking to reviewer page (#8831)
roomote[bot] Oct 26, 2025
f5d7ba1
Fix provider model loading race conditions (#8836)
mrubens Oct 26, 2025
b654ee2
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Oct 26, 2025
0e0b5c7
Release v3.29.1 (#8854)
mrubens Oct 27, 2025
bd1f890
Changeset version bump (#8855)
github-actions[bot] Oct 27, 2025
181c678
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 27, 2025
d419287
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 27, 2025
b92a22b
Fix caching logic in Roo provider (#8860)
mrubens Oct 27, 2025
634b1df
fix: Remove specific Claude model version from settings descriptions …
roomote[bot] Oct 27, 2025
e76ac42
feat: add LongCat-Flash-Thinking-FP8 models to Chutes AI provider (#8…
roomote[bot] Oct 27, 2025
84cf332
Make sure not to show prices for free models (#8864)
mrubens Oct 27, 2025
edcf6d9
chore: add changeset for v3.29.2 (#8865)
mrubens Oct 27, 2025
7926dcf
Changeset version bump (#8866)
github-actions[bot] Oct 27, 2025
cff65b4
fix: resolve checkpoint menu popover overflow (#8867)
daniel-lxs Oct 27, 2025
13d20bb
fix: process queued messages after context condensing completes (#8478)
roomote[bot] Oct 27, 2025
bde2c3c
fix: use max_output_tokens when available in LiteLLM fetcher (#8455)
roomote[bot] Oct 27, 2025
c232057
Use monotonic clock for rate limiting (#8456)
chrarnoldus Oct 27, 2025
fceb413
Fix LiteLLM test failures after merge (#8870)
daniel-lxs Oct 27, 2025
3cbdbc2
feat: add settings to configure time and cost in system prompt (#8451)
roomote[bot] Oct 27, 2025
b72d55e
Enabled reasoning in Roo provider (#8874)
mrubens Oct 28, 2025
86190d8
feat: Add supportsReasoning property for Z.ai GLM binary thinking mod…
daniel-lxs Oct 28, 2025
49fde41
feat: update Gemini models with latest 09-2025 versions (#8486)
roomote[bot] Oct 28, 2025
0d38175
Focus textbox and add newlines after adding to context (#8877)
mrubens Oct 28, 2025
11f1c06
chore: add changeset for v3.29.3 (#8878)
mrubens Oct 28, 2025
a3101aa
Add how it works section to reviewer landing page (#8884)
mrubens Oct 28, 2025
be119bc
Add exponential backoff for mid-stream retry failures (#8888)
daniel-lxs Oct 28, 2025
b5fd805
Changeset version bump (#8879)
github-actions[bot] Oct 28, 2025
06a5c2d
fix: auto-sync enableReasoningEffort with reasoning dropdown selectio…
daniel-lxs Oct 28, 2025
44b0465
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Oct 28, 2025
49b2875
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 28, 2025
520b2f6
Prevent a noisy cloud agent exception (#8577)
cte Oct 28, 2025
06af804
fix(modes): custom modes under custom path not showing (#8499)
elianiva Oct 28, 2025
82b0b04
docs(vscode-lm): clarify VS Code LM API integration warning (#8493)
hannesrudolph Oct 28, 2025
f839d4c
fix: prevent MCP server restart when toggling tool permissions (#8633)
heyseth Oct 28, 2025
bb36e43
docs(readme): update readme images and image compression
mini2s Oct 29, 2025
d8f9003
docs: replace inline base64 images with image file references
mini2s Oct 29, 2025
093632a
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Oct 29, 2025
561eef3
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 29, 2025
6b6ef72
feat(terminal): refactor execa command execution for shell handling
mini2s Oct 29, 2025
414345c
Feat: Add Minimax Provider (fixes #8818) (#8820)
Maosghoul Oct 29, 2025
ff0c65a
Release v3.29.4 (#8906)
mrubens Oct 29, 2025
f33b71c
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Oct 29, 2025
7742b6a
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 29, 2025
bd5807b
fix: Gate auth-driven Roo model refresh to active provider only (#8915)
daniel-lxs Oct 29, 2025
ed45d1c
feat: add zai-glm-4.6 model to Cerebras and set gpt-oss-120b as defau…
daniel-lxs Oct 29, 2025
59ab1f3
roo provider: update session token on every request (#8923)
jr Oct 30, 2025
ae8f060
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Oct 30, 2025
3197115
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 30, 2025
626471d
feat: add We're hiring link to announcement modal (#8931)
roomote[bot] Oct 30, 2025
f9d6fe7
Fix: Enhanced codebase index recovery and reuse ('Start Indexing' but…
heyseth Oct 30, 2025
9dfa496
fix: make code index initialization non-blocking at activation (#8933)
daniel-lxs Oct 30, 2025
f583be3
fix(context): truncate type definition to match max read line (#8509)
elianiva Oct 30, 2025
b284edd
fix: prevent infinite loop when canceling during auto-retry (#8902)
roomote[bot] Oct 30, 2025
bb640bf
feat: rename MCP Errors tab to Logs for mixed-level messages (#8894)
roomote[bot] Oct 31, 2025
c66fed9
feat: improve @ file search for large projects (#8805)
daniel-lxs Oct 31, 2025
2a28141
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Oct 31, 2025
81d5f63
fix: remove search_and_replace tool from codebase (#8892)
roomote[bot] Oct 31, 2025
6e4e22f
Release v3.29.5 (#8942)
mrubens Oct 31, 2025
4a096e1
Changeset version bump (#8907)
github-actions[bot] Oct 31, 2025
5d1f0a6
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Oct 31, 2025
416fa57
Fix cost and token tracking between provider styles (#8954)
mrubens Oct 31, 2025
eb68c65
web: Attempt at compliant, cookie-less anonymous tracking for the web…
brunobergher Oct 31, 2025
d64c9ff
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Nov 1, 2025
63a2111
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Nov 1, 2025
89d67ef
fix: add keyword index for type field to fix Qdrant codebase_search e…
roomote[bot] Nov 1, 2025
d28d40d
chore: add changeset for v3.29.5 (#8967)
mrubens Nov 1, 2025
d7ea6d6
Changeset version bump (#8968)
github-actions[bot] Nov 1, 2025
388d405
Capture the reasoning content in base-openai-compatible for GLM 4.6 (…
mrubens Nov 2, 2025
31de103
feat: optimize router model fetching with single-provider filtering (…
daniel-lxs Nov 2, 2025
25c6f46
fix: prevent message loss during queue drain race condition (#8955)
daniel-lxs Nov 2, 2025
ca10cba
fix: create new Requesty profile during OAuth (#8699)
Thibault00 Nov 2, 2025
1e6394d
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Nov 2, 2025
eaecc53
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Nov 2, 2025
d0e519d
feat: convert Chutes to dynamic/router provider (#8980)
roomote[bot] Nov 2, 2025
34f45f1
feat: add OpenRouter embedding provider support (#8973)
dmarkey Nov 3, 2025
8dc8452
feat: add GLM-4.6 model to Fireworks provider (#8754)
roomote[bot] Nov 3, 2025
d863010
feat: add MiniMax M2 model to Fireworks.ai provider (#8962)
roomote[bot] Nov 3, 2025
8d98b30
Union a hard-coded list of chutes models with the dynamic list (#8988)
mrubens Nov 3, 2025
613255c
Handle <think> tags in the base OpenAI-compatible provider (#8989)
mrubens Nov 3, 2025
5b753f5
Don't output newline-only reasoning (#8990)
mrubens Nov 3, 2025
4a2d782
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Nov 3, 2025
5fb36d9
feat: implement Google Consent Mode v2 with cookieless pings (#8987)
roomote[bot] Nov 3, 2025
680d19e
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Nov 3, 2025
f7856ef
Terminal settings: Cleanup terminal settings tab and change default t…
hannesrudolph Nov 3, 2025
ce88b02
feat: add preserveReasoning flag to include reasoning in API history …
daniel-lxs Nov 3, 2025
0cd2b99
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Nov 3, 2025
5c738de
fix: update terminal settings documentation link (#8997)
hannesrudolph Nov 3, 2025
0048bd7
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Nov 3, 2025
e4ee543
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Nov 3, 2025
25082b9
refactor(terminal): simplify getTerminalByVSCETerminal method
mini2s Nov 3, 2025
58edc71
fix: prevent UI flicker and enable resumption after task cancellation…
daniel-lxs Nov 3, 2025
7add32e
docs: Update readme to link the new Custom Modes video (#9000)
SannidhyaSah Nov 3, 2025
d59b815
feat(web): add /pr-fixer page and Cloud Agents footer (#8996)
roomote[bot] Nov 3, 2025
8a6bdf9
v3.29.6 (#9004)
cte Nov 3, 2025
65bb672
chore: add changeset for v3.30.0 (#9006)
mrubens Nov 4, 2025
8e4b145
Changeset version bump (#9005)
github-actions[bot] Nov 4, 2025
ca582e2
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Nov 4, 2025
6de0f68
config(rooignore): remove ignored directories from exclusion list
mini2s Nov 4, 2025
2e8e65e
Merge branch 'main' of github.com:zgsm-ai/costrict into roo-to-main
mini2s Nov 5, 2025
1ec3064
Merge remote-tracking branch 'upstream/main' into roo-to-main
mini2s Nov 5, 2025
2ce769f
feat(api): add mode parameter to ZgsmAiHandler and add tooltips to Ch…
mini2s Nov 5, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions packages/types/src/providers/anthropic.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import type { ModelInfo } from "../model.js"
// https://docs.anthropic.com/en/docs/about-claude/models

export type AnthropicModelId = keyof typeof anthropicModels
export const anthropicDefaultModelId: AnthropicModelId = "claude-sonnet-4-20250514"
export const anthropicDefaultModelId: AnthropicModelId = "claude-sonnet-4-5"

export const anthropicModels = {
"claude-sonnet-4-5": {
Expand Down Expand Up @@ -49,7 +49,7 @@ export const anthropicModels = {
],
},
"claude-opus-4-1-20250805": {
maxTokens: 8192,
maxTokens: 32_000, // Overridden to 8k if `enableReasoningEffort` is false.
contextWindow: 200_000,
supportsImages: true,
supportsPromptCache: true,
Expand Down
2 changes: 1 addition & 1 deletion packages/types/src/providers/bedrock.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import type { ModelInfo } from "../model.js"

export type BedrockModelId = keyof typeof bedrockModels

export const bedrockDefaultModelId: BedrockModelId = "anthropic.claude-sonnet-4-20250514-v1:0"
export const bedrockDefaultModelId: BedrockModelId = "anthropic.claude-sonnet-4-5-20250929-v1:0"

export const bedrockDefaultPromptRouterModelId: BedrockModelId = "anthropic.claude-3-sonnet-20240229-v1:0"

Expand Down
6 changes: 3 additions & 3 deletions packages/types/src/providers/cerebras.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,13 @@ export const cerebrasDefaultModelId: CerebrasModelId = "gpt-oss-120b"

export const cerebrasModels = {
"zai-glm-4.6": {
maxTokens: 16_384,
contextWindow: 128000,
maxTokens: 16384, // consistent with their other models
contextWindow: 131072,
supportsImages: false,
supportsPromptCache: false,
inputPrice: 0,
outputPrice: 0,
description: "Highly intelligent general-purpose model with ~2000 tokens/s",
description: "Highly intelligent general purpose model with up to 1,000 tokens/s",
},
"qwen-3-coder-480b-free": {
maxTokens: 40000,
Expand Down
2 changes: 1 addition & 1 deletion packages/types/src/providers/claude-code.ts
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ export function convertModelNameForVertex(modelName: string): string {

// Claude Code
export type ClaudeCodeModelId = keyof typeof claudeCodeModels
export const claudeCodeDefaultModelId: ClaudeCodeModelId = "claude-sonnet-4-20250514"
export const claudeCodeDefaultModelId: ClaudeCodeModelId = "claude-sonnet-4-5"
export const CLAUDE_CODE_DEFAULT_MAX_OUTPUT_TOKENS = 16000

/**
Expand Down
2 changes: 1 addition & 1 deletion packages/types/src/providers/openrouter.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import type { ModelInfo } from "../model.js"

// https://openrouter.ai/models?order=newest&supported_parameters=tools
export const openRouterDefaultModelId = "anthropic/claude-sonnet-4"
export const openRouterDefaultModelId = "anthropic/claude-sonnet-4.5"

export const openRouterDefaultModelInfo: ModelInfo = {
maxTokens: 8192,
Expand Down
2 changes: 1 addition & 1 deletion packages/types/src/providers/unbound.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import type { ModelInfo } from "../model.js"

export const unboundDefaultModelId = "anthropic/claude-3-7-sonnet-20250219"
export const unboundDefaultModelId = "anthropic/claude-sonnet-4-5"

export const unboundDefaultModelInfo: ModelInfo = {
maxTokens: 8192,
Expand Down
2 changes: 1 addition & 1 deletion packages/types/src/providers/zgsm.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { ModelInfo } from "../model.js"

export const zgsmDefaultModelId = "GLM-4.5"
export const zgsmDefaultModelId = "GLM-4.6"

export const zgsmModels = {
default: {
Expand Down
4 changes: 2 additions & 2 deletions src/api/providers/__tests__/claude-code.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ describe("ClaudeCodeHandler", () => {
const handlerWithInvalidModel = new ClaudeCodeHandler(options)
const model = handlerWithInvalidModel.getModel()

expect(model.id).toBe("claude-sonnet-4-20250514") // default model
expect(model.id).toBe("claude-sonnet-4-5") // default model
})

test("should override maxTokens when claudeCodeMaxOutputTokens is provided", () => {
Expand All @@ -69,7 +69,7 @@ describe("ClaudeCodeHandler", () => {
const handlerWithMaxTokens = new ClaudeCodeHandler(options)
const model = handlerWithMaxTokens.getModel()

expect(model.id).toBe("claude-sonnet-4-20250514") // default model
expect(model.id).toBe("claude-sonnet-4-5") // default model
expect(model.info.maxTokens).toBe(16384) // Should use the configured value
})

Expand Down
14 changes: 13 additions & 1 deletion src/api/providers/__tests__/openrouter.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,18 @@ vitest.mock("../fetchers/modelCache", () => ({
description: "Claude 3.7 Sonnet",
thinking: false,
},
"anthropic/claude-sonnet-4.5": {
maxTokens: 8192,
contextWindow: 200000,
supportsImages: true,
supportsPromptCache: true,
inputPrice: 3,
outputPrice: 15,
cacheWritesPrice: 3.75,
cacheReadsPrice: 0.3,
description: "Claude 4.5 Sonnet",
thinking: false,
},
"anthropic/claude-3.7-sonnet:thinking": {
maxTokens: 128000,
contextWindow: 200000,
Expand Down Expand Up @@ -121,7 +133,7 @@ describe("OpenRouterHandler", () => {
it("returns default model info when options are not provided", async () => {
const handler = new OpenRouterHandler({})
const result = await handler.fetchModel()
expect(result.id).toBe("anthropic/claude-sonnet-4")
expect(result.id).toBe("anthropic/claude-sonnet-4.5")
expect(result.info.supportsPromptCache).toBe(true)
})

Expand Down
14 changes: 13 additions & 1 deletion src/api/providers/__tests__/unbound.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,18 @@ vitest.mock("../fetchers/modelCache", () => ({
description: "Claude 3.5 Sonnet",
thinking: false,
},
"anthropic/claude-sonnet-4-5": {
maxTokens: 8192,
contextWindow: 200000,
supportsImages: true,
supportsPromptCache: true,
inputPrice: 3,
outputPrice: 15,
cacheWritesPrice: 3.75,
cacheReadsPrice: 0.3,
description: "Claude 4.5 Sonnet",
thinking: false,
},
"anthropic/claude-3-7-sonnet-20250219": {
maxTokens: 8192,
contextWindow: 200000,
Expand Down Expand Up @@ -312,7 +324,7 @@ describe("UnboundHandler", () => {
it("should return default model when invalid model provided", async () => {
const handlerWithInvalidModel = new UnboundHandler({ ...mockOptions, unboundModelId: "invalid/model" })
const modelInfo = await handlerWithInvalidModel.fetchModel()
expect(modelInfo.id).toBe("anthropic/claude-3-7-sonnet-20250219")
expect(modelInfo.id).toBe("anthropic/claude-sonnet-4-5")
expect(modelInfo.info).toBeDefined()
})
})
Expand Down
1 change: 1 addition & 0 deletions src/api/providers/zgsm.ts
Original file line number Diff line number Diff line change
Expand Up @@ -172,6 +172,7 @@ export class ZgsmAiHandler extends BaseProvider implements SingleCompletionHandl
Object.assign(requestOptions, {
extra_body: {
prompt_mode: "strict",
mode: metadata?.mode,
},
})
}
Expand Down
109 changes: 8 additions & 101 deletions src/core/task/Task.ts
Original file line number Diff line number Diff line change
Expand Up @@ -750,9 +750,8 @@ export class Task extends EventEmitter<TaskEvents> implements TaskLike {
// deallocated. (Although we set Cline = undefined in provider, that
// simply removes the reference to this instance, but the instance is
// still alive until this promise resolves or rejects.)
// Exception: Allow resume asks even when aborted for soft-interrupt UX
if (this.abort && type !== "resume_task" && type !== "resume_completed_task") {
throw new Error(`[CoStrict#ask] task ${this.taskId}.${this.instanceId} aborted`)
if (this.abort) {
throw new Error(`[RooCode#ask] task ${this.taskId}.${this.instanceId} aborted`)
}

let askTs: number
Expand Down Expand Up @@ -1289,7 +1288,7 @@ export class Task extends EventEmitter<TaskEvents> implements TaskLike {
])
}

public async resumeTaskFromHistory() {
private async resumeTaskFromHistory() {
// if (this.enableBridge) {
// try {
// await BridgeOrchestrator.subscribeToTask(this)
Expand Down Expand Up @@ -1381,13 +1380,6 @@ export class Task extends EventEmitter<TaskEvents> implements TaskLike {

const { response, text, images } = await this.ask(askType) // Calls `postStateToWebview`.

// Reset abort flags AFTER user responds to resume ask.
// This is critical for the cancel β†’ resume flow: when a task is soft-aborted
// (abandoned = false), we keep the instance alive but set abort = true.
// We only clear these flags after the user confirms they want to resume,
// preventing the old stream from continuing if abort was set.
this.resetAbortAndStreamingState()

let responseText: string | undefined
let responseImages: string[] | undefined

Expand Down Expand Up @@ -1546,86 +1538,6 @@ export class Task extends EventEmitter<TaskEvents> implements TaskLike {
await this.initiateTaskLoop(newUserContent)
}

/**
* Resets abort flags and streaming state to allow task resumption.
* Centralizes the state reset logic used after user confirms task resumption.
*
* @private
*/
private resetAbortAndStreamingState(): void {
this.abort = false
this.abandoned = false
this.abortReason = undefined
this.didFinishAbortingStream = false
this.isStreaming = false

// Reset streaming-local fields to avoid stale state from previous stream
this.currentStreamingContentIndex = 0
this.currentStreamingDidCheckpoint = false
this.assistantMessageContent = []
this.didCompleteReadingStream = false
this.userMessageContent = []
this.userMessageContentReady = false
this.didRejectTool = false
this.didAlreadyUseTool = false
this.presentAssistantMessageLocked = false
this.presentAssistantMessageHasPendingUpdates = false
this.assistantMessageParser.reset()
}

/**
* Present a resumable ask on an aborted task without rehydrating.
* Used by soft-interrupt (cancelTask) to show Resume/Terminate UI.
* Selects the appropriate ask type based on the last relevant message.
* If the user clicks Resume, resets abort flags and continues the task loop.
*/
public async presentResumableAsk(): Promise<void> {
const lastClineMessage = this.clineMessages
.slice()
.reverse()
.find((m) => !(m.ask === "resume_task" || m.ask === "resume_completed_task"))

let askType: ClineAsk
if (lastClineMessage?.ask === "completion_result") {
askType = "resume_completed_task"
} else {
askType = "resume_task"
}

const { response, text, images } = await this.ask(askType)

// If user clicked Resume (not Terminate), reset abort flags and continue
if (response === "yesButtonClicked" || response === "messageResponse") {
// Reset abort flags to allow the loop to continue
this.resetAbortAndStreamingState()

// Prepare content for resuming the task loop
let userContent: Anthropic.Messages.ContentBlockParam[] = []

if (response === "messageResponse" && text) {
// User provided additional instructions
await this.say("user_feedback", text, images)
userContent.push({
type: "text",
text: `\n\nNew instructions for task continuation:\n<user_message>\n${text}\n</user_message>`,
})
if (images && images.length > 0) {
userContent.push(...formatResponse.imageBlocks(images))
}
} else {
// Simple resume with no new instructions
userContent.push({
type: "text",
text: "[TASK RESUMPTION] Resuming task...",
})
}

// Continue the task loop
await this.initiateTaskLoop(userContent)
}
// If user clicked Terminate (noButtonClicked), do nothing - task stays aborted
}

public async abortTask(isAbandoned = false) {
// Aborting task

Expand All @@ -1637,17 +1549,12 @@ export class Task extends EventEmitter<TaskEvents> implements TaskLike {
this.abort = true
this.emit(RooCodeEventName.TaskAborted)

// Only dispose if this is a hard abort (abandoned)
// For soft abort (user cancel), keep the instance alive so we can present a resumable ask
if (isAbandoned) {
try {
this.dispose() // Call the centralized dispose method
} catch (error) {
console.error(`Error during task ${this.taskId}.${this.instanceId} disposal:`, error)
// Don't rethrow - we want abort to always succeed
}
try {
this.dispose() // Call the centralized dispose method
} catch (error) {
console.error(`Error during task ${this.taskId}.${this.instanceId} disposal:`, error)
// Don't rethrow - we want abort to always succeed
}

// Save the countdown message in the automatic retry or other content.
try {
// Save the countdown message in the automatic retry or other content.
Expand Down
Loading
Loading