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/drandyhaas/kicadroutingtools/claude-mdgit clone --depth 1 https://github.com/drandyhaas/KiCadRoutingToolsWrote 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/drandyhaas/kicadroutingtools/claude-md)<a href="https://agentmods.dev/instructions/drandyhaas/kicadroutingtools/claude-md"><img src="https://agentmods.dev/badge/instructions/drandyhaas/kicadroutingtools/claude-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.12395 | $0.12395 |
| Opus 5 | $0.06198 | $0.06198 |
| Sonnet 5 | $0.02479 | $0.02479 |
| Haiku 4.5 | $0.01239 | $0.01239 |
Grade A, and why
KiCadRoutingTools CLAUDE.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 today.
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 — 725 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Project Notes for Claude
Running Python
Invoke Python as python3 (bare python does not exist on macOS and many
Linux distros). On Windows, if python3 is missing, fall back to py -3
or python — don't retry blindly. Add -X utf8 when a script prints
special characters (Ω etc.) to avoid Windows encoding errors.
On Windows/Git Bash, export MSYS2_ARG_CONV_EXCL='*' before any command
carrying NET NAMES. MSYS2 rewrites any argument starting with / into a
Windows path, and every KiCad net name is /-prefixed: /+1V1 reaches the
tool as C:/Program Files/Git/+1V1. Nothing warns, because a tool cannot tell a
mangled net name from a net that does not exist. Measured: 61 nets passed to
--ignore-nets, 4 survived (the four not starting with /), and the resulting
render reported 1315 crossings where the truth was 357. It hits --nets,
--ignore-nets, --power-nets, --rip-existing-nets — every net-name argument.
The variable is not free: it also disables conversion for legitimate paths,
so ~/Documents/... then arrives as an unusable /c/Users/.... Pass
Windows-style paths (C:/Users/...) in the same command.
Building the Rust Router
Use build_router.py to build the Rust router:
python build_router.py
This builds the Rust module, copies the library to the correct location, and verifies the version. Do not run cargo build directly.
Prefer Python-only solutions; avoid changing the Rust router (rust_router/)
unless clearly necessary and agreed. A Rust change forces a crate version bump,
a build_router.py --from-source rebuild, and re-distributing prebuilt per-platform
binaries via GitHub Releases — heavy overhead. When a feature seems to need a Rust
change, surface that cost early and check for a Python-only approach first.
Important: When making changes to the Rust router, bump the version in rust_router/Cargo.toml and update the version history in rust_router/README.md. The release triple is rust_router/Cargo.toml + /VERSION + metadata.json — keep them aligned. The crate is 0.20.1 and the 0.20.1 binaries ARE now published, in the v0.20.2 release (2026-08-09; verified — the published grid_router-macos-arm64.so reports __version__ == 0.20.1). v0.20.2 is a python-only release, so Cargo.toml correctly stayed at 0.20.1 while /VERSION went to 0.20.2, and the release built the crate as it stands: a plain python3 build_router.py now downloads and keeps the prebuilt instead of paying a wasted download and rebuilding from source. (The older hazard, for reference: the v0.20.1 release carried 0.20.0-built assets. build_router.py handles that case on its own — it skips the download when Cargo.toml is ahead of the release tag, and when the tag matches but the asset inside is stale it detects the version mismatch after install and rebuilds from source. Both checks verify in a fresh subprocess: an in-process re-import of a compiled extension reports the previously-loaded library. --from-source just skips the lookup. 0.20.1 removes the block_vias parameter from add_stub_proximity_costs_batch, so the 0.20.0 binary is API-incompatible with current Python besides the version gate.) Note this is why /VERSION can lead Cargo.toml — a python-only release still republishes the current crate binaries, which is the cheapest way to unstick a stale-asset release.
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.
- today Changed · +53 lines · +994 tokens per session 232e4890c796
- 4d ago First seen · 672 lines · 11,401 tokens per session scan A 25281c4a36ba
KiCadRoutingTools CLAUDE.md is an instructions file published in the GitHub repository drandyhaas/KiCadRoutingTools (380 stars, last pushed today), licensed MIT. It adds 12,395 tokens to every session, about $0.0620 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-30.
Other instructions, from other repositories
stack-chan AGENTS.md
AGENTS.md instructions for stack-chan/stack-chan, covering agents.md, project overview, core architecture, modular component system and key directories.
evjs AGENTS.md
AGENTS.md instructions for afx-team/evjs, covering agents.md, start here, source map, working rules and validation.
tomtom-maps-mcp copilot-instructions.md
Copilot instructions for tomtom-international/tomtom-maps-mcp, covering github copilot instructions and code review.
kicad-mcp AGENTS.md
AGENTS.md instructions for blwfish/kicad-mcp: Conventions for any AI agent (Claude Code, Cursor, etc.) working in this repo. General contributor guidance — bug reports, PR style, threshold-test coverage — is in CONTRIBUTING.md. This file holds the few rules that are easy to violate while generating code and expensive…
structpages CLAUDE.md
Instructions for jackielii/structpages, covering claude.md, project overview, development commands, testing and run all tests.
circuitron copilot-instructions.md
Instructions for Shaurya-Sethi/circuitron, covering instructions for working on circuitron, architecture overview, core pipeline flow, key components and project map (high‑value files).