* [clinerules] search clinerule in parent folders which make it easier to share common clinerules for a git repo
* fix indent
* Fix test
---------
Co-authored-by: Ying Liu <lying@microsoft.com>
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
Use compact line number format matching read_file/search_files to:
- Reduce token usage in AI responses
- Simplify output parsing
Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
Co-authored-by: Eric Wheeler <roo-code@z.ewheeler.org>
* 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>
* feat: Add the openAiR1FormatEnabled field to enable this switch in OpenAI compatible mode to support the current QWQ and future additional classes of R1 models.
* feat: Add the openAiR1FormatEnabled field to enable this switch in OpenAI compatible mode to support the current QWQ and future additional classes of R1 models.
* fix: add miss i18n
* fix: add miss i18n
* fix: remove the redundant call
---------
Co-authored-by: xiong <yueminxiong.xym@alibaba-inc.com>
* 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>
- Corrected error causing free models listed under openrouter to show pricing information
- Updated pre-push and pre-commit scripts to work in Windows environments when pushing to branch (windows requires npm/npx to include the ".cmd" extension to recognize and compile.
When maxReadFileLine setting was set to zero, the code would attempt to read lines with a negative end index
(maxReadFileLine - 1 = -1), causing the readLines function to reject the request.
This change:
- Checks if maxReadFileLine is greater than zero before calling readLines
- Returns an empty string when maxReadFileLine is zero
- Ensures content is only formatted with line numbers when it's not empty
Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>
Co-authored-by: Eric Wheeler <roo-code@z.ewheeler.org>
Add tests that validate:
- Original content with unescaped markers
- Search content with escaped markers to match unescaped markers in original content
- Proper validation of escaped search, separator, and replace markers in diff content
- Successful application of diffs with escaped markers in search content
Signed-off-by: Eric Wheeler <roo-code@z.ewheeler.org>