Commit graph

1684 commits

Author SHA1 Message Date
Daniel Riccio
1f4d3c3e77
fix: resolve MCP selector issues and simplify implementation
- Fixed useEffect to properly detect MCP object format { mcp: { included: [...] } }
- Fixed empty selection behavior to enable all MCP servers instead of disabling MCP
- Removed tuple format handling since this feature hasn't been released yet
- Simplified code to only handle the new object format for MCP configuration
- Removed unused GroupOptions import

When no specific servers are selected, MCP is added as a string (enables all servers).
When specific servers are selected, MCP is added as an object with the included list.

This ensures the MCP selector properly loads configurations and maintains
the expected behavior where empty selection means all servers are enabled.
2025-08-06 15:24:59 -05:00
Daniel Riccio
b223d71a7f
fix: update MCP configuration to use direct object format in YAML
- Updated schema to accept { mcp: { included: [...] } } directly as a GroupEntry
- Modified McpSelector to create the direct object format instead of tuple
- Updated getGroupName and getGroupOptions helpers to handle the new format
- Updated MCP server section to properly extract included list from both formats

This resolves the nested array issue in YAML generation when toggling MCP
checkbox and selecting specific servers. The YAML now correctly generates:
  - mcp:
      included: [...]
Instead of the previous nested structure.
2025-08-06 11:06:41 -05:00
axb
1aa827450c
show connected mcp servers 2025-08-05 16:57:47 -05:00
axb
d474779023
Support specifying available and unavailable MCP servers in custom mode 2025-08-05 16:57:47 -05:00
xyOz
6892427e34
Fix: Resolve Memory Leak in ChatView Virtual Scrolling Implementation (#6697)
Co-authored-by: Daniel Riccio <ricciodaniel98@gmail.com>
2025-08-05 14:08:52 -07:00
roomote[bot]
24584f54ec
feat: clean up task list in HistoryPreview and History components (#6687)
Co-authored-by: Roo Code <roomote@roocode.com>
Co-authored-by: Bruno Bergher <me@brunobergher.comexport>
Co-authored-by: Bruno Bergher <me@brunobergher.com>
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-08-05 11:05:55 -07:00
Matt Rubens
c632b22e56
Revert "Extension bridge (#6677)" (#6729) 2025-08-05 10:45:45 -07:00
Bruno Bergher
ea79dfeb66
Redesigned Task Header (#6561)
* Reorganizes the task header for cleanliness and in preparation for Cloud link

* More task ehader visual tweaks

* Translations for new task header

* Fixes TaskHeader color

* Removes stray string

* Fixes tests

* Iterates on visual details

* More visual tweaks

* Missing localization call

* Fixes tests

---------

Co-authored-by: Bruno Bergher <me@brunobergher.comexport>
2025-08-05 06:26:25 -07:00
NaccOll
d90bab71ff
feat: code indexing support multiple folder similar with task history (#6204)
* feat: Implement code indexing support multi-folder workspaces similar to task history

* fix: add missing mock for onDidChangeActiveTextEditor in tests
2025-08-04 19:39:37 -07:00
ershang-fireworks
4a9222b50e
Add the fireworks AI provider (#6652)
* add fireworks provider

* add tests

* Update packages/types/src/providers/fireworks.ts

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

* fix typo

* another typo

---------

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-08-04 19:27:12 -07:00
Chris Estreich
1d714c8ce4
Extension bridge (#6677)
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-08-04 13:58:14 -07:00
roomote[bot]
7ca4901024
fix: prevent empty mode names from being saved (fixes #5766) (#5767)
* fix: prevent empty mode names from being saved (fixes #5766)

- Add frontend validation in ModesView to prevent empty names from being saved
- Add onBlur handler to restore original name if field is left empty
- Add backend validation in CustomModesManager.updateCustomMode using modeConfigSchema
- Provide user feedback when validation fails
- Trim whitespace from mode names before validation

This prevents YAML parsing errors caused by empty mode name fields.

* fix: improve UX by allowing users to empty mode name field

- Remove restriction that prevented users from emptying the name field
- Remove onBlur handler that automatically restored original name
- Allow backend validation to handle empty names and show appropriate errors
- Users can now type freely but invalid saves are prevented by backend validation

Addresses feedback from @daniel-lxs in PR #5767

* fix: allow emptying mode name field but prevent saving when invalid

- Modified onBlur handler to check if name is empty before saving
- If empty, revert to original name instead of saving empty value
- This provides better UX as requested in PR review

* fix: add proper JSON formatting to source map writes for Windows compatibility

---------

Co-authored-by: Roo Code <roomote@roocode.com>
2025-08-04 11:03:34 -07:00
Kaan
4e8b17486b
feat(ui): Make mode selection dropdowns responsive (#6422) 2025-08-04 11:56:05 -04:00
jues
a921d059e1
Add Z AI provider (#6657)
Co-authored-by: wangshan <shan.wang@aminer.cn>
2025-08-04 10:06:46 -04:00
axb
f24c1e69a3
use assistantMessageParser class instead of parseAssistantMessage (#5341)
Co-authored-by: Daniel Riccio <ricciodaniel98@gmail.com>
2025-08-04 10:02:30 -04:00
NaccOll
603c6c6aea
style: update highlightLayer style and align to textarea (#6648) 2025-08-04 08:52:21 -05:00
roomote[bot]
2882d99ea8
Remove 'Initial Checkpoint' terminology, use 'Checkpoint' consistently (#6643)
Co-authored-by: Roo Code <roomote@roocode.com>
2025-08-04 00:23:08 -04:00
NaccOll
a5b55dac8b
Changing checkpoint timing and ensuring checkpoints work (#6359)
* feat: Before requesting, ensure checkpoint is initialized

* Generate a checkpoint before modifying the code

* refactor: streamline checkpoint handling and enhance getCheckpoints method

* Blocked waiting for checkpoint initialization timing to change

* cancel checkpoint restore limit

* fix: ensure checkpoint service is undefined on initialization error and improve checkpoint diff handling

* refactor: simplify checkpoint service initialization and cleanup unused variables in CheckpointMenu

* fix: prevent race condition in checkpoint service initialization

- Only assign service to cline.checkpointService after successful initialization
- Add proper cleanup on initialization failure
- Prevents service from being in inconsistent state if Git check fails

* fix: remove checkpoint save from presentAssistantMessage for update_todo_list case

---------

Co-authored-by: Daniel Riccio <ricciodaniel98@gmail.com>
2025-08-03 19:21:45 -04:00
Matt Rubens
82a007a211
Fix the UI for approving chained commands (#6623) 2025-08-03 02:15:45 -04:00
Chris Estreich
b2d2a2c5d2
Task and TaskProvider event emitter cleanup + a few new events (#6606)
Co-authored-by: Roo Code <roomote@roocode.com>
2025-08-02 11:12:44 -07:00
Matt Rubens
305a5da369
Clean up the auto-approve UI (#6538)
* Clean up the auto-approve UI

* Update webview-ui/src/components/settings/AutoApproveSettings.tsx

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

* Fix

* Translations

---------

Co-authored-by: roomote[bot] <219738659+roomote[bot]@users.noreply.github.com>
2025-08-01 07:49:42 -04:00
Kevin Taylor
079fc22a66
Add Cerebras as a provider (#6392) 2025-07-31 18:17:54 -04:00
Chris Hasson
1da82b2db0
Add auto-approved cost limits (#6484)
Co-authored-by: Daniel Riccio <ricciodaniel98@gmail.com>
2025-07-31 15:33:09 -04:00
Piotr Wilkin (ilintar)
1a013b4416
fix: LM Studio model context length (#5075) (#6183)
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
Co-authored-by: Daniel <57051444+daniel-lxs@users.noreply.github.com>
Co-authored-by: Daniel Riccio <ricciodaniel98@gmail.com>
2025-07-31 15:31:04 -04:00
Daniel
74672fafcb
fix: restore message sending when clicking save button (#6487) 2025-07-31 11:36:40 -04:00
Matt Rubens
de359a465c
Handle more variations of chaining and subshell command validation (#6486) 2025-07-31 11:28:43 -04:00
Will Li
83280a0d40
feat: Add Task History Context to Prompt Enhancement (#6343) 2025-07-30 16:54:33 -04:00
AntiMoron
4b45a4e7f2
Support new LLM provider: Doubao (#6345)
Co-authored-by: Daniel Riccio <ricciodaniel98@gmail.com>
2025-07-30 16:54:16 -04:00
roomote[bot]
2217a3d548
feat: auto-refresh marketplace data when organization settings change (#6446)
- Added organizationSettingsVersion to ExtensionState type
- Modified ClineProvider to include version in state sent to webview
- Updated CloudService callback to trigger marketplace refresh on settings change
- Added logic to MarketplaceView to detect version changes and request data refresh
- Added comprehensive tests for the new functionality

This ensures marketplace items (MCPs and modes) stay in sync when organization settings are updated in the cloud.

---------

Co-authored-by: Roo Code <roomote@roocode.com>
Co-authored-by: John Richmond <5629+jr@users.noreply.github.com>
2025-07-30 13:52:28 -07:00
Jorge Piedrahita Ortiz
75f93c41cf
feat: add SambaNova provider integration (#6188) 2025-07-30 12:47:12 -04:00
Chris Hasson
fcbff29d04
fix(chat): Prevent input clearing when clicking chat buttons (#6222)
Co-authored-by: Chris Hasson <noreply@example.com>
Co-authored-by: Daniel <57051444+daniel-lxs@users.noreply.github.com>
2025-07-30 10:51:03 -04:00
Matt Rubens
d7c1c74fef
Hide Gemini checkboxes on the welcome view (#6415) 2025-07-30 10:46:18 -04:00
Matt Rubens
f49d8bc199
Allow queueing images (#6414) 2025-07-29 23:57:55 -04:00
Matt Rubens
8f7ac57e47
Add docs link for slash commands (#6409) 2025-07-29 22:46:37 -04:00
Matt Rubens
3d3d4aea65
Fix zap hover (#6388) 2025-07-29 18:00:32 -04:00
John Richmond
6a42e91b15
Cloud: add organization MCP controls (#6378)
- Add option to hide mcps from the marketplace
- Add ability to define new organization mcps
2025-07-29 14:11:51 -07:00
Matt Rubens
2c2a7842c4
Improvements to subshell validation (#6379) 2025-07-29 15:30:07 -04:00
Matt Rubens
4a934f4407
chore: add changeset for v3.25.0 (#6358)
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-07-29 11:52:57 -04:00
Christiaan Arnoldus
0ea81a19f6
Remove duplicated assignment (#6355) 2025-07-29 10:54:44 -04:00
Matt Rubens
00a3738d30
Better command highlighting (#6336) 2025-07-29 01:42:17 -04:00
Matt Rubens
e117208c29
Command argument hints and change release engineer to a command (#6333) 2025-07-29 00:42:28 -04:00
Sam Hoang Van
017622d3e3
feat(tools): add image support to read_file tool (#5172)
Co-authored-by: Daniel <57051444+daniel-lxs@users.noreply.github.com>
Co-authored-by: Daniel Riccio <ricciodaniel98@gmail.com>
2025-07-28 23:23:33 -04:00
roomote[bot]
93930643c6
feat: Add experimental setting to prevent editor focus disruption (#6214)
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
Co-authored-by: Roo Code <roomote@roocode.com>
Co-authored-by: Daniel Riccio <ricciodaniel98@gmail.com>
Co-authored-by: Daniel <57051444+daniel-lxs@users.noreply.github.com>
2025-07-28 23:14:53 -04:00
roomote[bot]
e3a8e03905
feat: add ESC key handling for modes, API provider, and indexing settings popovers (#6175)
Co-authored-by: Roo Code <roomote@roocode.com>
Co-authored-by: Daniel Riccio <ricciodaniel98@gmail.com>
2025-07-28 23:04:23 -04:00
Matt Rubens
e9561743a3
Support inserting mentions after a slash command (#6327)
* Support inserting mentions after a slash command

* Highlight slash commands
2025-07-28 20:58:00 -04:00
Matt Rubens
ddb9950776
Fix slash command highlighting (#6325) 2025-07-28 19:52:25 -04:00
Matt Rubens
182679d34c
Add support for slash command frontmatter descriptions (#6314) 2025-07-28 17:03:10 -04:00
Matt Rubens
785fcac625
Add a UI for managing slash commands (#6286)
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
Co-authored-by: Roo Code <roomote@roocode.com>
2025-07-28 15:57:32 -04:00
Murilo Pires
a0018c9d04
feat: add prompt caching support for LiteLLM (#5791) (#6074)
* feat: add prompt caching support for LiteLLM (#5791)

- Add litellmUsePromptCache configuration option to provider settings
- Implement cache control headers in LiteLLM handler when enabled
- Add UI checkbox for enabling prompt caching (only shown for supported models)
- Track cache read/write tokens in usage data
- Add comprehensive test for prompt caching functionality
- Reuse existing translation keys for consistency across languages

This allows LiteLLM users to benefit from prompt caching with supported models
like Claude 3.7, reducing costs and improving response times.

* fix: improve LiteLLM prompt caching to work for multi-turn conversations

- Convert system message to structured format with cache_control
- Handle both string and array content types for user messages
- Apply cache_control to content items, not just message level
- Update tests to match new message structure

This ensures prompt caching works correctly for all messages in a conversation,
not just the initial system prompt and first user message.

* fix: resolve TypeScript linter error for cache_control property

Use type assertion to handle cache_control property that's not in OpenAI types
2025-07-28 12:56:06 -07:00
roomote[bot]
1f3a107369
fix: hide Test ErrorBoundary button in production mode (#6216)
Co-authored-by: Roo Code <roomote@roocode.com>
2025-07-28 14:46:05 -04:00