- Modified CodeParser to accept maxBlockChars as constructor parameter
- Updated FileWatcher to receive ICodeParser via constructor injection
- Updated service-factory to create CodeParser with configured maxChunkSize
- This ensures the codebaseIndexMaxChunkSize setting actually affects parsing
Adds three new configurable parameters for codebase indexing:
- Embedding Batch Size (10-200, default 60): Number of code segments batched for embeddings
- Max Chunk Size (200-5000 chars, default 1000): Maximum characters per code chunk
- Parsing Concurrency (1-50, default 10): Number of concurrent file parsing operations
Changes:
- Added new config fields in packages/types/src/codebase-index.ts
- Updated constants in src/services/code-index/constants/index.ts
- Updated config-manager.ts to load and expose new settings
- Updated DirectoryScanner to use configurable parsing concurrency
- Added UI sliders in CodeIndexPopover.tsx for the new settings
- Added i18n translations for new settings labels
Closes#10396
* feat: add optional mode field to slash command front matter
- Add mode field to Command interface
- Update command parsing to extract mode from frontmatter
- Modify RunSlashCommandTool to automatically switch mode when specified
- Add comprehensive tests for mode field parsing and switching
- Update existing tests to include mode field
* Make it work for manual slash commands too
---------
Co-authored-by: Roo Code <roomote@roocode.com>
Co-authored-by: Matt Rubens <mrubens@users.noreply.github.com>
* Add support for skills
* fix: use type-only import for ClineProvider and relative paths in skills section
---------
Co-authored-by: Roo Code <roomote@roocode.com>
- Delete simpleReadFileTool.ts file
- Delete simple-read-file.ts prompt description file
- Delete single-file-read-models.ts types file
- Remove imports and usage from presentAssistantMessage.ts
- Remove imports and usage from prompts/tools/index.ts
- Remove export from packages/types/src/index.ts
This removes all traces of the legacy single-file read tool implementation that was used for specific models. All models now use the standard read_file tool.
Co-authored-by: Roo Code <roomote@roocode.com>
Implements grace retry error handling for 'no assistant messages' API
errors, following the same pattern as PR #10196 for 'no tools used'.
- Add consecutiveNoAssistantMessagesCount counter to Task.ts
- First failure: silent retry (grace retry)
- After 2+ consecutive failures: show MODEL_NO_ASSISTANT_MESSAGES error
- Add UI handling in ChatRow.tsx with ErrorRow component
- Add localized strings to all 18 locale files
- Add comprehensive tests for the grace retry behavior
- Normalize file content to LF after reading to ensure consistent matching
- Normalize search/replace strings to handle CRLF from model output
- Add comprehensive CRLF normalization tests for both tools
- Consistent with existing edit_file tool behavior
* fix: move array-specific properties into anyOf variant in normalizeToolSchema
Fixes read_file tool schema rejection with GPT-5-mini which requires
items property to be inside the { type: 'array' } variant when using
anyOf for nullable arrays.
Resolves ROO-262
* refactor: extract array-specific properties constant and helper function