Skip to content

Commit c66fed9

Browse files
authored
feat: improve @ file search for large projects (#8805)
* feat: improve @ file search for large projects - Increase default file limit from 5,000 to 10,000 (configurable up to 500,000) - Respect VSCode search settings (useIgnoreFiles, useGlobalIgnoreFiles, useParentIgnoreFiles) - Add 'maximumIndexedFilesForFileSearch' configuration setting - Add tests for new functionality Conservative default of 10k keeps memory usage low while still providing 2x improvement. Users with large projects can opt-in to higher limits (up to 500k). This is a simplified alternative to PR #5723 that solves the same problem without the complexity of caching. Ripgrep is already fast enough for 10k+ files, and the benefit of caching doesn't justify 2,200+ lines of additional code and maintenance burden. Fixes #5721 * fix: add missing translations for maximumIndexedFilesForFileSearch setting * test: improve file-search tests to verify configuration behavior
1 parent bb640bf commit c66fed9

21 files changed

+147
-4
lines changed

src/package.json

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -406,6 +406,13 @@
406406
"default": "",
407407
"description": "%settings.autoImportSettingsPath.description%"
408408
},
409+
"roo-cline.maximumIndexedFilesForFileSearch": {
410+
"type": "number",
411+
"default": 10000,
412+
"minimum": 5000,
413+
"maximum": 500000,
414+
"description": "%settings.maximumIndexedFilesForFileSearch.description%"
415+
},
409416
"roo-cline.useAgentRules": {
410417
"type": "boolean",
411418
"default": true,

src/package.nls.ca.json

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/package.nls.de.json

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/package.nls.es.json

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/package.nls.fr.json

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/package.nls.hi.json

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/package.nls.id.json

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/package.nls.it.json

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/package.nls.ja.json

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/package.nls.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@
3939
"settings.customStoragePath.description": "Custom storage path. Leave empty to use the default location. Supports absolute paths (e.g. 'D:\\RooCodeStorage')",
4040
"settings.enableCodeActions.description": "Enable Roo Code quick fixes",
4141
"settings.autoImportSettingsPath.description": "Path to a RooCode configuration file to automatically import on extension startup. Supports absolute paths and paths relative to the home directory (e.g. '~/Documents/roo-code-settings.json'). Leave empty to disable auto-import.",
42+
"settings.maximumIndexedFilesForFileSearch.description": "Maximum number of files to index for the @ file search feature. Higher values provide better search results in large projects but may use more memory. Default: 10,000.",
4243
"settings.useAgentRules.description": "Enable loading of AGENTS.md files for agent-specific rules (see https://agent-rules.org/)",
4344
"settings.apiRequestTimeout.description": "Maximum time in seconds to wait for API responses (0 = no timeout, 1-3600s, default: 600s). Higher values are recommended for local providers like LM Studio and Ollama that may need more processing time.",
4445
"settings.newTaskRequireTodos.description": "Require todos parameter when creating new tasks with the new_task tool",

0 commit comments

Comments
 (0)