[FEATURE] LSP plugin recommendation should detect equivalent LSP providers already enabled
Summary
The LSP Plugin Recommendation feature suggests installing pyright-lsp even when an equivalent Python LSP provider is already enabled.
Current Behavior
When opening a Python project with basedpyright-lsp (from marketplace flaksit/flaks-claude-code-plugins) already enabled and working, Claude Code still shows "LSP Plugin Recommendation" prompting to install pyright-lsp.
Plugin is installed
╭─── Claude Code v2.1.20 ──────────────────────────────────────────────────────────────────────────────────────────────╮
│ │ Tips for getting started │
│ Welcome back Jan Frederik! │ Run /init to create a CLAUDE.md file with instructions for Cla… │
│ │ ─────────────────────────────────────────────────────────────── │
│ │ Recent activity │
│ ▐▛███▜▌ │ No recent activity │
│ ▝▜█████▛▘ │ │
│ ▘▘ ▝▝ │ │
│ Opus 4.5 · Claude Max · │ │
│ ------------------@duck.com's Organization │ │
│ ~/dev/gitlab-to-github-migrator │ │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
❯ /plugin
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Plugins Discover Installed Marketplaces (←/→ or tab to cycle)
╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ ⌕ Search… │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
Project
❯ basedpyright-lsp Plugin · flaks-claude-code-plugins · ✔ enabled
type to search · Space to toggle · Enter to details · Esc to back
LSP for Python works
❯ use LSP to show all references to GitLabToGitHubMigrator.migrate()
● I'll first find where GitLabToGitHubMigrator.migrate is defined, then use LSP to find all references.
● Searched for 2 patterns (ctrl+o to expand)
● Let me search for the migrate method in the Python file.
● Searched for 1 pattern (ctrl+o to expand)
● Now I'll use LSP to find all references to the migrate method.
● LSP(operation: "findReferences", symbol: "migrate", in: "src/gitlab_to_github_migrator/migrator.py")
⎿ Found 3 references across 3 files (ctrl+o to expand)
⎿ Found 10 new diagnostic issues in 1 file (ctrl+o to expand)
● Found 3 references to GitLabToGitHubMigrator.migrate():
┌───────────────────────────────────────────┬────────┬──────────────┐
│ File │ Line │ Location │
├───────────────────────────────────────────┼────────┼──────────────┤
│ src/gitlab_to_github_migrator/migrator.py │ 1036:9 │ Definition │
├───────────────────────────────────────────┼────────┼──────────────┤
│ src/gitlab_to_github_migrator/cli.py │ 188:23 │ Usage │
├───────────────────────────────────────────┼────────┼──────────────┤
│ tests/test_integration_real.py │ 350:31 │ Usage (test) │
└───────────────────────────────────────────┴────────┴──────────────┘
Recommendation still shows up
<img width="679" height="237" alt="Image" src="https://github.com/user-attachments/assets/a5ee872c-ccd1-47dc-9648-91688af86dcb" />
Expected Behavior
The recommendation system should detect that Python LSP functionality is already provided by an enabled plugin and skip recommending redundant plugins for the same language.
Suggested Improvement
Make the recommendation logic LSP-aware rather than just plugin-based:
- Before recommending an LSP plugin, check if any enabled plugin already provides LSP support for that language
- Alternatively, allow users to suppress specific plugin recommendations
Environment
- Claude Code version: 2.1.19
basedpyright-lspplugin enabled (from marketplaceflaksit/flaks-claude-code-plugins)- Python project
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗