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/curiosity-ai-bv/localocr/agents-mdgit clone --depth 1 https://github.com/Curiosity-Ai-BV/localOCRWrote 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/curiosity-ai-bv/localocr/agents-md)<a href="https://agentmods.dev/instructions/curiosity-ai-bv/localocr/agents-md"><img src="https://agentmods.dev/badge/instructions/curiosity-ai-bv/localocr/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.1 | $0.00574 | $0.00574 |
| Opus 5 | $0.00287 | $0.00287 |
| Sonnet 5 | $0.00115 | $0.00115 |
| Haiku 4.5 | $0.00057 | $0.00057 |
Grade A, and why
localOCR 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 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 — 29 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Repository Guidelines
Project Structure & Module Organization
Application entry points live in app.py (Streamlit UI) and cli.py (headless runs). Processing primitives sit under core/ (pipeline.py, json_extract.py, image_utils.py, templates.py) with model bindings in adapters/ollama_adapter.py. UI helpers reside in ui/export.py, shared typings in utils/typing.py, and reusable assets in assets/. Test data and reference documents live in samples/, while automated tests live in tests/.
Build, Test, and Development Commands
Create a virtual environment and install runtime deps:
python -m venv venv && source venv/bin/activate
pip install -r requirements.txt
Install tooling for contribution work:
pip install -r requirements-dev.txt
Run the Streamlit app locally with streamlit run app.py. Start the CLI batch processor via python cli.py --help to explore available flags — prime examples include --pdf-pages to fan out multi-page PDFs and --pdf-scale for render DPI. Execute automated tests using pytest.
Coding Style & Naming Conventions
Follow PEP 8 with four-space indentation and keep functions small and composable, mirroring the current module layout. Use descriptive, snake_case names for functions and variables; reserve PascalCase for classes and TypedDicts. Maintain type hints and docstrings where already present, and prefer helper functions within core/ over duplicating logic in app.py. When formatting sizable changes, run ruff format or black if already configured in your environment; otherwise stay consistent with existing whitespace.
Testing Guidelines
Place new unit tests in tests/, mirroring the module under test (test_json_extract.py, test_pdf_convert.py provide patterns). Name tests with test_<feature> for pytest discovery. Ensure new OCR or extraction behaviors include assertions for both success paths and failure handling. Run pytest -q before submitting; target full pass on macOS with Ollama available, and guard tests so they gracefully skip when optional services are missing.
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 First seen · 29 lines · 574 tokens per session scan A 7b9bc3d0cf4e
localOCR AGENTS.md is an instructions file published in the GitHub repository Curiosity-Ai-BV/localOCR (148 stars, last pushed 3mo ago), licensed MIT. It adds 574 tokens to every session, about $0.0029 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-04.
Other instructions, from other repositories
markdown-exporter AGENTS.md
Instructions for bowenliang123/markdown-exporter, covering agent coding guidelines for md-exporter, 🔧 build, lint, and test commands, package management, code quality and formatting and alternative: run from project root using provided script.
headcleaner-cli AGENTS.md
AGENTS.md instructions for jamesdsizemore/headcleaner-cli, covering agents.md, what is headcleaner?, stack, commands and layout.
use_cninfo CLAUDE.md
Instructions for rollysys/use_cninfo, covering claude.md, 这个 repo 是什么, 常用命令, 开发环境 and 跑测试(离线,32 个).
apm python.instructions.md
Python development guidelines.
PDF-Writer CLAUDE.md
Instructions for galkahana/PDF-Writer, covering claude code context - pdf-writer development guide, project overview, coding standards discovered, project structure and key components.
foundry-local python-cffi-pointer-types.instructions.md
Use when working on the Python SDK's native bindings (cffi), especially when defining new Item subclasses, working with flItemQueue, or extending Request/Session methods that pass native handles.