skills/golem-powers/_archive/lsp/SKILL.md
Use when needing semantic code navigation - find definitions, references, or callers. Covers LSP, go to definition, find references, hover, code intelligence. NOT for: text pattern searches (use grep), file discovery (use glob).
npx skillsauth add etanhey/golems lspInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Use this skill when you need guidance on using Claude Code's LSP (Language Server Protocol) tools for code navigation and understanding.
| Operation | Use Case | Example |
|-----------|----------|---------|
| goToDefinition | Find where a symbol is defined | Jump to function implementation |
| findReferences | Find all usages of a symbol | Before renaming a function |
| hover | Get type info and docs | Quick understanding of a type |
| documentSymbol | List symbols in a file | Understanding file structure |
| workspaceSymbol | Search symbols globally | Finding a class by name |
| goToImplementation | Find interface implementations | Working with abstract types |
| incomingCalls | Find callers of a function | Impact analysis |
| outgoingCalls | Find callees of a function | Understanding dependencies |
LSP must be configured for the language. Check:
/plugin command?1. Position cursor on symbol name
2. Use findReferences to locate ALL usages
3. Review each reference
4. Make the rename changes
5. Run typecheck to verify
1. Use goToDefinition on the entry point
2. Use hover on types you don't recognize
3. Use outgoingCalls to understand dependencies
4. Use incomingCalls to understand how it's used
1. Use findReferences on the function you're modifying
2. Use incomingCalls to see the call chain
3. Assess which callers might be affected
4. Plan your changes accordingly
1. Start at the error location
2. Use goToDefinition to trace back through the call stack
3. Use findReferences on suspicious variables
4. Identify where incorrect values originate
| Scenario | Use LSP | Use Grep/Glob | |----------|---------|---------------| | Find function definition | Yes | Fallback only | | Find all usages of a symbol | Yes | Fallback only | | Search for text patterns | No | Yes | | Search comments/strings | No | Yes | | Search config values | No | Yes | | LSP not configured | N/A | Yes |
| Language | Server | Install |
|----------|--------|---------|
| TypeScript/JS | typescript-language-server | npm i -g typescript-language-server typescript |
| Python | pyright | pip install pyright or npm i -g pyright |
| Rust | rust-analyzer | Via rustup or standalone |
| Go | gopls | go install golang.org/x/tools/gopls@latest |
| C/C++ | clangd | Via LLVM or package manager |
| Java | jdtls | Via Eclipse |
| Ruby | solargraph | gem install solargraph |
| PHP | intelephense | npm i -g intelephense |
LSP not working?
which <server-name>/plugin Errors tab for issuesNo results from findReferences?
goToDefinition fails?
tools
The human-eval UX contract for Phoenix views: turn-by-turn scrollable replay (not a scorecard), hide-but-copyable IDs, collapsed thinking, identity chips, tool filters, tiny frozen starter datasets, mark-wrong-in-thread, mobile-first. Use when: building or reviewing ANY Phoenix/eval view, annotation UI, session replay, or human-grading surface. Triggers: phoenix view, eval UI, annotation view, session replay, human eval UX, grading interface. NOT for: Phoenix data pipelines/ingest (capture scripts have their own specs).
tools
macOS systems specialist — AppKit NSPanel architecture, launchd services, socket activation, MCP bridge resilience, syspolicyd, and high-frequency SwiftUI dashboards. Use when building menu-bar apps, LaunchAgents, debugging syspolicyd/Gatekeeper/TCC, resilient UDS/MCP bridges, or SwiftUI dashboards at 10Hz+.
development
Bulk LLM-judging protocol for fleet-dispatched verdict runs (KG cluster, eval harness). Use when: dispatching or running judge workers (J1/J2/RT), planning bulk-apply from verdict JSONL, or triaging evidence_degraded outputs. Triggers: judge fleet, bulk judge, R3 verdicts, kg-judge, RT gate, evidence_degraded. NOT for: single-item code review, Phoenix view UX (use phoenix-human-view), or non-judge eval pipelines.
development
Quiet-down protocol for sprint close: when the fleet wraps, delete ALL polling crons and monitors, send ONE final dashboard + ONE message, then go SILENT. Use when: fleet wraps, all workers done, overnight queue exhausted, sprint close, Etan asleep/away with nothing approved left. Triggers: fleet wrap, wrap the fleet, stand down, going quiet, sprint close. NOT for: mid-sprint monitoring (keep your loops), spawning a successor (use /session-handoff first).