Augur

Claude Code Tips

Practical tips for getting more out of Claude Code.

Claude Code Tips

Language Server Support

Claude Code has a built-in LSP tool that gives it semantic understanding of your code. Instead of pattern-matching with grep, Claude can jump to definitions, find all references, trace call hierarchies, and see type errors — the same capabilities your editor has.

What Claude gets from LSP

OperationWhat it does
Go to DefinitionJump to where a symbol is defined
Find ReferencesFind every usage of a symbol
HoverGet type info and docs for a symbol
Document SymbolsList all functions, classes, and variables in a file
Workspace SymbolsSearch for symbols across the entire project
Go to ImplementationFind concrete implementations of interfaces
Call HierarchyTrace which functions call (or are called by) a given function

After every file edit, the language server also pushes diagnostics back to Claude automatically — type errors, missing imports, undefined variables. Claude sees and fixes these in the same turn without running a compiler.

The plugins are just config files

The Claude plugin marketplace lists language server plugins for TypeScript, Python, Go, Rust, and others. They look fancy but they're minimal — each one is basically a README and a small JSON config that tells Claude which binary to run and which file extensions to associate.

Here's what the TypeScript plugin's config boils down to:

{
  "typescript": {
    "command": "typescript-language-server",
    "args": ["--stdio"],
    "extensionToLanguage": {
      ".ts": "typescript",
      ".tsx": "typescriptreact",
      ".js": "javascript",
      ".jsx": "javascriptreact"
    }
  }
}

That's it. It points at a binary and maps file extensions.

Setup

1. Install the language server binary

The plugin doesn't bundle the server — you need the actual binary on your system. For TypeScript:

npm install -g typescript-language-server typescript

2. Install the plugin from the marketplace

Inside Claude Code, run:

/plugin install typescript-lsp@claude-plugins-official

Or interactively: run /plugin, go to the Discover tab, search "typescript", and install.

3. Restart Claude Code

The LSP server initializes at startup. After installing, restart your session.

Why TypeScript matters most

TypeScript is the highest-value language server for Claude Code because:

  • Augur projects are TypeScript — every app in this monorepo is Next.js + TypeScript
  • Type errors surface instantly — Claude sees type mismatches the moment it edits a file, before you ever run tsc
  • Refactoring gets reliable — renaming a type or changing a function signature? Claude finds all real references, not just text matches
  • Import resolution works — Claude knows what's exported from each module instead of guessing

Other language servers

The same pattern works for any language. Install the binary, install the plugin:

LanguageBinaryInstall
TypeScripttypescript-language-servernpm i -g typescript-language-server typescript
Pythonpyright-langserverpip install pyright or npm i -g pyright
Gogoplsgo install golang.org/x/tools/gopls@latest
Rustrust-analyzerrustup component add rust-analyzer
PHPintelephensenpm i -g intelephense

Community marketplaces like boostvolt/claude-code-lsps extend coverage to 20+ languages including Ruby, Elixir, Dart, and Zig.

Troubleshooting

  • "Executable not found in $PATH" — the binary isn't installed or isn't in your shell's PATH. Check with which typescript-language-server.
  • High memory usage — servers like rust-analyzer and pyright can be heavy on large projects. Close and reopen Claude Code if it gets sluggish.
  • No diagnostics showing — make sure the plugin is enabled. Run /plugin and check the Installed tab.