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/dankaro-projects/shelfmark/claude-mdgit clone --depth 1 https://github.com/Dankaro-projects/shelfmarkWrote 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/dankaro-projects/shelfmark/claude-md)<a href="https://agentmods.dev/instructions/dankaro-projects/shelfmark/claude-md"><img src="https://agentmods.dev/badge/instructions/dankaro-projects/shelfmark/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.02844 | $0.02844 |
| Opus 5 | $0.01422 | $0.01422 |
| Sonnet 5 | $0.00569 | $0.00569 |
| Haiku 4.5 | $0.00284 | $0.00284 |
Grade A, and why
shelfmark 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 3d 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 — 215 lines — stays where its author put it; the contents beside it link to each section on GitHub.
shelfmark
Product repo for shelfmark — a local, privacy-first document catalogue + MCP server. README.md is the operator-facing document; this file is for working on the code.
The bet
Every incumbent sells access to complexity. The retrieval stacks sell knobs — chunk size, overlap, embedding model, top-k, a reranker to repair what the retriever got wrong. The document-management systems sell an administration console: taxonomy editors, permission matrices, workflow builders. Desktop search sells a query syntax and calls it power. All of it hands the user machinery and lets that count as capability.
Radical simplicity on top of genuine sophistication is the harder engineering problem, and the one nobody in this category has solved.
Here that reads: corpus_stats(), then browse_folder(). Nothing to
chunk, no embedding model to pick, no index server to run, no query
language to learn, no tuning pass that decides whether the answers are any
good. Underneath it: a walk kept incremental on (size, mtime, cloud
residency), prune guards that refuse rather than guess, governance
invariants re-asserted after every run, and an FTS layer that survives the
hyphenated identifiers real corpora are full of. The user should never meet
any of that.
A constraint on the code, not a slogan:
- The sophistication goes in the engine; the surface stays small. Five MCP tools, one config file, one command to stay current. A caller should never need to know how any of it works, or be handed a flag to compensate for something the engine could have decided.
- A new option is a failure to decide. Before adding a flag, a filter,
or a config key, establish that the right answer genuinely varies by
operator. If it does not, pick it and defend the choice in a comment.
Corpus vocabulary varies — that is what config is for. Correct behaviour
does not.
--forceearns its place only because the engine provably cannot tell an unreadable root from a real deletion. - Answer the question, do not expose the machinery.
browse_folderanswers "what do I have here"; it does not hand back a query builder. A cut list says it was cut, an unknown filter says it is a bad filter, andcorpus_stats()volunteers its own freshness — none of that is a status field left for the caller to interpret. An index answering confidently from a frozen snapshot is the failure this whole design exists to prevent. - Simple is not thin. Dropping a feature is not simplicity if it moves
the work onto the operator. Both fixes in this repo's recent history
added engine complexity to remove operator burden — detecting
placeholder slide titles is more code than storing whatever OOXML hands
you, and explaining a refused prune is more code than
exit 1. That is the trade this project accepts, every time. - The refusals are the shape of the bet, not a backlog. "No embeddings"
and "no content extraction" are decisions. Revisit them when real misses
cluster into evidence — never because a competitor lists the feature.
misses.pyis what supplies that evidence, and the load-bearing part is the reachable/unreachable split: a raw count of misses only proves people search. Function words are stopped for the same reason — "said" can never be in a filename, so leaving it in votes for content extraction on the strength of grammar.
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.
- 3d ago First seen · 215 lines · 2,844 tokens per session scan A 931af5120de0
shelfmark CLAUDE.md is an instructions file published in the GitHub repository Dankaro-projects/shelfmark (0 stars, last pushed 19d ago), licensed MIT. It adds 2,844 tokens to every session, about $0.0142 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
ZhiWei CLAUDE.md
Instructions for ntygod/ZhiWei, covering claude.md, project overview, build & development commands, backend and frontend.
Vault-Agent-Memory AGENTS.md
Instructions for zycaskevin/Vault-Agent-Memory, covering agent instructions for vault agent memory, common install architecture, second decision: optional features, first decision: database scope and safe agent workflow.
ZhiWei AGENTS.md
Instructions for ntygod/ZhiWei, covering repository guidelines, project structure & module organization, agent harness, build, test, and development commands and coding style & naming conventions.
claude-memory-mcp AGENTS.md
Instructions for WhenMoon-afk/claude-memory-mcp, covering mooncite repository contract, product boundary, fixed architecture, sources of truth and change discipline.
doltlite AGENTS.md
AGENTS.md instructions for dolthub/doltlite, covering agents.md, project nature, licensing and file headers, comments: minimal by default and build.
LexiconLocal CLAUDE.md
Claude Code instructions for alexeymohr/LexiconLocal, covering lexiconlocal, read first, this repository is public. the operator's data is not, tech stack (fixed — do not substitute) and hard rules.