[Bug] typescript-lsp plugin: Server starts but textDocument/didOpen never sent
Open 💬 8 comments Opened Jan 8, 2026 by spada23
Bug Description
The typescript-lsp@claude-plugins-official plugin initializes the TypeScript Language Server successfully, but never sends textDocument/didOpen notifications when files are read via the Read tool. This results in 0 diagnostics being returned despite the LSP server running correctly.
Environment
- Claude Code Version: 2.1.1
- OS: macOS Darwin 25.3.0
- typescript-language-server: 5.1.3
- Plugin:
typescript-lsp@claude-plugins-official
Evidence from Debug Logs
✅ Server Initialization (WORKS)
[DEBUG] Loaded 1 LSP server(s) from plugin: typescript-lsp
[DEBUG] LSP client started for plugin:typescript-lsp:typescript
[DEBUG] [LSP PROTOCOL] Sending request 'initialize - (0)'.
[DEBUG] [LSP PROTOCOL] Received response 'initialize - (0)' in 56ms.
[DEBUG] LSP server instance started: plugin:typescript-lsp:typescript
✅ Diagnostics Handler Registered (WORKS)
[DEBUG] Registered diagnostics handler for plugin:typescript-lsp:typescript
[DEBUG] Applied queued notification handler for textDocument/publishDiagnostics
❌ textDocument/didOpen (NEVER SENT)
After reading .ts files via Read tool:
- Zero
didOpenin logs - Zero diagnostics (
LSP Diagnostics: Checking registry - 0 pending)
Reproduction Steps
- Enable
typescript-lsp@claude-plugins-official - Install
typescript-language-serverglobally - Start Claude Code with
--debug - Create test.ts with errors:
``typescript``
const x: string = 123;
console.log(undefinedVar);
- Read file via Read tool
- Check logs - no
didOpen, no diagnostics
Expected vs Actual
Expected: Read tool → didOpen → LSP analyzes → diagnostics returned
Actual: Read tool → (nothing) → LSP idle → 0 diagnostics
Related Issues
- #13952, #16291 - Other LSP issues
This issue has 8 comments on GitHub. Read the full discussion on GitHub ↗