Borrowing it
Nothing to install: this file belongs to jeffbai996/vecgrep. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/jeffbai996/vecgrep/main/CLAUDE.mdgit clone --depth 1 https://github.com/jeffbai996/vecgrepWrote 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/jeffbai996/vecgrep/claude-md)<a href="https://agentmods.dev/instructions/jeffbai996/vecgrep/claude-md"><img src="https://agentmods.dev/badge/instructions/jeffbai996/vecgrep/claude-md/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/instructions/jeffbai996/vecgrep/claude-md"><img src="https://agentmods.dev/badge/instructions/jeffbai996/vecgrep/claude-md.svg" alt="Reviewed on agentmods" width="80" 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.1 | $0.01439 | $0.01439 |
| Opus 5.5 | $0.00576 | $0.00576 |
| Sonnet 5.5 | $0.00288 | $0.00288 |
| Haiku 4.5 | $0.00144 | $0.00144 |
Grade A, and why
vecgrep 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 2mo 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 — 73 lines — stays where its author put it; the contents beside it link to each section on GitHub.
vecgrep — Claude Code working notes
What this is
A local-first semantic search tool. CLI-first, web UI on the side. OSS — no PII, no leaked context, no portfolio data, no internal hostnames in source. Generic-only.
Architecture cheat sheet
vecgrep/backend/
├── main.py FastAPI app, mounts /api and serves frontend/dist
├── config.py settings + ~/.vecgrep paths
├── ingestion/
│ ├── adapters/ text, markdown, pdf, url -> str
│ └── chunkers/ SentenceWindowChunker (default), FixedTokenChunker
├── embed/ OllamaBackend (default), OpenAIBackend (fallback)
├── store/ QdrantStore wrapper (embedded mode)
└── api/ routes: search, corpus, config
vecgrep/cli/ Click commands that hit the local API
vecgrep/frontend/ React + Tailwind, single page, built into dist/
Design rules
- Flat over nested. No abstract base classes for things with one impl.
- Adapter and chunker interfaces are the only spots designed for extension — everything else is concrete.
- Config in one place (
backend/config.py), env vars override JSON. ~/.vecgrep/is the only persistence location.--ephemeralskips it.- Qdrant runs in embedded mode (
path=...) by default — no server, no Docker. Server mode (qdrant_url) is opt-in for concurrent readers/writers (serve+watchat once). Embedded locks the dir to ONE process; two clients on different backends = silent split-brain (CLI writes embedded while the daemon reads server, or vice-versa). A multi-process deployment MUST pinqdrant_urlin~/.vecgrep/config.json, not just the systemd unit env — env only reaches the units, so a bare CLI invocation falls back to embedded and diverges.vecgrep doctorreconciles registry↔store but only against whichever backend IT resolves, so same rule applies. - Errors that the user can fix (Ollama not running, model not pulled) get plain English messages with the exact command to fix.
- MCP exposes no DIRECT mutation. The stdio MCP server is read-only (
search,list_corpora,get_corpus). The HTTP transport adds thepropose_*family (propose_write,propose_edit,propose_delete) — but these write/remove nothing: each creates an inert pending proposal that a human turns into a real write/delete viavecgrep confirm(off-protocol). So even over a leaked/unauthed/mcpendpoint an agent can only suggest a change, never land one — and apropose_deleteremoves a doc + its embeddings only after that human confirm. Direct/immediateindexanddeletestay on the REST routes, which operators keep behind tailnet / VPN / localhost. The propose corpus set is default-deny (VECGREP_PROPOSE_ALLOWED_CORPORA), so a proposal can't even target a corpus the operator hasn't opened.propose_edithas two modes: full overwrite (content=the whole new body) or surgical patch (old_str=+new_str=— a str-replace of one unique span, so you don't re-send an 8KB doc to fix one line). The patch is a hard error ifold_stris missing or appears more than once (add surrounding context to disambiguate); it touches the body only, frontmatter is preserved, and it flows through the identical proposal/confirm/corpus-gate path. Example — fix a date without a regen:propose_edit(doc_id="notes-007", old_str="July 25", new_str="July 17").
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.
- 2mo ago First seen · 73 lines · 1,439 tokens per session scan A 90a3c079f8f5
vecgrep CLAUDE.md is an instructions file published in the GitHub repository jeffbai996/vecgrep (2 stars, last pushed 2d ago), licensed MIT. It adds 1,439 tokens to every session, about $0.0058 per session on Opus 5.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.
vecgrep CLAUDE.md compared with instructions from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| vecgrep CLAUDE.mdjeffbai996/vecgrep | Instructions file | 2 | 2d ago | MIT | A | 1,439 | Claude Code |
| vscode buildNext.instructions.mdmicrosoft/vscode | Instructions file | 195k | yesterday | MIT | A | 9,719 | GitHub Copilot |
| next.js AGENTS.mdvercel/next.js | Instructions file | 143k | yesterday | MIT | A | 7,461 | Codex, OpenCode |
| langchain AGENTS.mdlangchain-ai/langchain | Instructions file | 149k | yesterday | MIT | A | 4,680 | Codex, OpenCode |
| vscode oss-third-party-notices.instructions.mdmicrosoft/vscode | Instructions file | 195k | yesterday | MIT | A | 5,516 | GitHub Copilot |
| vscode copilot-instructions.mdmicrosoft/vscode | Instructions file | 195k | yesterday | MIT | A | 3,093 | GitHub Copilot |
| deepseek-harness AGENTS.mddeepseek-ai/deepseek-harness | Instructions file | 274k | 2d ago | MIT | A | 4,313 | Codex, OpenCode |