Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add instructions/rjmurillo/ai-agents/lsp-firstgit clone --depth 1 https://github.com/rjmurillo/ai-agentsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/instructions/rjmurillo/ai-agents/lsp-first)<a href="https://agentmods.dev/instructions/rjmurillo/ai-agents/lsp-first"><img src="https://agentmods.dev/badge/instructions/rjmurillo/ai-agents/lsp-first.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00774 | $0.00774 |
| Opus 5 | $0.00387 | $0.00387 |
| Sonnet 5 | $0.00155 | $0.00155 |
| Haiku 4.5 | $0.00077 | $0.00077 |
Grade A, and why
ai-agents lsp-first.instructions.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 66 lines — stays where its author put it; the contents beside it link to each section on GitHub.
LSP-First Navigation
For code navigation, prefer a Language Server over text search. A symbol query (where is X defined, who calls X, what type is X) returns one file:line answer; a grep returns noisy matches and several wrong-file reads. The token difference is large on a real codebase.
This is the cross-harness source of truth. It states a preference; no runtime gate blocks a raw search. ADR-062 paired it with PreToolUse guards that blocked Read, Grep, and Glob until an LSP was tried; the 2026-07-17 amendment (issue #3214) retired them and kept the steering.
Scope is code extensions, not **: Claude reads paths, Copilot mirrors read
applyTo. Markdown, logs, and plain text go back to grep, so do not widen it.
The three tiers
For any navigation or search of a code file, prefer in this order:
- Serena MCP symbolic tools when Serena is active:
find_symbol(definition / search),find_referencing_symbols(references),get_symbols_overview(read a file's structure before reading its body),find_implementations,get_diagnostics_for_file. - Native LSP when Serena is not active: the Claude Code built-in
LSPtool (goToDefinition,findReferences,workspaceSymbol,hover,diagnostics,goToImplementation) on the Claude harness; Copilot CLI uses its language servers automatically. - grep / glob / sed only when no LSP can navigate the file. This is the last resort, not a per-language exemption: if an LSP exists for the file type, use it.
When it applies
- A symbol search (a camelCase / PascalCase / dotted / snake_case name) in a
programming-language file: use
find_symbol/find_referencing_symbols, not Grep or a symbol-shaped Glob. - Reading a code file: call
get_symbols_overview(or a navigation tool) first, then read the symbol you need, not the whole file. After a couple of navigation calls in a session, read freely. - Delegating an implementation agent: subagents cannot reach MCP tools, so pre-resolve the symbols (file:line) into the delegation prompt.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- yesterday First seen · 66 lines · 774 tokens per session scan A 30b9acf25b69
ai-agents lsp-first.instructions.md is an instructions file published in the GitHub repository rjmurillo/ai-agents (45 stars, last pushed today), licensed MIT. It adds 774 tokens to every session, about $0.0039 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other instructions, from other repositories
abtars AGENTS.md
Instructions for aksika/abtars, covering agents.md, quick commands, architecture, model-call chokepoint: spin(spec) (#1271) and external dependency: abmind.
Alex_Skill_Mall mall-maintenance-rules.instructions.md
Always-on routing for Mall maintenance work — fires the right Mall skill at the right moment. Distinguishes Mall-owned automation from out-of-scope editorial work.
gameforge AGENTS.md
Instructions for robcost/gameforge, covering general guidelines for working with nx, scaffolding & generators and when to use nxdocs.
vscode buildNext.instructions.md
Working notes and architecture documentation for the new esbuild-based build system in build/next. Use when making changes to the new build pipeline (transpile/bundle commands, NLS plugin, source-map handling, resource copying, or self-hosting watch tasks).
spec-kit AGENTS.md
AGENTS.md instructions for github/spec-kit, covering agents.md, about spec kit and specify, quickstart — add a new integration in 5 steps, integration architecture and integrationmanifest — file tracking.
codex AGENTS.md
AGENTS.md instructions for openai/codex, covering rust/codex-rs, the codex-core crate, code review rules, crate api surface and model visible context.