Repository navigation
Add user-visible LSP status indicators #3085
Copy link
Copy link
Closed as duplicate
Description
🎯 Feature Request
Add user-visible LSP status indicators to help users understand when Language Server Protocol servers are active, working, or encountering issues.
📋 Problem Description
Currently, opencode gives no indication when LSP servers are enabled, starting, or working. Users are "flying blind" - they don't know if:
- ruby-lsp actually started when opening a Ruby project
- Why diagnostics aren't appearing (server crash? missing binary?)
- If LSP is working but just finding no issues
- Which LSP servers are active for their current project
This makes debugging language support issues difficult and reduces confidence in the tool.
🚀 Proposed Solution
Phase 1: Minimal Status Indicators (High Impact, Low Risk)
-
Status bar LSP indicator in TUI:
LSP: ✓when servers are healthyLSP: ⚠when there are issuesLSP: ✗when disconnectedLSP: 3showing diagnostic count
-
Server initialization feedback:
- Show "Starting ruby-lsp..." during initialization
- Display errors if servers fail to start
-
Enhanced debug command:
opencode debug lsp-status
- Show all active servers, versions, connections
- Display diagnostic counts and performance metrics
- Show workspace root detection results
Phase 2: Enhanced Integration
- Progress indicators for long server initialization
- Hover details on LSP status showing active servers
- Diagnostic count badges in status bar
Phase 3: Advanced Features
- LSP performance dashboard
- Server restart capabilities
- Configuration validation
🏗️ Technical Implementation Notes
The codebase is well-prepared for this feature:
- Existing status bar (
status/status.go) can be extended with LSP information - Event system (
Bus.publish()) already handles LSP diagnostics - Log levels (
--log-level debug) can control verbosity - Debug commands already exist (
debug/lsp.ts) - LSP client lifecycle already tracks server states
🎨 UI/UX Considerations
- Normal mode: Minimal status bar indicator
- Debug mode: Detailed server information
- Error states: Always visible (server failed to start, missing binary)
- Follow existing patterns in the TUI status bar
- Use color coding for quick status recognition
📊 Success Criteria
- Users can see at a glance if LSP is working
- Clear feedback when LSP servers fail to start
- Easy way to debug LSP configuration issues
- Professional experience comparable to other editors
- No performance impact on normal operations
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels
Activity
github-actions commentedon Oct 10, 2025
This issue might be a duplicate of existing issues. Please check:
Feel free to ignore if none of these address your specific case.
rekram1-node commentedon Oct 10, 2025
We have a couple other issues tracking this, we will have this support once the opentui migration is complete should be done within the week!
kierr commentedon Oct 10, 2025
FFS god damn sloppy AI, creating issues on public repos despite my firm allcaps system instruction insistence to only do so on private repos!
But to be fair, sloppy as it was in quick firing, the issue is well researched and very well written!
My fault for not scoping my PAT better! Sorry! I was trying to add this to my private fork for my own usage. But thank you, and well done on swiftly and effectively maintaining/fighting against AI slop ;)