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/tools-for-agents/lens/agents-mdgit clone --depth 1 https://github.com/tools-for-agents/lensWrote 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/tools-for-agents/lens/agents-md)<a href="https://agentmods.dev/instructions/tools-for-agents/lens/agents-md"><img src="https://agentmods.dev/badge/instructions/tools-for-agents/lens/agents-md.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.00717 | $0.00717 |
| Opus 5 | $0.00358 | $0.00358 |
| Sonnet 5 | $0.00143 | $0.00143 |
| Haiku 4.5 | $0.00072 | $0.00072 |
Grade A, and why
lens AGENTS.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 2d ago.
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 — 59 lines — stays where its author put it; the contents beside it link to each section on GitHub.
AGENTS.md — lens
🔎 Token-efficient code & doc retrieval for agents. FTS5 search, symbol outlines and surgical line reads, so an agent pulls just enough context instead of reading whole files. CLI + web explorer + MCP. Part of tools-for-agents.
Setup
node --version # 22+ required. Nothing to install.
npm test # = node --test
node src/cli.js index . # build the index for a repo
node src/cli.js search "some query"
node src/cli.js serve --port 7900 # the web explorer
npm run mcp # the MCP server, stdio
Zero runtime dependencies, and that is a hard rule. No dependencies in package.json, ever. Node 22+
gives you node:sqlite (FTS5 included) and a test runner.
| Env | For |
|---|---|
LENS_DB |
the index database — always redirect this in tests |
LENS_PORT |
serve port (default 7900) |
LENS_CORTEX_URL |
optional cortex link-up |
The rules this repo is built on
1. Only the picture is evidence. Run iris against any UI
change and look at the shot before saying it works. .ch-btn.brain:hover shipped from this repo at
2.72:1 and was found by hand — the --hover flag that now gates the whole kit exists because of lens,
and lens was the last repo not using it. Audit phone,tablet,desktop, both themes, with --hover.
2. Open the doors. A state behind a button is a state nothing has ever rendered. Drive the page with
--pre and look. Still unopened here: .okind, .refline, .tm-file, .stale button.
3. Ranking is a contract. bm25 ordering with equal scores must not be nondeterministic — a tie-break that depends on insertion order makes results shuffle between runs and the tool untrustworthy.
4. Token budget is the point. Every change should be judged by "does this let the model read less?" A result that forces the agent to open the whole file anyway is a failure, even if it is correct.
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.
- 2d ago First seen · 59 lines · 717 tokens per session scan A d31c49889e4c
lens AGENTS.md is an instructions file published in the GitHub repository tools-for-agents/lens (0 stars, last pushed 29d ago), licensed MIT. It adds 717 tokens to every session, about $0.0036 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-08-31.
Other instructions, from other repositories
cocoindex-code CLAUDE.md
Instructions for cocoindex-io/cocoindex-code, covering claude.md, build and test commands, architecture, process model and key layers.
OpenKB AGENTS.md
AGENTS.md instructions for VectifyAI/OpenKB, covering agents.md — openkb map for coding agents, read next, dev commands, module map (openkb/) and hard invariants.
ken CLAUDE.md
Instructions for townsendmerino/ken, covering claude.md, what this is, repository ownership (read this first), commands and embedding parity & golden fixtures (now in aikit).
project-trucha AGENTS.md
Instructions for MaximilianoRodrigoSoria/project-trucha, a project described as: 🐟 Memoria persistente y local-first para agentes de código: indexa un codebase y lo recupera con búsqueda híbrida (léxica + vectorial) sobre SQLite/FTS5, sin infraestructura pesada. En etapa de decisión técnica.
OpenKB CLAUDE.md
Claude Code instructions for VectifyAI/OpenKB, a project described as: OpenKB: Open LLM Knowledge Base.
langgraph AGENTS.md
AGENTS.md instructions for langchain-ai/langgraph, covering agents instructions, corridor security analysis, libraries and dependency map.