Commit graph

1779 commits

Author SHA1 Message Date
Matt Rubens
ba307f8e1f
Revert "♻️ refactor(webview): move webview HTML generation to WebviewHTMLManager" (#2502)
Revert "♻️ refactor(webview): move webview HTML generation to WebviewHTMLMana…"

This reverts commit e70954f3de.
2025-04-11 17:32:29 -04:00
KJ7LNW
9c3c93567b
Merge pull request #2427 from KJ7LNW/fix-vscode-lm-content-preservation
fix: preserve content integrity in VS Code LM provider
2025-04-11 17:10:54 -04:00
Matt Rubens
9dead72ace
Merge pull request #2456 from KJ7LNW/fix-misc-terminal-issues
Terminal improvements: command delay, PowerShell counter, and ZSH EOL mark
2025-04-11 17:04:42 -04:00
Eric Wheeler
4ef62c6a13 feat: add ZDOTDIR handling for zsh shell integration
Creates a temporary ZDOTDIR to handle zsh shell integration properly while preserving user's zsh configuration. This ensures VSCode shell integration works correctly with zsh without modifying the user's existing setup.

- Add terminalZdotdir setting (disabled by default)
- Create temporary directory with proper security (sticky bit)
- Add automatic cleanup on terminal close
- Add translations for all supported languages

User confirmed fixes:

Fixes: #2205
Fixes: #2129

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-04-11 13:09:41 -07:00
Bhavesh Ramburn
e70954f3de
♻️ refactor(webview): move webview HTML generation to WebviewHTMLManager (#2494)
- 【What】Move the logic for generating webview HTML content from ClineProvider to a new WebviewHTMLManager class.
- 【Why】This improves code organization and maintainability by separating concerns related to webview HTML generation.
- 【Why】This allows for easier testing and modification of the HTML generation logic without affecting the ClineProvider class.
2025-04-11 15:40:07 -04:00
Eric Wheeler
b4c67f133b feat: add terminal settings for Oh My Zsh and Powerlevel10k shell integration
Added two new terminal settings:
- terminalZshOhMy: Sets ITERM_SHELL_INTEGRATION_INSTALLED=Yes for Oh My Zsh
- terminalZshP10k: Sets POWERLEVEL9K_TERM_SHELL_INTEGRATION=true for Powerlevel10k

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-04-10 21:18:37 -07:00
Eric Wheeler
b020e46076 fix: clear ZSH EOL mark to prevent command output interpretation issues
Added a new configuration option 'terminalZshClearEolMark' (default: true) that
sets PROMPT_EOL_MARK='' in the terminal environment. This prevents issues with
command output interpretation when the output ends with special characters like '%'.

Added translations for all supported languages.

Fixes: #2194
Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-04-10 21:18:37 -07:00
Eric Wheeler
211e31b8f6 feat: add terminalPowershellCounter configuration option
Add a new configuration option that allows users to toggle the PowerShell counter workaround. This workaround adds a counter to PowerShell commands to ensure proper command execution and output capture.

The setting is disabled by default, allowing users to enable it only when needed.

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-04-10 21:18:37 -07:00
Eric Wheeler
4d1cfe8141 feat: add terminal.commandDelay setting
Add a new configurable setting to control command execution delays in terminals.
When set to a non-zero value, this adds a sleep delay after command execution
via PROMPT_COMMAND in bash/zsh and start-sleep in PowerShell.

The default value is 0, which disables the delay completely. This setting
replaces the previous hardcoded delay of 50ms that was added as a workaround
for VSCode bug #237208.

Fixes: #2017
Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-04-10 21:18:37 -07:00
Eric Wheeler
902d6d5017 fix: prevent UI hang when shell integration is unavailable
When shell integration is unavailable, the UI would hang because the process
was never properly released. This change fixes the issue by:
- Emitting a 'completed' event with a descriptive message
- Marking the terminal as not busy
- Clearing the active stream
- Allowing the process to continue

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-04-10 21:18:37 -07:00
Eric Wheeler
0b0c438284 fix: standardize terminal integration timeout values
Replace hardcoded 3000ms timeout with configurable Terminal.shellIntegrationTimeout
in TerminalProcess.ts. This ensures consistent timeout behavior across all
terminal integration features and allows users to control both timeouts through
a single setting.

The error messages are also updated to display the dynamic timeout value,
providing clearer feedback when shell integration issues occur.

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-04-10 21:18:37 -07:00
Matt Rubens
e41d6a42ac
Better display of diff errors (#2478) 2025-04-10 22:32:11 -04:00
ronyblum
a031b74bf5
Modification of AWS Bedrock to Amazon Bedrock (#2473)
* Modification of AWS Bedrock to Amazon Bedrock

* Duplicated comment removal
2025-04-10 15:47:34 -04:00
Sam Hoang Van
5352beb95c
feat: Add file context tracking system (#2440)
* feat: Add file context tracking system

This commit adds a comprehensive file context tracking system that monitors file operations (reads, edits) by both Roo and users. The system helps prevent stale context issues and improves checkpoint management.

Key features:
- Track files accessed via tools, mentions, or edits
- Monitor file changes outside of Roo using file watchers
- Store file operation metadata with timestamps
- Trigger checkpoints automatically when files are modified
- Prevent false positives by distinguishing between Roo and user edits

The implementation includes:
- New FileContextTracker class to manage file operations
- Type definitions for file metadata tracking
- Integration with all file-related tools
- File mention tracking in the mentions system
- Improved checkpoint triggering based on file modifications

* Update src/core/context-tracking/FileContextTracker.ts

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

* Update src/core/context-tracking/FileContextTracker.ts

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

* test: Add mocks for getFileContextTracker in Cline tests

---------

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-04-10 10:56:52 -04:00
amittell
1445bb0a3c
Make Grok3 streaming work with OpenAI Compatible (#2449) 2025-04-10 00:35:49 -04:00
Matt Rubens
c18e25f4bc
Fall back on aggressive line number stripping in diffs (#2453)
* Add option for aggressive line number stripping

* Fall back on aggressive line number stripping in diffs
2025-04-10 00:29:50 -04:00
Chris Estreich
fb0dd75fe0
API fixes (#2438) 2025-04-09 08:20:17 -07:00
arthur
16d8f14371
Add o1-pro to api.ts (#2433)
Add the o1-pro model to the openai section. Sourced model info from: https://platform.openai.com/docs/models/o1-pro
2025-04-09 09:04:55 -04:00
Matt Rubens
75ba1db3ca
Improve subtasks UI (#2426) 2025-04-09 01:45:45 -04:00
KJ7LNW
270fd88cc8
refactor: improve readFileTool XML output format (#2340)
* fix: addLineNumbers handling of empty content

Empty files should not have line numbers, but non-empty files with empty content at a specific line offset should.
- If content is empty, return empty string for empty files
- If content is empty but startLine > 1, return line number for empty content at that offset
This ensures that the model does not think the file contains a single empty line.

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>

* refactor: improve readFileTool XML output format

- Remove unnecessary XML indentation that could confuse the model
- Separate file content from notices and errors using dedicated tags
- Add line range information to content tags
- Handle empty files properly with self-closing tags
- Add comprehensive test coverage

Fixes #2278

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>

* fix: always show line numbers in read_file XML output

- Always display line numbers in non-range reads
- Improve XML formatting with consistent newlines for better readability

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>

* test: update tests to match new XML format with line numbers

- Update test expectations to match the new XML format with newlines
- Update tests to expect line numbers attribute in content tags
- Modify test assertions to check for the correct line range values

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>

* fix: consistent blank line handling in addLineNumbers

- Add newline to all output
- Handle trailing newlines and empty lines consistently
- Add test cases for blank lines:
  - Multiple blank lines within content
  - Multiple trailing blank lines
  - Only blank lines with offset
  - Trailing newlines

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>

* test: use actual addLineNumbers in read-file-xml tests

- Modified extract-text mock to preserve actual addLineNumbers implementation
- Removed mock implementation of addLineNumbers
- Updated test data to account for trailing newline
- Removed unnecessary mock verification

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>

* test: ensure actual addLineNumbers function is called in tests

- Replace direct mocking of addLineNumbers with spy on actual implementation
- Add verification to ensure the real function is called when appropriate
- Add skipAddLineNumbersCheck option for cases where function should not be called
- Update test cases to use appropriate verification options
- Fix numberedFileContent to include trailing newline for consistency

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>

* fix: modify readLines to process data directly instead of line by line

- Direct data processing provides more accurate results by preserving exact content with carriage returns
- Improved performance through minimal buffering and efficient string operations
- Use string indexes to find newlines while maintaining their original format
- Handle all edge cases correctly with preserved line endings
- Add tests for various edge cases including empty files, single lines, and different line endings

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>

* test: remove unused mockInputContent variable

Remove unused variable declaration to appease ellipsis-dev linter requirements.

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>

---------

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
Co-authored-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-04-08 23:04:44 -04:00
KJ7LNW
2779e8f703
fix: clarify difference between workspace directory and terminal working directory (#2418)
* fix: clarify difference between workspace directory and terminal working directory

This commit addresses confusion between the VS Code workspace directory and
terminal working directory. Roo was not properly distinguishing between these
concepts, leading to issues when terminal commands changed directories.

- Renamed 'Current Working Directory' to 'Current Workspace Directory' throughout
- Added clearer notice when a command changes the working directory in a terminal
- Added explanation about the difference between workspace and working directories
- Updated all tool descriptions to reference 'workspace directory'

References: https://www.reddit.com/r/RooCode/s/6L19EvsFbF
Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>

* test: update directory terminology in test files

Update terminology from 'working directory' to 'workspace directory' in tests
to reflect VSCode's concept of workspace vs working directory.

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>

---------

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
Co-authored-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-04-08 22:58:33 -04:00
Matt Rubens
63c8f92393
Merge pull request #2420 from KJ7LNW/tree-sitter-eval-definitions
feat: enhance tree-sitter parsers for multiple languages
2025-04-08 22:57:07 -04:00
Matt Rubens
c2fef2d01f
Follow symlinks for rules files (#2421) 2025-04-08 22:51:58 -04:00
Eric Wheeler
c2dda05b2c feat: enhance Python tree-sitter parser with advanced language structures
This commit significantly enhances the Python tree-sitter parser to support a comprehensive range of Python language constructs, enabling more accurate and detailed code analysis.

Key improvements:
- Added support for method definitions (instance, class, and static methods)
- Added support for decorators on functions and classes
- Added support for module-level variables and constants
- Added support for async functions and methods
- Added support for property getters/setters
- Added support for type annotations in various contexts
- Added support for dataclasses
- Added support for nested functions and classes
- Added support for generator functions
- Added support for list/dict/set comprehensions
- Added support for lambda functions
- Added support for abstract base classes and methods

The parser now handles Python's rich feature set more comprehensively, including special Python patterns like decorators, type annotations, and various comprehension types. This enables better code navigation, understanding, and analysis for Python codebases.

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-04-08 19:40:19 -07:00
Eric Wheeler
56d7cf6199 feat: enhance Java tree-sitter parser with advanced language structures
This enhancement significantly expands the Java parser's capabilities to recognize and parse a wide range of Java language constructs:

- Added support for enum declarations and enum constants
- Added support for annotation type declarations and elements
- Added support for field declarations
- Added support for constructor declarations
- Added support for lambda expressions
- Added support for inner and anonymous classes
- Added support for type parameters (generics)
- Added support for package and import declarations

These improvements enable more comprehensive code analysis for Java projects, providing better definition extraction and navigation capabilities.

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-04-08 19:38:09 -07:00
Eric Wheeler
599c1849d0 feat: enhance Go tree-sitter parser with advanced language structures
This enhancement significantly expands the Go parser's capabilities to recognize and extract a comprehensive set of language constructs:

- Added support for struct and interface definitions with proper type identification
- Implemented parsing for constant declarations (both single and in blocks)
- Added support for variable declarations (both single and in blocks)
- Added recognition of type aliases with proper distinction from regular types
- Implemented special handling for init functions
- Added support for anonymous functions, including nested function literals
- Improved documentation and organization of query patterns

These enhancements enable more accurate code navigation, better symbol extraction, and improved code intelligence for Go codebases.

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-04-08 19:33:28 -07:00
Eric Wheeler
749f793c08 feat: enhance C++ tree-sitter parser with advanced language structures
This enhancement significantly expands the C++ parser's capabilities to recognize and extract a wide range of modern C++ language constructs, improving code navigation and analysis.

New supported language constructs include:
- Union declarations and their members
- Destructors and their implementations
- Operator overloading (including stream operators)
- Free-standing and namespace-scoped functions
- Enum declarations (both traditional and scoped enum class)
- Lambda expressions and their captures
- Attributes and annotations
- Method overrides with virtual/override specifiers
- Exception specifications (noexcept)
- Default parameters in function declarations
- Variadic templates and parameter packs
- Structured bindings (C++17)
- Inline namespaces and nested namespace declarations
- Template specializations and instantiations
- Constructor implementations

This enhancement provides more comprehensive code structure analysis for C++ codebases, particularly those using modern C++ features from C++11, C++14, and C++17 standards.

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-04-08 19:27:00 -07:00
Eric Wheeler
63358e794d feat: enhance TypeScript/TSX tree-sitter parser
- Enhanced the Tree-Sitter parser for JavaScript/TypeScript with support for advanced language constructs
- Modified the parser to exclude comments from the output
- Consolidated sample code in tests for better maintainability

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-04-08 19:22:10 -07:00
Matt Rubens
b01615f122
Add the option to use a custom Host header for openai-compatible (#2399) 2025-04-08 22:02:27 -04:00
Matt Rubens
08b586334b
Remove extra colon from rules content (#2409) 2025-04-08 11:40:23 -04:00
Matt Rubens
9ab4a88176
Fix typo in diff prompt (#2410) 2025-04-08 11:40:10 -04: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
Taisuke Oe
dedd655c9e
Fix a bug not to read rule files properly, under nested .roo/rules directories (#2405)
* fix .roo/rules/subdir/file path calculation

* add changeset
2025-04-08 11:17:21 -04:00
Matt Rubens
72a9e0bd39
Fix cache usage tracking for openai-compatible (#2401) 2025-04-08 01:20:45 -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
KJ7LNW
af9e471c92
dev: dynamic Vite port detection for webview development (#2339)
Implements a solution for the Vite port collision issue that allows easier development of Roo across multiple instances of VSCode in different Roo repository directories.

This may also fix crashes and strange behavior between multiple running instances that would otherwise create port conflicts. This is solved using the following automated process:
- When Vite automatically selects an alternative port, a custom plugin automatically writes the port to a '.vite-port' file in the repository root
- ClineProvider automatically reads the port from this file, falling back gracefully to port 5173 if the file doesn't exist
- No user intervention is necessary as the entire process is handled automatically
- Added detailed logging for debugging
- Added .vite-port to .gitignore

The extension now connects to the correct Vite development server port automatically, even when the default port (5173) is already in use.

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
Co-authored-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-04-07 15:12:41 -04:00
Matt Rubens
d0661fb0c7
Don't automatically convert types when parsing XML (#2389)
* Don't automatically convert types when parsing XML

* PR feedback
2025-04-07 14:57:02 -04:00
Nico Bihan
320ef77d79
Added to Vertex AI Provider gemini 2.5 Pro Preview (#2384)
* Added Gemini 2.5 Pro model to Vertex AI Provider

* Adds Gemini 2.5 Pro preview model

Adds configuration for the new Gemini 2.5 Pro preview model,
including its token limits, context window size, image support, and
pricing information.
2025-04-07 12:15:09 -04:00
Yu SERIZAWA
580672ffc8
feat: enhance rule file loading with .roo/rules directory support (#2354)
* feat: enhance rule file loading with .roo/rules directory support

- Introduced functions to safely read files and check for directory existence.
- Added capability to read all text files from a specified directory in alphabetical order.
- Updated `loadRuleFiles` to prioritize loading rules from a `.roo/rules/` directory, falling back to existing rule files if necessary.
- Enhanced `addCustomInstructions` to support loading mode-specific rules from a `.roo/rules-{mode}/` directory, improving flexibility in rule management.

This change improves the organization and retrieval of rule files, allowing for better modularity and maintainability.

* Updated strings and translations

* Add tests

* Revert changes to system prompt translations

* Fix path resolution

* Make instruction structure clearer

---------

Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-04-07 11:46:30 -04:00
Matt Rubens
0e4be83c35
Fixes to resumeTask and isTaskInHistory (#2380) 2025-04-07 11:41:08 -04:00
Franciszek Piszcz
cf74568f66
feat(RooCodeAPI): implement resumeTask and isTaskInHistory (#1672) 2025-04-07 08:19:47 -07:00
Marco Quinten
f5a4b425da
feat(browserTool): Implement hover action (#2368)
* Implement hover action for the browser action tool

* Update snapshots
2025-04-07 09:35:14 -04:00
Marco Quinten
fff8fdd3f3
feat(browserTool): Implement resize action (#2370)
* Implement resize action for browser action tool

* Update snapshots
2025-04-07 09:34:32 -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
Greg Taylor
57d97319dc
fix: persist settings on api.setConfiguration (#2341)
Values weren't being saved to the settings store, preventing
switching to newly created profiles.

Co-authored-by: Greg Taylor <gregtaylor@netflix.com>
2025-04-06 08:19:30 -07:00
KJ7LNW
5fb9af40fb
feat: enhance Rust tree-sitter parser with advanced language structures (#2335)
* test: add comprehensive Rust Tree-sitter tests

Add test suite for Rust language support in Tree-sitter:
- Verify parsing of struct definitions
- Verify parsing of method definitions within impl blocks
- Verify parsing of standalone function definitions
- Add tests for complex Rust structures
- Include skipped debug test for future diagnostics

These tests confirm the existing Rust support in Tree-sitter is working correctly and provide a foundation for future enhancements to the Rust parser.

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>

* feat: enhance Rust tree-sitter parser with advanced language structures

- Add support for additional Rust language structures:
  - Enum definitions
  - Trait definitions
  - Impl trait for struct
  - Generic structs with lifetime parameters
  - Macro definitions
  - Module definitions
  - Union types
  - Closures
  - Match expressions
  - Where clauses
  - Async functions
  - Impl blocks with generic parameters
  - Complex trait bounds

- Update tests to verify capture of these structures
- Modify debug helper to use environment variables

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>

---------

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
Co-authored-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-04-05 22:11:43 -04:00
KJ7LNW
5e0c9a71e4
fix: clamp negative line numbers when reading files (#2337)
Improve handling of AI-generated line numbers:
- Clamp negative startLine values to 0 instead of throwing errors
- Convert non-integer line numbers to integers automatically
- Only reject when line numbers aren't numbers at all

These changes prevent unnecessary model retries by handling imperfect
AI-generated line numbers gracefully, making the system more robust
when interacting with AI models.

Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
Co-authored-by: Eric Wheeler <roo-code@z.ewheeler.org>
2025-04-05 22:10:11 -04:00
Diarmid Mackenzie
7661ef97cd
Tidy up following ClineProvider refactor (#2182)
* Remove unused imports

* Restore protected status for mcpHub property

* More mcpHub tidy-up

* Remove need for access to private "view" property

Increase type flexibility so we can directly use postMessageToWebview()

* Make ensureCacheDirectoryExists private again

expose new public writeDataToCache() method to commonize code.
also decided to leave updateApiConfiguration as public, since widely used in diverse ways.

* Match naming of readModelsFromCache.

Symmetric naming of functions that complement each other.

* Decision: Leave readModelsFromCache as public

* Make updateGlobalState and setGlobalState private again

Stop using deprecated (private) method.  Use contextProxy set/getValue methods instead.
Utility functions provided for brevity.

* Add clarifying comment to explain presence of utility functions

* Prefer this/provider.log over outputChannel.appendLine

log is already public, outputChannel should be private.
But also prefer log internally for the additional value of console logging, plus code brevity.

* Lock down access to properties as far as reasonably possible

* PR feedback - don't relax type checks

---------

Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-04-05 18:00:23 -04:00
Yu SERIZAWA
d6d5670e38
feat: Add support for .roorules configuration files (#2309)
* feat: Add support for .roorules configuration files

- Add .roorules to the list of supported rule files
- Improve mode-specific rule file handling to prioritize .roorules over .clinerules
- Update file loading logic to track which rule file was successfully loaded
- Add test cases for .roorules functionality

This change maintains backward compatibility with existing .clinerules while
introducing support for the new .roorules format as the preferred configuration
method.

* refactor: simplify rule file loading by removing unused rules

- Removed .cursorrules and .windsurfrules from the list of rule files in loadRuleFiles function.

* refactor: update loadRuleFiles to return single rule file content

- Modified loadRuleFiles function to return content from the first available rule file instead of combining multiple rule files.
- Updated tests to reflect the new behavior of loading only the .roorules file content when available, ensuring clarity in rule file handling.

* fix: update prompts for deprecated rule file references

- Updated prompts in the English locale to reflect the deprecation of .clinerules in favor of .roorules.
- Added notes in the prompts indicating that .clinerules will stop working soon, ensuring users are aware of the upcoming changes.

* Translations

* Update links

* Revert README changes

* Add missing spans around links

---------

Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
2025-04-05 14:55:07 -04:00
Kyle Hoskins
8fe70e36c3
Improve combineApiRequests performance (#2318)
* Improve combineApiRequests performance

* One more optimization, and more tests

---------

Co-authored-by: cte <cestreich@gmail.com>
2025-04-05 10:51:00 -07:00