Commit graph

56 commits

Author SHA1 Message Date
kcwhite
a4c91c65b3
Adding support for custom VPC endpoints when using AWS Bedrock models (#3947)
* feat: Add custom VPC endpoint support for AWS Bedrock

* fix: Fix TypeScript error in Bedrock.tsx

* fix: Update VPC endpoint UI to match Cline's implementation

* Fix AWS Bedrock VPC endpoint UI implementation

- Changed checkbox label to 'Use custom VPC endpoint' to match Cline

- Fixed conditional rendering to show text field when checkbox is checked

- Ensured placeholder text appears correctly

- Maintained proper styling for consistency

* Fix AWS Bedrock VPC endpoint UI implementation to match Cline exactly

- Added state variable to track checkbox selection

- Fixed conditional rendering to show/hide text field based on checkbox state

- Maintained proper styling and placeholder text

* Fix AWS Bedrock VPC endpoint UI implementation with proper event handling

- Fixed checkbox onChange handler to accept boolean directly instead of event object

- Added unit tests to verify the behavior

- Maintained proper styling and placeholder text

* Update Bedrock VPC endpoint tests with proper test IDs

* Improve AWS Bedrock VPC endpoint text field alignment

- Removed left margin from text field to align with checkbox

- Maintained proper styling and placeholder text

* Preserve AWS Bedrock VPC endpoint URL when toggling checkbox

- Added awsBedrockEndpointEnabled field to schema

- Modified Bedrock provider to check both endpoint URL and enabled flag

- Updated UI to preserve endpoint URL when checkbox is toggled

- Maintained proper alignment with checkbox

* Implement AWS Bedrock Custom VPC Endpoint functionality

* fix: update ApiConfiguration to ProviderSettings in Bedrock tests and regenerate types

* fix: update all instances of ApiConfiguration to ProviderSettings in Bedrock tests

* Fixed broken unit test

* Add changeset for Bedrock VPC endpoint support

* informative placeholder

* Bug fixes

* Fixed failing tests

* Add example URLs to Bedrock VPC endpoint section and update tests

* Fix truncated test assertion in Bedrock.test.tsx that was breaking the UI

* Refactor mock components in Bedrock.test.tsx for improved data-testid handling

* feat(i18n): add VPC endpoint translations for AWS Bedrock settings

* test: update Bedrock component tests for internationalized strings

---------

Co-authored-by: Kevin White <kcwhite@ancestry.com>
Co-authored-by: Daniel <57051444+daniel-lxs@users.noreply.github.com>
Co-authored-by: Daniel Riccio <ricciodaniel98@gmail.com>
2025-05-30 22:19:34 -04:00
Chris Estreich
7820b7517a
Roo Code Cloud (#4069)
Co-authored-by: John Richmond <5629+jr@users.noreply.github.com>
2025-05-28 20:43:30 -07:00
Chris Estreich
e66136f1aa
Add a new @roo-code/types package and use it everywhere (#3912) 2025-05-26 12:06:45 -07:00
Chris Estreich
6931cc9262
Fix global settings export (#3890) 2025-05-23 01:33:40 -07:00
SannidhyaSah
d149d65e14
Feature/condensing enhancements (#3826)
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
Co-authored-by: Your Name <you@example.com>
2025-05-22 17:26:46 -04:00
Daniel
27e47de3aa
Add Gemini Flash 2.5 05-20 variants for the Vertex provider (#3758)
* feat(api): add gemini-2.5-flash-preview-05-20 model configuration

* feat(tests): update apiModelId to gemini-2.5-flash-preview-05-20 in ProviderSettingsManager tests in case the old version is deprecated

* chore: add changeset

* feat(api): update vertexModels to add gemini-2.5-flash-preview-05-20 variants

* chore: update changeset
2025-05-20 21:13:21 -04:00
Matt Rubens
737bad6061
Use yaml as default custom modes format (#3749) 2025-05-20 16:44:29 -04:00
R-omk
527050eeb0
Add YAML support for .roomode files alongside JSON processing (#3711) 2025-05-20 09:59:23 -04:00
Chris Estreich
dc694efdb2
Import settings bug fix / improvements (#3657) 2025-05-15 23:21:55 -07:00
John Richmond
8cb5c4e9e3
Restore profile management work + fix #3434 (#3449)
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-05-12 15:47:09 -04:00
Matt Rubens
730d037a12
Revert "Improve provider profile management in the external API (#3386)" (#3440) 2025-05-10 08:27:37 -04:00
Chris Estreich
302dc2dcba
Export more types to the external API (#3383) 2025-05-09 00:05:29 -07:00
Chris Estreich
c21aa230e3
Get rid of ApiConfiguration type alias, rename ApiConfigMeta to ProviderSettingsEntry (#3380) 2025-05-08 23:52:18 -07:00
Chris Estreich
55b72a530c
Simplify the process of setting the "active" provider profile (#3366)
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-05-08 20:59:59 -07:00
John Richmond
a79d18739a
Stop leaking other provider settings (#3357)
* Stop leaking other provider settings

* Also filter out leaked properties on export
2025-05-08 17:49:07 -07:00
Aljosa Asanovic
01fec4c1db
fix: migrate and persist modeApiConfigs for per-mode API profiles (#3071) 2025-05-05 11:11:57 -07:00
Chris Estreich
a2dcc1869d
Improve performance of CustomModesManager (#3123) 2025-05-02 14:52:08 -07:00
Matt Rubens
a356d70669
Customizable headers for the OpenAI-compatible provider (#3056)
* Customizable headers for the OpenAI-compatible provider

* PR feedback

* Fix migration

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

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-05-01 23:30:57 -04:00
Julio Navarro
04fa72eebe
Feat: Add a new button to import settings on the welcome screen (#2811) 2025-04-28 16:07:35 -07:00
Chris Estreich
1924e10e72
Fix all linter errors (and fix the lint scripts too) (#2958) 2025-04-26 09:45:26 -07:00
Julio Navarro
418791a743
Fix: custom modes export import (#2810)
* Enhance export method in ContextProxy to filter out project custom modes, ensuring only global settings are included in the export.

* Fix issue of customModes not being imported when importing settings.

The problem was that the Custom modes are managed by the CustomModesManager, not by the context proxy.

* * Fix tests

* Update webviewMessageHandler to provide customModeManager to importSettings
2025-04-26 08:46:05 -04:00
Sacha Sayan
83133c6e6d
UI top down homescreen (#2951)
* isotrUpdate welcome screen UI components and fix unused variable

* Save collapsibility.

* Add persistence, locales.

* Top layout, expanded tips.

* Minimal 'tasks' language.

* Adjust announcement positioning/dimensions.

* Fix tests, defaults.

* Fix translations.

* Compromise-compromise.

* Final tweaks.

* More tweaks.

* More tweaks.

* Issues fix.

* Update translations, remove debug.

* Fix transparency issue.

---------

Co-authored-by: hannesrudolph <hrudolph@gmail.com>
2025-04-25 22:39:11 -04:00
Chris Estreich
cb29e9d56f
Remove ModelInfo objects from settings (#2939) 2025-04-25 15:23:25 -07:00
Matt Rubens
648c6e7d28
Move diff editing config to provider settings (#2655)
* Move diff editing config to provider settings

* Fix tests
2025-04-15 14:59:27 -04:00
Chris Estreich
6f8f8c6a1d
Parse providers individually (#2611)
* Parse providers individually

* Remove .strict()

* Clean up tests
2025-04-14 14:51:53 -07:00
Ross McFarland
58149a083e
Clean up global rateLimitSeconds & fully shift to provider version (#2408)
* Directly use provider rateLimitSeconds and remove uneeded default

* remove a bunch of unused rateLimitSeconds references

* rateLimitSettings field def in  GlobalSettingsRecord isn't needed for migration
2025-04-08 11:21:54 -04:00
Ross McFarland
260fc30043
feat(settings): Rate-limit setting updated to be per-profile (#2376)
* Rate-limit setting updated to be per-profile

* Correct rateLimitSeconds translations

* Add missing d to rateLimitSecondsMigrate

* Fix fr rate-limit translation
2025-04-07 16:24:38 -04:00
Greg Taylor
a3e6c912b0
Add profile management functions to API (#2251)
Co-authored-by: Greg Taylor <gregtaylor@netflix.com>
2025-04-03 01:40:07 -04:00
Chris Estreich
3322e08cb7
Relax provider profiles schema and log parse error to PostHog (#2139)
* Relax provider profiles schema and log parse error to PostHog

* Create wise-moose-shop.md

---------

Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-03-30 23:07:34 -07:00
Chris Estreich
23d1bbfd1a
Preserve existing provider profiles when importing (#2052) 2025-03-30 23:38:26 -04:00
feifei
d3df954797
Fix switching profiles to ensure only the selected profile is switche… (#2119)
Fix switching profiles to ensure only the selected profile is switched for all modes, and optimize certain i18n keys.

Signed-off-by: feifei <liuyansheng1121@gmail.com>
2025-03-30 14:15:27 -04:00
Chris Estreich
2303f67afb
Clean up the way we compute the current diff strategy (#2049)
* Clean up the way we compute the current diff strategy

* Add changeset
2025-03-30 02:08:37 -04:00
Chris Estreich
dbe0ede9a7
Handle null [x]ModelInfo types, recover from settings schema parse errors (#2064) 2025-03-28 09:59:58 -07:00
Chris Estreich
d4c7493674
Remove redundant zod schemas (#2051)
Add changeset
2025-03-27 21:59:51 -07:00
Chris Estreich
0fd399de78
Automatically generate roo-code.d.ts (including type generation via zod-to-ts) (#2024) 2025-03-27 09:38:56 -07:00
Chris Estreich
a414c7d028
Wrangle our settings-related types and add support for settings import / export (#1997)
* Strongly type our settings use composition where possible

* Update src/core/contextProxy.ts

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

* Update src/core/contextProxy.ts

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

* Add comment, tweak function name

* Add changeset

* Clean up toolGroup types

* Comments tweak

* Remove unused type

* More type safety

* Improve import / export, add translations

---------

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-03-26 16:29:01 -07:00
jwc11
55bbe88e39
feat: add pinning and sorting for API configurations dropdown (#2001)
* feat: add pinning functionality for API configurations

Added the ability to pin/unpin API configurations, enabling prioritized appearance in dropdown menus.
- modified state management to support storing pinned configurations persistently.
- Updated UI components to display and toggle pin states
- Adjusted backend handling for syncing pinned configuration states across sessions.

* refactor: add support for loading API configurations by ID

- Introduced a new method `loadConfigById` in `ConfigManager` to load API configurations using their unique ID.
- Refactored the dropdown and pin logic to work with ID
- Added tests to verify the new functionality for loading configurations by ID.

* fix: preserve existing API config ID on updates

- Ensure that the existing ID is retained when updating an API config.
- Prevents unintentional ID changes during configuration updates.

* Fix theme issues

---------

Co-authored-by: james <james@systemslogiq.com>
Co-authored-by: cte <cestreich@gmail.com>
2025-03-26 11:29:24 -07:00
Steven T. Cramer
8ad4fff0d2
Removed hardcoded filenames to GlobalFileNames constants. (#1904)
* Replace hardcoded custom modes filename with GlobalFileNames constant

* Remove 'cline' prefix from mcpSettings filename

* Use GlobalFileNames.customModes in modes.ts

* replace two more `cline_mcp_settings` with `mcp_settings` in tests.

* feat: add settings file migration for new file naming convention

- Implement migrateSettings function to rename legacy settings files to new format
- Migrate cline_custom_modes.json to new custom modes filename
- Migrate cline_mcp_settings.json to new MCP settings filename
- Add TODO to remove migration code in September 2025 (6 months after implementation)
- Make activate function async to support migration on startup

* Add associated changeset

* removed unused import

* refactor: move migrateSettings to dedicated utility file

- Extract migrateSettings function from extension.ts to src/utils/migrateSettings.ts
- Update extension.ts to import and use the extracted function
- Update tests to use the real implementation
- Improve dependency injection by passing outputChannel as parameter
- Enhance maintainability by isolating temporary migration code (to be removed Sept 2025)

* Update src/extension.ts

---------

Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-03-24 13:32:44 -04:00
teddyOOXX
23af4c2609
add multiple workspaces support (#1725)
feat: add multiple workspaces support

- Add getWorkspacePath function to centralize workspace directory path retrieval
- Use the new workspace directory retrieval logic in Cline, Mentions, ClineProvider, and WorkspaceTracker
- Update WorkspaceFile on tab switch and prevent redundant updates by checking prevWorkSpacePath
- Fix the bug that loads the contents of the previous tab when quickly switching tabs
- Optimize getWorkspacePath return value for better reliability

Co-authored-by: xiong <yueminxiong.xym@alibaba-inc.com>
2025-03-18 02:14:39 -04:00
Chris Estreich
159621cea6 Move & clean up model fetchers 2025-02-25 11:35:24 -08:00
Matt Rubens
1cbe7228da Create .roomodes file if needed 2025-02-18 22:09:36 -05:00
System233
2943d655cf Fix input box revert issue and configuration loss during profile switch #955 2025-02-18 01:02:51 +08:00
Matt Rubens
5c9fea93f5 Fix some test warnings 2025-02-14 09:10:38 -05:00
Matt Rubens
7bbf097fa8 Validate custom modes schema before creation from the UI 2025-02-14 08:54:11 -05:00
Matt Rubens
7c6fe52c80 Add support for project-specific .roomodes 2025-02-13 23:14:59 -05:00
Matt Rubens
5f8a8887fb Validation fixes 2025-01-24 12:46:10 -05:00
Matt Rubens
6c3c216034 Add test to confirm this works with custom modes 2025-01-24 00:30:24 -05:00
Matt Rubens
4e77fb93bb Allow architect mode to write md files 2025-01-23 23:41:47 -05:00
Matt Rubens
b8e0aa0cde Custom modes 2025-01-21 09:39:54 -05:00
Matt Rubens
993ebaf999 Clean up the settings page 2025-01-20 13:29:45 -05:00