Actually LSP Doctor
LSP setup diagnostic and fixer for Rust/TS/Ruby, but only as a full plugin.
Test report
- Verdict
- Works with setup
- Score
- Tested
- Jul 16, 2026
- Environment
- Claude Code 2.x (agent harness)
- Upstream re-checked
- Aug 10, 2026 · 1025dc9
The state-machine logic is genuinely good and I ran it for real (detect_ecosystems + write_state against a throwaway TS project, correct output both times) — but SKILL.md's own Step 1 sources lib/detect.sh, lib/ecosystems.sh, lib/state.sh and CONTEXT.md from "the plugin root ($CLAUDE_PLUGIN_ROOT)", none of which ship inside skills/actually-lsp-doctor/, so the mandated bare skill-folder copy is dead on arrival.
Scored on four weighted criteria — install, triggering, output vs. baseline, docs. How scoring works
- Installs cleanly 4/5
- Triggers reliably 5/5
- Output vs. baseline 8/10
- Docs & honesty 5/5
What Actually LSP Doctor does
Diagnoses and fixes the language-server setup for detected ecosystems (Rust, TypeScript, Ruby) in a project, running a six-state per-ecosystem machine and grounding a 'ready' verdict in a real LSP documentSymbol probe rather than a shell heuristic. Triggers on a SessionStart LSP nudge, failing LSP calls, or a direct /actually-lsp-doctor invocation.
How to install Actually LSP Doctor
git clone https://github.com/technicalpickles/pickled-claude-plugins
cd pickled-claude-plugins
mkdir -p ~/.claude/skills
cp -r plugins/actually-lsp/skills/actually-lsp-doctor ~/.claude/skills/actually-lsp-doctor
# BROKEN as a bare skill copy: Steps 1/3/6 source lib/detect.sh, lib/ecosystems.sh, lib/state.sh and read CONTEXT.md from "the plugin root ($CLAUDE_PLUGIN_ROOT)", none of which exist inside the skill folder. Real fix: copy the whole plugins/actually-lsp/ directory (lib/, hooks/, activation/, CONTEXT.md, .claude-plugin/plugin.json) and load it as an actual plugin (or export CLAUDE_PLUGIN_ROOT to point at that copy) instead of a bare skills/ copy.
Skills live in ~/.claude/skills/ (global) or .claude/skills/
(per-project). Restart Claude Code after installing.
Commands — how to trigger Actually LSP Doctor
-
/actually-lsp-doctorLSP setup diagnostic and fixer for Rust/TS/Ruby, but only as a full plugin.
It also activates on plain-language prompts like these:
-
My TypeScript language server isn't working, can you diagnose it? -
Check if rust-analyzer is properly set up in this project -
Fix the LSP setup for my Ruby project so autocomplete works again
Frequently asked questions
- Is the Actually LSP Doctor skill free?
- Yes. The skill itself is free from technicalpickles/pickled-claude-plugins. SkillProof publishes the install command and an independent test verdict at no cost.
- Does Actually LSP Doctor work with Claude Code?
- We tested it with Claude Code 2.x (agent harness) on Jul 16, 2026. Verdict: Works with setup. The state-machine logic is genuinely good and I ran it for real (detect_ecosystems + write_state against a throwaway TS project, correct output both times) — but SKILL.md's own Step 1 sources lib/detect.sh, lib/ecosystems.sh, lib/state.sh and CONTEXT.md from "the plugin root ($CLAUDE_PLUGIN_ROOT)", none of which ship inside skills/actually-lsp-doctor/, so the mandated bare skill-folder copy is dead on arrival.
- What is the Actually LSP Doctor SkillProof Score?
- 8.8/10 — installs cleanly 4/5, triggers reliably 5/5, output vs. baseline 8/10, docs & honesty 5/5.
- How do I install Actually LSP Doctor?
- Copy the install command from this page, run it in your terminal, and restart Claude Code. Skills live in ~/.claude/skills/ (global) or .claude/skills/ inside a project.
- Can I use Actually LSP Doctor with Cursor, Copilot, Gemini CLI, Codex or other AI tools?
- The SKILL.md format is native to Claude (Claude Code, Desktop, claude.ai). The instructions inside adapt to other assistants: Cursor rules, GitHub Copilot instructions, Windsurf rules, Custom GPTs, AGENTS.md for OpenAI Codex, and GEMINI.md for Google Gemini CLI — our conversion guides cover each, and the free converter on the tools page does the wrapping for you.