Project Spec: JetBrains Extension
1. Introduction
The JetBrains extension brings Kilo Code's AI coding capabilities to IntelliJ, PyCharm, WebStorm, and other JetBrains IDEs. An early version exists with basic autocomplete functionality. This project involves deepening the integration to match the VS Code extension's capabilities and beyond.
2. Current State
- Basic autocomplete working via the Platform extension API
- Uses the same core Kilo Code codebase as the VS Code extension
- Early prototype with room for significant architectural improvements
3. Requirements
Core Features to Build
- Full Agent Integration: Implement the full Kilo Code agent experience including chat panel, inline edits, and mode switching
- File System Watching: Real-time sync between local files and Kilo Code CLI for accurate context
- Selection & Range APIs: Support for the full JetBrains selection/range API for targeted AI actions
- Terminal Integration: Native terminal panel for agent output within the IDE
- Project-level Settings: JetBrains-specific configuration UI integrated with IDE settings
Architecture Improvements
- Refactor to use JetBrains' PSI (Program Structure Interface) for better code understanding
- Implement proper async/non-blocking patterns for all CLI interactions
- Add comprehensive error handling with IDE-native notifications
- Build robust state management for multi-file edit sessions
User Experience
- Match VS Code UX patterns where they make sense for JetBrains conventions
- Integrate with JetBrains' AI Assistant API where beneficial
- Support dark/light themes consistently
- Add keyboard shortcuts matching JetBrains conventions
4. Non-goals
- Building from scratch - this project builds on existing prototype
- Supporting every JetBrains IDE variant in v1
- Complete parity with VS Code in first iteration