Commit graph

48 commits

Author SHA1 Message Date
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
Daniel
61e122dc34
Codebase indexing (Clean history) (#3137)
* feat: apply changes from local main

* fix: add missing types

* feat: deduplicate code blocks coming out of parser

* feat: implement a cache manager to improve cache handling

* refactor: move code index service initialization to extension and remove await from indexing process

* fix: return undefined instead of throwing if no workspace is detected

* feat: allow auto approve if it is active for read tools

* refactor: improve UI of the results and allow opening the ranges directly in the editor

* refactor: use dependency injection to improve performance

* feat: implement result filtering by directory path

* refactor: centralize path normalization logic

* refactor: remove unnecessary barrel file

* refactor: prevent restarting the service if no settings change

* fix: the indexing process should never be awaited

* refactor: cleanup unused method

* refactor: remove batch limits for ollama

* refactor(parser): simplify method signatures and improve chunking logic

- Remove redundant min/max chars parameters
- Add better handling for oversized lines
- Improve chunking logic with segment handling
- Clean up method signatures and parameter ordering

* fix(settings): make select inputs full width in CodeIndexSettings

* refactor: increase max list file limit

* feat(ui): improve codebase search result display formatting

* test: add tests for cache and config managers

* test: create unit tests for parser and scanner

* feat(parser): improve segment hash uniqueness

- Added startCharIndex to segment hash calculation in _chunkTextByLines
- Track character position when splitting oversized lines
- Ensures unique identification of segments from same line

* feat(file-watcher): add error logging and optional ignoreController injection

* fix: allow getting the state if the service is disabled

* fix: set the embedding models when cline provider is initialized

* feat: use zod to validate form

* feat(file-watcher): enhance file watcher for batched deletions and improved vector store interactions

Improve file watcher to handle file deletions in batches and optimize vector store operations.

* feat(CodeIndexSettings): move OpenAI key input to a conditional rendering block

* feat(CodeIndexSettings): update button visibility based on indexing status

* feat(file-watcher): refactor vscode mock and enhance file watcher tests

* fix(CodeIndexManager): do not await startIndexing on configuration changes

* feat(types): add codeIndexOpenAiKey and codeIndexQdrantApiKey to ProviderSettings and IpcMessage

* feat(FileWatcher): enhance file processing with batch operations and new status handling

* fix(webviewMessageHandler): handle errors during CodeIndexManager initialization

* refactor(CodeIndexManager): streamline service creation by consolidating into a single method

* feat(CodeIndex): implement minimum search score configuration and update search methods

* refactor(CodeIndexSettings): replace ApiConfiguration with ProviderSettings and update related methods

* refactor: move contants to centralized file

* refactor(constants): rename CODEBASE_INDEX_SEARCH_MIN_SCORE to SEARCH_MIN_SCORE

* feat(QdrantVectorStore): enhance search functionality with new query structure and indexing

* feat(FileWatcher): implement batch processing and retry logic for upserting points

* fix(CodeIndexSettings): rename setProviderSettingsField to setApiConfigurationField and move model label

* fix(ChatRow): remove limit from search query messages

* refactor(CodebaseSearchResult): remove unused props from component

* feat: implement batch processing for file events in FileWatcher

- Introduced a new mechanism to accumulate file events (create, change, delete) and process them in batches.
- Added debounce functionality to optimize processing frequency.
- Emitted events for batch processing start, progress updates, and completion with detailed summaries.
- Refactored existing processing logic to handle batch deletions and upserts efficiently.
- Enhanced error handling and logging for better traceability during batch operations.

* feat(CodeIndex): implement batch processing and update progress reporting

* fix: define a default url for qdrant

* feat(CodeIndexManager): add initialization check and update startIndexing logic

* feat(CodeIndexSettings): validate Qdrant URL and update settings commitment logic

* feat: refactor progress calculation and update progress bar rendering

* refactor: remove webview provider and related methods

* fix: simplify indexing status update by directly using update values

* feat: integrate .gitignore support into file processing and scanning logic

* fix: update clearCacheFile method to write an empty object instead of deleting the cache file

* Revert this

* Run prettier

* fix: add new dependencies for qdrant client and directory scanner

* feat: add codebase search functionality to localization files

* feat: add localization strings for codebase indexing settings

* feat: integrate CodeIndexSettings into ExperimentalSettings and update settings localization

* refactor: remove console logs from various components for cleaner output

* feat: enhance capabilities section and codebase search tool description

* feat: add code indexing localization for multiple languages

* fix: correct indentation for CodeIndexSettings component in ExperimentalSettings

* refactor: update unit tests to properly test current functionality

* feat: add mock implementation for p-limit and update Jest config

* feat: track file creation, change, and deletion events in accumulatedEvents

* refactor: simplify file watcher tests by removing waitForFileProcessingToFinish and using direct event accumulation

* refactor: mock ContextProxy's getValue method to return current config name in ClineProvider tests

* refactor: mock missing properties required by codebase indexing manager

---------

Co-authored-by: cte <cestreich@gmail.com>
2025-05-23 19:07:19 -06:00
Chris Estreich
f274a150c4
Get package publisher and name from package.json + command type safety (#3766) 2025-05-20 16:41:03 -07:00
Chris Estreich
7cea2e8bc4
Move presentAssistantMessage into its own module (#3345) 2025-05-08 11:59:03 -07:00
dlab-anton
c701600081
Feat: Vertical settings tabs (#2914)
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-05-06 08:48:42 -04:00
Matt Rubens
40ee5cf154
Remove help button from title bar (#3150) 2025-05-03 13:45:12 -04:00
Matt Rubens
2d8beb2ed0
Telemetry for title button clicks (#3108) 2025-05-01 23:11:32 -04:00
Chris Estreich
d07e60575b
Simplify Roo Code's quick actions (#3024)
* Quick fix actions

* Remove unused keys

* Simplify more stuff

* Bring back "Explain Code"

* Bring "Improve Code" back

* Add back "Improve"

* This is too flakey for now
2025-04-29 08:07:24 -07:00
Chris Estreich
2e1d949e65
Add support for multiple command execution strategies (#2820) 2025-04-28 08:55:07 -07:00
Chris Estreich
cb29e9d56f
Remove ModelInfo objects from settings (#2939) 2025-04-25 15:23:25 -07:00
hongzio
33ee5d6c34
Fix: focusInput open roo code panel (#2626) (#2817)
* Fix: focusInput open roo code panel (#2626)

* Fix: `roo-cline.focusInput` open roo code panel

* fixup! Fix: focusInput open roo code panel (#2626)
2025-04-23 03:06:48 -04:00
Aleksandr Kirillov
1cca4f47c7
feat: Add 'roo.acceptInput' command (#2598)
* feat: Add 'roo.acceptInput' command

* Update package.nls.json

* Update translations

---------

Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-04-15 23:01:45 -04:00
Matt Rubens
31fd6e1470
Capture telemetry for usage of code actions (#2650) 2025-04-15 10:37:48 -04:00
Hannes Rudolph
8cf3c532cf
Update log messages for Cline instances to Roo Code instances in regi… (#2604)
Update log messages for Cline instances to Roo Code instances in registerCommands.ts and corresponding test adjustments
2025-04-14 11:58:52 -04:00
Aleksandr Kirillov
88cac3c9d8
feat: add command to focus Roo Code input field (#2369)
* feat: add command to focus Roo Code input field

* fixup! feat: add command to focus Roo Code input field

* fixup! feat: add command to focus Roo Code input field
2025-04-07 07:54:49 -04:00
Matt Rubens
16c1ab9ab5
Revert "Better logic for choosing the view column when opening Roo in a tab" (#2285)
* Revert "Better logic for choosing the view column when opening Roo in a tab (…"

This reverts commit 7eea755703.

* Create hip-pumpkins-mate.md
2025-04-04 02:14:33 -04:00
Matt Rubens
7eea755703
Better logic for choosing the view column when opening Roo in a tab (#2282)
* Better logic for choosing the view column when opening Roo in a tab

* PR feedback
2025-04-03 23:59:17 -04:00
Matt Rubens
1a0117b009
Show menu buttons in tab view (#2281)
* Show menu buttons in tab view

* PR feedback
2025-04-03 23:35:22 -04:00
Chris Estreich
a73fce9027
Allow processes to access the Roo Code API via a unix socket (#2232) 2025-04-02 12:42:00 -07:00
Greg Taylor
5fbf563216
Add an activation command for other extensions (#2073)
Since VS Code provides no actionEvents that trigger when a specific
extension activates, extensions can't activate only once Roo is
activated and ready.

This commit introduces a new roo-cline.activationCompleted command
and fires it at the very end of extension activation. Other
extensions that use Roo's exported APIs can now activate when they
see this event.

Co-authored-by: Greg Taylor <gregtaylor@netflix.com>
2025-03-28 23:48:03 -04:00
Sam Hoang Van
e7e5511b65
feat: prioritize "Add to Context" and add line number tracking (#2063)
- Move "Add to Context" to the top of submenu and code actions for improved accessibility
- Add line number tracking (startLine/endLine) to EditorContext and code actions
- Update templates in support-prompt.ts to include line numbers in file references
- Ensure backward compatibility with existing code

This change improves the UX by making the frequently used "Add to Context" action more accessible and enhances context awareness by tracking and displaying line numbers for selected code.
2025-03-28 12:01:16 -04:00
Matt Rubens
4d744bb94a
New icon (#2020) 2025-03-27 00:09:07 -04:00
axb
0bc4f30c23
add new task command (#1648)
* add new task command

* Internationalize

* Revert README changes

* More i18n

* Fix tests

* Fix i18n

* Missing translations

---------

Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-03-25 11:08:11 -04:00
Jiayuan Chen
1c9daf5a48
Support customize storage path (#1941)
Co-authored-by: Your Name <your.email@example.com>
2025-03-24 15:22:55 -04:00
Matt Rubens
e810a886d2
Welcome page OAuth (#1913)
* Add Requesty OAuth flow

* New 1-click onboarding flow

* Requesty: Use correct default model info

* When called from the onboard flow, created the default profile

Glama OAuth handler changed for consistency.

* Add router images

* Shuffle the routers

* Translate

* Appease knip

---------

Co-authored-by: Daniel Trugman <dtrugman@gmail.com>
2025-03-23 10:08:16 -04:00
Matt Rubens
38655825d4
Extension-side internationalization (#1757)
* Extension-side internationalization

* Update script

* Cleaner esbuild

* Turn off debugging

* PR feedback

* Update src/i18n/locales/en/common.json

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

* Update src/i18n/locales/ca/common.json

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-03-18 10:39:21 -04:00
Chris Estreich
878b3820d2
Settings tweaks: add terminal & language sections, fix whell scroll in editor tab (#1763) 2025-03-18 00:11:57 -07:00
cte
4b23644683 Add Cline events and roofactor subtasks slightly 2025-03-12 22:52:37 -07:00
cte
4b6def5f31 ContextProxy fix - constructor should not be async 2025-03-11 14:24:21 -07:00
Eric Wheeler
e24e5b24d4 refactor: move getTerminalContents to Terminal class
This commit partially addresses the issue of duplicate handler calls by
removing an unnecessary instantiation of TerminalManager in
registerTerminalActions.ts.

Move the getTerminalContents method from TerminalManager to Terminal
class as a static method and update all references to use the new
location.

Fixes: #1380

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-03-10 20:55:05 -07:00
Eric Wheeler
75de043ded Revert "Remove terminal actions"
This reverts commit 75dcc2ffcf which has
been fixed by PR #1365.

Fixes: #1380
2025-03-10 20:53:36 -07:00
Chris Estreich
90a607f111
Merge branch 'main' into cte/roo-code-api 2025-03-10 20:29:36 -07:00
cte
f8a592aac9 Rename ClineAPI to RooCodeAPI and improve types 2025-03-10 11:16:38 -07:00
cte
5a3c20764a Follow the established pattern for command registration 2025-03-10 11:12:11 -07:00
Matt Rubens
279df6e7a4 Merge remote-tracking branch 'origin/main' into sbc_add_subtasks 2025-03-05 12:16:37 -05:00
Matt Rubens
e4fb0081b1 Update commands to roo-cline to be consistent with others 2025-03-05 10:39:36 -05:00
Matt Rubens
73ac64924e Merge remote-tracking branch 'origin/main' into human-relay 2025-03-05 10:34:03 -05:00
ShayBC
5bc1e50dae Resolved merge conflicts 2025-03-05 12:50:05 +02:00
cte
75dcc2ffcf Remove terminal actions 2025-03-04 15:38:14 -08:00
Felix NyxJae
156fe0d9fb fix: Optimize panel management, support panel references for sidebar and tab types 2025-02-28 12:06:39 +08:00
Felix NyxJae
3bb1d78c17 feat: Added human relay function and related message processing initial version 2025-02-27 18:08:05 +08:00
ShayBC
c3c3874593 subtasks alpha version (still in development) 2025-02-22 23:52:13 +02:00
Matt Rubens
a96443090a Add a help button 2025-02-12 23:14:55 -05:00
sam hoang
679866ca52 add user input 2025-02-06 10:48:34 +07:00
sam hoang
0ceb370008 feat: add terminal integration commands
- Add terminal context menu commands for:
  - Adding terminal content to context
  - Fixing failed commands
  - Explaining commands
- Implement terminal content selection and retrieval
- Add support prompts for terminal actions
- Register terminal action handlers
2025-02-06 10:27:12 +07:00
cte
2ad57ba057 Fall back to js bundle when local webview app not running in development 2025-02-03 09:19:52 -08:00
cte
aa806fdc17 Extension activation cleanup 2025-01-31 21:23:07 -08:00