OrbitAI - AI Coding Assistant
🌟 Overview
OrbitAI transforms your VS Code into an intelligent coding workspace by connecting with Claude AI through a seamless WebSocket bridge. Organize your codebase into collections, get context-aware assistance, and maintain conversations across multiple Claude tabs - all without leaving your editor.
Why OrbitAI?
- 🎯 Context-Aware: Feed entire collections of files to Claude for better understanding
- 💬 Persistent Conversations: Maintain conversation history across sessions
- 🗂️ Smart Collections: Organize and manage code files for AI analysis
- 🔄 Real-time Sync: Direct WebSocket connection with Claude browser extension
- ⚡ Intelligent Code Editing: Apply AI suggestions with SEARCH/REPLACE blocks
- 🌍 Workspace-Aware: Collections are workspace-specific for better organization
✨ Features
🤖 AI-Powered Code Assistance
- Explain Code: Get detailed explanations of selected code
- Fix Bugs: Automatically identify and fix issues
- Refactor: Improve code quality and maintainability
- Generate Tests: Create comprehensive test suites
- Add Documentation: Generate clear, helpful comments
- Custom Edits: Describe what you want, AI does the rest
📁 Collection Management
- Create Collections: Group related files for context
- Workspace Isolation: Collections are workspace-specific
- File Management: Easy add/remove files with visual interface
- Search & Filter: Quickly find files and collections
- Tree View: Hierarchical file structure visualization
- Bulk Operations: Select/deselect files efficiently
🔗 WebSocket Integration
- Direct Connection: Connect to Claude browser extension
- Port Management: Automatic port detection and assignment
- Multi-Workspace: Each workspace can have its own server port
- Connection Status: Real-time server status monitoring
- Auto-Reconnect: Resilient connection handling
💬 Conversation Management
- Persistent History: Conversations saved across sessions
- Multi-Tab Support: Switch between different Claude tabs
- Context Injection: Automatically include file context
- Request Tracking: Monitor request/response flow
- Error Handling: Clear error messages and recovery
🚀 Installation
Prerequisites
- VS Code version 1.50.0 or higher
- Claude Browser Extension (Chrome/Edge/Firefox)
- Node.js (for extension development)
Install from VSIX
- Download the latest
.vsix
file from Releases
- In VS Code:
Extensions
→ ...
→ Install from VSIX
- Select the downloaded file
- Reload VS Code
Install from Marketplace
Coming soon to VS Code Marketplace
Build from Source
# Clone repository
git clone https://github.com/KhanhRomVN/OrbitAI.git
cd OrbitAI
# Install dependencies
npm install
# Compile
npm run compile
# Package (optional)
npm run package
🎯 Quick Start
1. Setup Connection
1. Install Claude browser extension
2. Open Command Palette (Ctrl+Shift+P / Cmd+Shift+P)
3. Run: "OrbitAI: Start Server"
4. Enter port number (default: 3031)
5. Connection status appears in sidebar
2. Create Your First Collection
1. Open OrbitAI sidebar
2. Click "Collections" tab
3. Click "+" to create collection
4. Add files from your workspace
5. Your collection is ready for AI assistance!
3. Start Coding with AI
1. Select code in editor
2. Right-click → OrbitAI → Choose action
OR
Use keyboard shortcuts:
- Ctrl+Shift+E: Explain Code
- Ctrl+Shift+F: Fix Code
- Ctrl+Shift+K: Edit Code
3. AI response appears in chat panel
4. Review and apply suggested changes
📖 Documentation
Commands
Command |
Shortcut |
Description |
OrbitAI: Start Server |
- |
Start WebSocket server |
OrbitAI: Stop Server |
- |
Stop WebSocket server |
OrbitAI: Explain Code |
Ctrl+Shift+E |
Explain selected code |
OrbitAI: Fix Code |
Ctrl+Shift+F |
Fix bugs in code |
OrbitAI: Refactor Code |
- |
Improve code quality |
OrbitAI: Generate Tests |
- |
Create test cases |
OrbitAI: Add Documentation |
- |
Generate comments |
OrbitAI: Edit Code |
Ctrl+Shift+K |
Custom code edits |
OrbitAI: Chat |
Ctrl+Shift+L |
Open chat panel |
Collection Management
Creating Collections:
- Collections are workspace-specific
- Use descriptive names
- Include related files for better context
Adding Files:
- Multiple selection supported
- Search to filter files
- Pre-selects existing files in "Add" mode
Removing Files:
- Visual selection interface
- Confirmation before removal
- Preserves file on disk
WebSocket Connection
Port Selection:
- Default: 3031
- Range: 3031-3040
- Auto-detection of existing servers
- Workspace-specific port storage
Connection States:
- 🔴 Not Connected: Server not started
- 🟢 Connected: Active WebSocket connection
- 🟡 Connecting: Establishing connection
Code Editing with AI
SEARCH/REPLACE Blocks:
AI responses can include code changes in this format:
<SEARCH>
function oldCode() {
// old implementation
}
</SEARCH>
<REPLACE>
function newCode() {
// improved implementation
}
</REPLACE>
OrbitAI automatically:
- Detects SEARCH/REPLACE blocks
- Finds exact matches in your code
- Applies changes with confirmation
- Shows diff preview (optional)
⚙️ Configuration
Settings
{
"orbitAI.maxContextTokens": 100000,
"orbitAI.autoFormatCode": true,
"orbitAI.previewChangesBeforeApplying": true,
"orbitAI.includeOpenFiles": true,
"orbitAI.includeDiagnostics": true,
"orbitAI.maxOpenFiles": 10,
"orbitAI.serverPort": 3031
}
Keyboard Shortcuts
Customize in Preferences: Open Keyboard Shortcuts (JSON)
:
{
"key": "ctrl+shift+l",
"command": "orbit-ai.chat"
},
{
"key": "ctrl+shift+e",
"command": "orbit-ai.explainCode",
"when": "editorHasSelection"
}
🏗️ Architecture
OrbitAI Extension
├── WebSocket Server (Port 3031-3040)
│ └── Communicates with Claude Browser Extension
├── Collection Management
│ ├── File System Storage
│ ├── Tree Service (Hierarchical view)
│ └── Workspace Isolation
├── Chat Interface
│ ├── Conversation Store
│ ├── Message Handler
│ └── Code Editor Integration
└── Prompt Builder
├── System Prompt
├── User Prompt
└── Collection Context
Technology Stack
- Language: TypeScript
- Framework: VS Code Extension API
- Storage: File System (workspace-specific)
- Communication: WebSocket (ws library)
- Build: Webpack
- Testing: Mocha (planned)
🤝 Contributing
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
Development Setup
# Clone and install
git clone https://github.com/KhanhRomVN/OrbitAI.git
cd OrbitAI
npm install
# Run in development mode
npm run watch
# Open in VS Code
code .
# Press F5 to start debugging
Areas for Contribution
- 🐛 Bug fixes and improvements
- ✨ New AI-powered features
- 📚 Documentation and examples
- 🧪 Tests and quality assurance
- 🌍 Internationalization
- 🎨 UI/UX enhancements
🐛 Troubleshooting
Connection Issues
Problem: Cannot connect to Claude
Solution:
1. Ensure Claude browser extension is installed
2. Check WebSocket server is running
3. Verify port is not blocked by firewall
4. Try restarting VS Code
Problem: Port already in use
Solution:
1. Use "OrbitAI: Connect to Port" command
2. Enter a different port (3031-3040)
3. Or stop other services using the port
Collection Issues
Problem: Files not appearing in collection
Solution:
1. Refresh collection view
2. Check file paths are correct
3. Ensure files are in workspace
4. Restart VS Code if needed
Chat Issues
Problem: No response from AI
Solution:
1. Check WebSocket connection status
2. Verify Claude browser extension is active
3. Check for errors in Output panel (OrbitAI)
4. Restart WebSocket server
📜 License
This project is licensed under the MIT License - see the LICENSE file for details.
👤 Author
KhanhRomVN
🙏 Acknowledgments
- Anthropic - For creating Claude AI
- VS Code Team - For the excellent extension API
- Open Source Community - For inspiration and support
📊 Project Status
- ✅ Core Features: Complete
- ✅ Collection Management: Complete
- ✅ WebSocket Integration: Complete
- 🚧 Testing Suite: In Progress
- 🚧 Marketplace Publishing: Planned
- 📋 Advanced Features: Roadmap
🗺️ Roadmap
Version 1.1 (Planned)
- [ ] Comprehensive test suite
- [ ] Performance optimizations
- [ ] Enhanced error handling
- [ ] Improved UI/UX
Version 1.2 (Future)
- [ ] Multi-language support
- [ ] Advanced code analysis
- [ ] Custom prompt templates
- [ ] Integration with other AI models
Version 2.0 (Vision)
- [ ] Collaborative features
- [ ] Cloud sync for collections
- [ ] Advanced analytics
- [ ] Enterprise features
💬 Support
If you find OrbitAI useful, please consider giving it a ⭐ on GitHub!
Made with ❤️ by KhanhRomVN