-
Notifications
You must be signed in to change notification settings - Fork 2.7k
Build and installation instructions for VSIX package file #3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Contributor
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 Looks good to me! Reviewed everything up to 8a240d8 in 36 seconds
More details
- Looked at
102lines of code in3files - Skipped
2files when reviewing. - Skipped posting
2drafted comments based on config settings.
1. README.md:3
- Draft comment:
Please include information about testing, ensuring that unit tests (and integration tests, where appropriate) are mandatory for new functionality. The minimum acceptable test coverage is 80%. Tests should be deterministic and isolated, and data-testid attributes should be included on all UI elements under test. This is from our Development Standards: https://www.notion.so/Development-Standards-59febcf8ead647fd9c2ec3f60c22f3df?pvs=4#11869ad2d58180f7b224d6db54dab6b5 - Reason this comment was not posted:
Comment did not seem useful.
2. package.json:116
- Draft comment:
Please add a script for checking test coverage to ensure that the minimum acceptable test coverage of 80% is met. This is from our Development Standards: https://www.notion.so/Development-Standards-59febcf8ead647fd9c2ec3f60c22f3df?pvs=4#11869ad2d58180f7b224d6db54dab6b5 - Reason this comment was not posted:
Comment was on unchanged code.
Workflow ID: wflow_vVTbLheQHEqsDNBB
You can customize Ellipsis with 👍 / 👎 feedback, review rules, user-specific overrides, quiet mode, and more.
mrubens
approved these changes
Nov 2, 2024
Merged
roomote
pushed a commit
that referenced
this pull request
Jul 8, 2025
hannesrudolph
added a commit
that referenced
this pull request
Jul 23, 2025
- Updated SimpleInstaller.removeMode to use CustomModesManager.deleteCustomMode
- Added confirmation dialog with rules deletion warning for mode removal
- Implemented marketplaceRemoveResult message for proper UI refresh
- Added comprehensive tests for rules directory cleanup
- Updated all locale files with new confirmation dialog strings
This ensures complete cleanup when removing marketplace modes, preventing
orphaned rules directories in .roo/rules-{slug}/ folders.
layola13
added a commit
to layola13/Roo-Code
that referenced
this pull request
Oct 19, 2025
核心实现: - 修复 MessageIndexManager 返回类型,返回完整 HistoricalMessage[] - 修复 content 字段类型处理,支持字符串类型 - 增强 getStats() 方法,添加 totalConversations, totalTokens, nextGlobalIndex - 添加完整的单元测试覆盖 (17个测试用例全部通过) 测试覆盖: ✅ MessageIndexManager 单元测试 - 消息存储和索引分配 - Token估算 - 对话隔离 - 索引检索 - 统计信息 - 重置和边界情况 验收测试通过: ✅ pnpm lint ✅ pnpm check-types ✅ pnpm build ✅ pnpm vsix 实现状态: ✅ 1. 逻辑已完整接入主程序 (ClineProvider → Task → attemptApiRequest) ✅ 2. 严格按照6步流程实现 (用户输入→裁判→专家→汇总→大模型) ✅ 3. UI已可视化 (消息索引号显示 RooCodeInc#1, RooCodeInc#2, RooCodeInc#3...) ✅ 4. 有单元测试验收 (MessageIndexManager.test.ts) 基于需求文档: docs/user-requirement-intelligent-context-system.md 实现计划: docs/intelligent-context-implementation-plan.md
This was referenced Oct 20, 2025
RepairYourTech
added a commit
to RepairYourTech/Roo-Code-Knowledge
that referenced
this pull request
Nov 19, 2025
Sub-task 3.3.4: Implement Import Metadata Extraction - Added extractFileImports() method to extract all import statements from a file - Imported extractImportInfo() from metadata-extractor (Phase 2) - Imported ImportInfo type from types/metadata - Returns array of ImportInfo to be included in all chunks Implementation: - Queries tree for import_statement nodes - Uses extractImportInfo() from Phase 2 to parse each import - Returns ImportInfo[] with source, symbols, isDefault, isDynamic, alias - Gracefully handles extraction errors (import extraction is optional) Benefits: - All chunks will have import context as metadata - Addresses Issue RooCodeInc#3 from CHUNKING_ANALYSIS.md (lost import context) - Enables understanding of dependencies and types - Complements Phase 2's metadata extraction This will be integrated in Sub-task 3.3.5 to populate the imports field in CodeBlock: - Extract imports once per file - Include in all chunks from that file - Provides type and dependency context File modified: src/services/code-index/processors/parser.ts (+29 lines) Sub-task 3.3.4 complete! Next: Sub-task 3.3.5 - Implement Smart Chunking Logic
RepairYourTech
added a commit
to RepairYourTech/Roo-Code-Knowledge
that referenced
this pull request
Nov 19, 2025
Sub-task 3.3.5: Implement Smart Chunking Logic - Modified parseContent() to use semantic boundary detection - Implemented smart chunking rules for functions and classes - Integrated comment inclusion and import metadata extraction - Applied new size limits (SEMANTIC_MAX_CHARS, ABSOLUTE_MAX_CHARS) Implementation: 1. Extract File-Level Imports: - Call extractFileImports() once per file - Include in all chunks from that file (Rule 4) 2. Semantic Boundary Detection: - Check if node is semantic unit (function/class) - Apply different size rules based on node type 3. Smart Chunking Rules: - Semantic units ≤3000 chars: Keep entire unit (Rule 1 & 2) - Semantic units ≤5000 chars: Still keep together - Semantic units >5000 chars: Fall back to children (TODO: splitAtLogicalBoundaries) - Non-semantic units: Apply standard size limits (1500 chars with tolerance) 4. Comment Inclusion (Rule 3): - Call includeComments() for every chunk - Adjusts start line to include preceding comments - Uses content with comments for chunk 5. Import Metadata (Rule 4): - Include fileImports in every CodeBlock - Provides type and dependency context Key Changes: - Functions up to 3000 chars stay intact (vs 1150 chars before) - Classes up to 3000 chars stay together - All chunks include preceding comments (JSDoc, etc.) - All chunks have import metadata - Semantic completeness prioritized over strict size limits Benefits: - Addresses Issue RooCodeInc#1: Large functions no longer split mid-way - Addresses Issue RooCodeInc#2: Comments always included with code - Addresses Issue RooCodeInc#3: Import context preserved in metadata - Addresses Issue #5: Decorators stay with targets (tree-sitter includes them) Limitations: - Very large functions (>5000 chars) still fall back to children - TODO: Implement splitAtLogicalBoundaries() for intelligent splitting - TODO: Implement chunkClass() for large classes (>3000 chars) File modified: src/services/code-index/processors/parser.ts (+73 lines, -27 lines) Sub-task 3.3.5 complete! Task 3.3 complete! Next: Task 3.4 - Validate Chunking Improvements
RepairYourTech
added a commit
to RepairYourTech/Roo-Code-Knowledge
that referenced
this pull request
Nov 19, 2025
Issue RooCodeInc#1 - Error Logging: - Created GraphIndexErrorLogger instance in ServiceFactory - Pass errorLogger to GraphIndexer constructor with context - Updated GraphIndexer to use persistent error logging in all catch blocks - Errors now logged with full context (file path, operation, stack trace, block info) - Console.error still used for immediate visibility alongside persistent logging Issue RooCodeInc#2 - Delete Index Not Clearing Neo4j: - Added graphIndexer and neo4jService parameters to CodeIndexOrchestrator - Updated orchestrator.clearIndexData() to call neo4jService.clearAll() - Added comprehensive error handling and logging for Neo4j clearing - Removed misleading comment about manager layer handling Neo4j clearing - Manager now passes graphIndexer and neo4jService to orchestrator Issue RooCodeInc#3 - Disable Indexing Not Disconnecting from Neo4j: - Track neo4jService in CodeIndexManager for lifecycle management - Close Neo4j connection when codebaseIndexEnabled is set to false - Close Neo4j connection in handleSettingsChange() when feature is disabled - Close Neo4j connection in dispose() method for proper cleanup - Added comprehensive logging for all Neo4j connection close operations All three critical issues fixed with comprehensive logging for debugging.
RepairYourTech
added a commit
to RepairYourTech/Roo-Code-Knowledge
that referenced
this pull request
Nov 20, 2025
**Issue RooCodeInc#3: Neo4j Settings UI Location** ✅ FIXED - Neo4j settings were displayed OUTSIDE the main settings dropdown/form - This made them appear disconnected from the rest of the configuration - Solution: Moved Neo4j section INSIDE the main settings form (before the closing tags) - Added visual separator (border-top) to distinguish Neo4j as an optional section - Removed extra wrapper div and adjusted indentation to match form structure - Result: Neo4j settings now appear as part of the unified settings form **Changes:** - Moved Neo4j section from lines 1431-1516 (outside form) to inside the form at line 1427 - Added 'mt-4 pt-4 border-t border-vscode-panel-border' to create visual separation - Removed 'ml-6' indentation from Neo4j fields (no longer needed inside the form) - Neo4j settings now appear in the same dropdown as Qdrant, embedder, and other settings - Settings are still only visible when 'Enable Codebase Index' toggle is enabled
RepairYourTech
added a commit
to RepairYourTech/Roo-Code-Knowledge
that referenced
this pull request
Dec 5, 2025
Sub-task 3.3.4: Implement Import Metadata Extraction - Added extractFileImports() method to extract all import statements from a file - Imported extractImportInfo() from metadata-extractor (Phase 2) - Imported ImportInfo type from types/metadata - Returns array of ImportInfo to be included in all chunks Implementation: - Queries tree for import_statement nodes - Uses extractImportInfo() from Phase 2 to parse each import - Returns ImportInfo[] with source, symbols, isDefault, isDynamic, alias - Gracefully handles extraction errors (import extraction is optional) Benefits: - All chunks will have import context as metadata - Addresses Issue RooCodeInc#3 from CHUNKING_ANALYSIS.md (lost import context) - Enables understanding of dependencies and types - Complements Phase 2's metadata extraction This will be integrated in Sub-task 3.3.5 to populate the imports field in CodeBlock: - Extract imports once per file - Include in all chunks from that file - Provides type and dependency context File modified: src/services/code-index/processors/parser.ts (+29 lines) Sub-task 3.3.4 complete! Next: Sub-task 3.3.5 - Implement Smart Chunking Logic
RepairYourTech
added a commit
to RepairYourTech/Roo-Code-Knowledge
that referenced
this pull request
Dec 5, 2025
Sub-task 3.3.5: Implement Smart Chunking Logic - Modified parseContent() to use semantic boundary detection - Implemented smart chunking rules for functions and classes - Integrated comment inclusion and import metadata extraction - Applied new size limits (SEMANTIC_MAX_CHARS, ABSOLUTE_MAX_CHARS) Implementation: 1. Extract File-Level Imports: - Call extractFileImports() once per file - Include in all chunks from that file (Rule 4) 2. Semantic Boundary Detection: - Check if node is semantic unit (function/class) - Apply different size rules based on node type 3. Smart Chunking Rules: - Semantic units ≤3000 chars: Keep entire unit (Rule 1 & 2) - Semantic units ≤5000 chars: Still keep together - Semantic units >5000 chars: Fall back to children (TODO: splitAtLogicalBoundaries) - Non-semantic units: Apply standard size limits (1500 chars with tolerance) 4. Comment Inclusion (Rule 3): - Call includeComments() for every chunk - Adjusts start line to include preceding comments - Uses content with comments for chunk 5. Import Metadata (Rule 4): - Include fileImports in every CodeBlock - Provides type and dependency context Key Changes: - Functions up to 3000 chars stay intact (vs 1150 chars before) - Classes up to 3000 chars stay together - All chunks include preceding comments (JSDoc, etc.) - All chunks have import metadata - Semantic completeness prioritized over strict size limits Benefits: - Addresses Issue RooCodeInc#1: Large functions no longer split mid-way - Addresses Issue RooCodeInc#2: Comments always included with code - Addresses Issue RooCodeInc#3: Import context preserved in metadata - Addresses Issue #5: Decorators stay with targets (tree-sitter includes them) Limitations: - Very large functions (>5000 chars) still fall back to children - TODO: Implement splitAtLogicalBoundaries() for intelligent splitting - TODO: Implement chunkClass() for large classes (>3000 chars) File modified: src/services/code-index/processors/parser.ts (+73 lines, -27 lines) Sub-task 3.3.5 complete! Task 3.3 complete! Next: Task 3.4 - Validate Chunking Improvements
RepairYourTech
added a commit
to RepairYourTech/Roo-Code-Knowledge
that referenced
this pull request
Dec 5, 2025
Issue RooCodeInc#1 - Error Logging: - Created GraphIndexErrorLogger instance in ServiceFactory - Pass errorLogger to GraphIndexer constructor with context - Updated GraphIndexer to use persistent error logging in all catch blocks - Errors now logged with full context (file path, operation, stack trace, block info) - Console.error still used for immediate visibility alongside persistent logging Issue RooCodeInc#2 - Delete Index Not Clearing Neo4j: - Added graphIndexer and neo4jService parameters to CodeIndexOrchestrator - Updated orchestrator.clearIndexData() to call neo4jService.clearAll() - Added comprehensive error handling and logging for Neo4j clearing - Removed misleading comment about manager layer handling Neo4j clearing - Manager now passes graphIndexer and neo4jService to orchestrator Issue RooCodeInc#3 - Disable Indexing Not Disconnecting from Neo4j: - Track neo4jService in CodeIndexManager for lifecycle management - Close Neo4j connection when codebaseIndexEnabled is set to false - Close Neo4j connection in handleSettingsChange() when feature is disabled - Close Neo4j connection in dispose() method for proper cleanup - Added comprehensive logging for all Neo4j connection close operations All three critical issues fixed with comprehensive logging for debugging.
RepairYourTech
added a commit
to RepairYourTech/Roo-Code-Knowledge
that referenced
this pull request
Dec 5, 2025
**Issue RooCodeInc#3: Neo4j Settings UI Location** ✅ FIXED - Neo4j settings were displayed OUTSIDE the main settings dropdown/form - This made them appear disconnected from the rest of the configuration - Solution: Moved Neo4j section INSIDE the main settings form (before the closing tags) - Added visual separator (border-top) to distinguish Neo4j as an optional section - Removed extra wrapper div and adjusted indentation to match form structure - Result: Neo4j settings now appear as part of the unified settings form **Changes:** - Moved Neo4j section from lines 1431-1516 (outside form) to inside the form at line 1427 - Added 'mt-4 pt-4 border-t border-vscode-panel-border' to create visual separation - Removed 'ml-6' indentation from Neo4j fields (no longer needed inside the form) - Neo4j settings now appear in the same dropdown as Qdrant, embedder, and other settings - Settings are still only visible when 'Enable Codebase Index' toggle is enabled
RepairYourTech
added a commit
to RepairYourTech/Roo-Code-Knowledge
that referenced
this pull request
Dec 5, 2025
…light checks - Add parser-availability-checker.ts for pre-flight validation with caching - Add wasm-loader-with-retry.ts for exponential backoff retry logic - Enhance get-wasm-directory.ts with retry and better error recovery - Update languageParser.ts with retry logic and pre-flight checks - Update parser.ts to integrate new utilities and improve error handling - Enhance wasm-diagnostics.ts with recovery suggestions and health monitoring - Add comprehensive test suites for WASM loading and availability checking - Add validation script and GitHub Actions workflow for WASM testing - Update package.json with new WASM validation and test scripts This addresses WASM-related fallback triggers RooCodeInc#2, RooCodeInc#3, RooCodeInc#4, and #5 with a defense-in-depth strategy including pre-flight checks, retry logic, and diagnostics.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Roo Packaging and Installation
Packaging
package.jsonbin/directoryInstallation
Install the plugin using the Cursor CLI:
Note: The VSIX file is checked into the git repository's
bin/directory for easy distribution.After installation, Roo Cline will appear in your Cursor's installed extensions list. You can verify this by opening Cursor's Extensions panel (Cmd/Ctrl+Shift+X) and checking under the "Installed" section.
Important
Add packaging and installation instructions for VSIX file, update
package.json, and include new VSIX file.README.mdto bump version inpackage.json, build VSIX file usingnpm run vsix, and commit the new VSIX file.README.mdto install the VSIX file using Cursor CLI.roo-cline-1.0.1.vsixtobin/directory.nametoroo-clineanddisplayNametoRoo Cline.versionto1.0.1andrepositoryURL tohttps://github.com/RooVetGit/Roo-Cline.vsixscript for packaging.This description was created by
for 8a240d8. It will automatically update as commits are pushed.