CodeScope Codebase Graph Analysis
QwenLM/qwen-code
Answers questions about code structure, history, bugs and PR risk using a CodeScope knowledge graph and semantic index built from the repository.
Shows when to answer a code question through a real language server instead of grep, covering definitions, references, hover, outlines, and errors.
$ npx skills add weave-os/router --skill lsp-guide -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install weave-os/router lsp-guide --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/weave-os/router.git skills-src && mkdir -p .claude/skills && cp -r skills-src/install/pi-router/skills/lsp-guide .claude/skills/lsp-guide && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "lsp-guide" agent skill from https://github.com/weave-os/router/tree/main/install/pi-router/skills/lsp-guide into .claude/skills/lsp-guide/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lsp-guide", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/weave-os/router/tree/main/install/pi-router/skills/lsp-guideType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add weave-os/router --skill lsp-guide -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install weave-os/router lsp-guide --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/weave-os/router.git skills-src && mkdir -p .agents/skills && cp -r skills-src/install/pi-router/skills/lsp-guide .agents/skills/lsp-guide && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "lsp-guide" agent skill from https://github.com/weave-os/router/tree/main/install/pi-router/skills/lsp-guide into .agents/skills/lsp-guide/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lsp-guide", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add weave-os/router --skill lsp-guide -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install weave-os/router lsp-guide --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/weave-os/router.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/install/pi-router/skills/lsp-guide .cursor/skills/lsp-guide && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "lsp-guide" agent skill from https://github.com/weave-os/router/tree/main/install/pi-router/skills/lsp-guide into .cursor/skills/lsp-guide/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lsp-guide", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/weave-os/router.git --path install/pi-router/skills/lsp-guide--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add weave-os/router --skill lsp-guide -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install weave-os/router lsp-guide --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/weave-os/router.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/install/pi-router/skills/lsp-guide .gemini/skills/lsp-guide && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "lsp-guide" agent skill from https://github.com/weave-os/router/tree/main/install/pi-router/skills/lsp-guide into .gemini/skills/lsp-guide/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lsp-guide", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install weave-os/router lsp-guideInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add weave-os/router --skill lsp-guide -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/weave-os/router.git skills-src && mkdir -p .github/skills && cp -r skills-src/install/pi-router/skills/lsp-guide .github/skills/lsp-guide && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "lsp-guide" agent skill from https://github.com/weave-os/router/tree/main/install/pi-router/skills/lsp-guide into .github/skills/lsp-guide/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lsp-guide", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add weave-os/router --skill lsp-guide -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install weave-os/router lsp-guide --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/weave-os/router.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/install/pi-router/skills/lsp-guide .opencode/skills/lsp-guide && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "lsp-guide" agent skill from https://github.com/weave-os/router/tree/main/install/pi-router/skills/lsp-guide into .opencode/skills/lsp-guide/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lsp-guide", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
lsp-guideShows when to answer a code question through a real language server instead of grep, covering definitions, references, hover, outlines, and errors.
This skill is a recipe guide for an lsp tool that answers semantic questions about a symbol — where it's defined, every place it's used, its type and docs, a file's outline, or its current errors — by querying a language server for Go, TypeScript, JavaScript, Python, or Rust. It is explicit that a plain text search is not a references answer, since it includes comments and strings and misses aliased imports.
Each operation needs a line and column pointing at the identifier, and for finding every usage the suggested path is locating the declaration first, then querying references at that exact position. It also flags that the first query in a workspace is slow while the server indexes, that results are capped, and that an unsupported file type returns advice text rather than a hard error.
2 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit bc6f7fb. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
rgFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
LSP Symbol Navigation Guide loads about 794 tokens when it runs. Until then it costs about 98 tokens; SKILL.md has 406 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from weave-os/router at commit bc6f7fb, republished under its Apache-2.0 licence (© weave-os). 406 words, ~794 tokens.
.claude/skills/lsp-guide/SKILL.md (or your agent's skills folder).The lsp tool answers semantic questions through the language's own server:
it resolves through imports, types, and aliases, where grep only matches text.
Reach for it whenever the question is about a symbol; keep grep for plain
strings, comments, and file types no server supports.
| Operation | Answers | Needs |
|---|---|---|
definition | where the symbol at a position is defined | path, line, column |
references | every place the symbol at a position is used | path, line, column |
hover | type signature + docs for the symbol at a position | path, line, column |
documentSymbol | the outline (types, functions, methods) of one file | path |
diagnostics | compiler/type errors and warnings for one file | path |
Positions are 1-based, and column must point at the identifier (its first
character works). All paths resolve against the working directory.
"Where is X defined?" — from any usage site of X:
{"operation": "definition", "path": "<file>", "line": <L>, "column": <C>}.
Don't know a usage site? Find one first (see next recipe's step 1).
"Everywhere X is used" — two steps, always:
rg -n --column '\bX\b' (the --column output is
exactly the coordinate the next call needs), or documentSymbol when you
already know the file.{"operation": "references", "path": "<decl file>", "line": <L>, "column": <C>}.A grep hit list is not a references answer: it includes comments and strings, misses aliased imports, and can't distinguish same-named symbols. Step 2 is what makes the answer authoritative.
"What is this / what's its signature?" — hover at the symbol. Prefer it
over reading the definition file when you only need the type or doc comment.
"What's in this file?" — documentSymbol before reading a large file; jump
straight to the line the outline gives you.
"Did my edit break anything here?" — diagnostics on the file after
editing. It reports the server's current analysis of the saved file.
lsp_enable (see the install-lsps skill for
toolchain prerequisites).© weave-os, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in install/pi-router/skills/lsp-guide of weave-os/router.
Open the folder on GitHubat commit bc6f7fb
LSP Symbol Navigation Guide next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| LSP Symbol Navigation Guide this skillweave-os/router | 5.6k | — | ~794 | Automated safety check: Pass | Apache-2.0 | |
| CodeScope Codebase Graph AnalysisQwenLM/qwen-code | 28k | 1 repos | ~9.3k | Automated safety check: Pass | Apache-2.0 | |
| Codegraph QAQwenLM/qwen-code-examples | 143 | — | ~4.3k | Automated safety check: Pass | None | |
| Code Explainermergisi/awesome-openclaw-agents | 4k | — | ~283 | Automated safety check: Pass | MIT | |
| Failure Oriented InstrumentationArabelaTso/Skills-4-SE | 253 | — | ~2.1k | Automated safety check: Pass | Apache-2.0 | |
| Code Review ChecklistshareAI-lab/learn-claude-code | 78k | 5 repos | ~1.1k | Automated safety check: Pass | MIT |
QwenLM/qwen-code
Answers questions about code structure, history, bugs and PR risk using a CodeScope knowledge graph and semantic index built from the repository.
QwenLM/qwen-code-examples
Use CodeScope to analyze any indexed codebase via its graph database (neug) and vector index (zvec).
mergisi/awesome-openclaw-agents
Explains a pasted code snippet in plain English, returning the detected language, a one-sentence summary, how it works and one practical tip.
ArabelaTso/Skills-4-SE
Selectively instruments code to capture runtime data for debugging failures and bugs.
shareAI-lab/learn-claude-code
Reviews code against a five-part checklist covering security, correctness, performance, maintainability and testing, and reports findings in a fixed format.
kucherenko/jscpd
Measures a code port between languages or frameworks with jscpd's function-level comparison, porting tests before code and tracking what is left unmatched.
weave-os/router
Stands up the Weave model router in Docker Compose and drives it with claude -p against a real or mocked upstream to reproduce and verify routing and streaming behavior.
weave-os/router
Local test harness for the Weave router: a docker compose stack plus codex exec runs that confirm how Codex requests are routed, translated and marked.
weave-os/router
Works through every review comment on a pull request in one pass, fixes what it can, escalates human decisions and keeps CI churn to a single push.
weave-os/router
Correlates a Claude Code session's local transcript with a model router's production cloud logs to explain why a specific response rendered the way it did.
weave-os/router
Installs a language server such as gopls, typescript-language-server, pyright or rust-analyzer and, with explicit confirmation, its underlying toolchain so the lsp tool can use it.
weave-os/router
Correlates a Codex CLI session's local transcript with a model router's production logs to explain why a reply rendered the way it did.
Works with
Categories
Shows when to answer a code question through a real language server instead of grep, covering definitions, references, hover, outlines, and errors. This skill is a recipe guide for an lsp tool that answers semantic questions about a symbol — where it's defined, every place it's used, its type and docs, a file's outline, or its current errors — by querying a language server for Go, TypeScript, JavaScript, Python, or Rust. It is explicit that a plain text search is not a references answer, since it includes comments and strings and misses aliased imports.
LSP Symbol Navigation Guide fits situations like: finding every place a function or variable is actually used in code; checking what broke in a file immediately after an edit; getting a file's outline before reading all of it.
Run `npx skills add weave-os/router --skill lsp-guide -a claude-code`. Or copy the skill folder (install/pi-router/skills/lsp-guide in weave-os/router) into .claude/skills/lsp-guide in your project. Claude Code loads it when a task matches its description.
Run `npx skills add weave-os/router --skill lsp-guide -a codex`. Or copy the skill folder (install/pi-router/skills/lsp-guide in weave-os/router) into .agents/skills/lsp-guide in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add weave-os/router --skill lsp-guide -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/lsp-guide, .gemini/skills/lsp-guide, .github/skills/lsp-guide and .opencode/skills/lsp-guide in your project.
Going by SKILL.md and its folder, LSP Symbol Navigation Guide needs the command-line tools its instructions call (rg). Our summary lists: A workspace with a language server available for the target language.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
LSP Symbol Navigation Guide is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 794 tokens (SKILL.md is roughly 3.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with LSP Symbol Navigation Guide: CodeScope Codebase Graph Analysis (QwenLM/qwen-code, 28k stars), Codegraph QA (QwenLM/qwen-code-examples, 143 stars), Code Explainer (mergisi/awesome-openclaw-agents, 4k stars) and Failure Oriented Instrumentation (ArabelaTso/Skills-4-SE, 253 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
weave-os (a GitHub organization) maintains it in weave-os/router, which has 5,579 GitHub stars. The repository holds 19 skills in this directory. The repository was last updated on October 9, 2026.
Source: weave-os/router on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.