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 skills add moonlight-lupin/agent-skills --skill receipt-compilergit clone --depth 1 https://github.com/moonlight-lupin/agent-skillsWrote 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/skills/moonlight-lupin/agent-skills/receipt-compiler)<a href="https://agentmods.dev/skills/moonlight-lupin/agent-skills/receipt-compiler"><img src="https://agentmods.dev/badge/skills/moonlight-lupin/agent-skills/receipt-compiler/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/skills/moonlight-lupin/agent-skills/receipt-compiler"><img src="https://agentmods.dev/badge/skills/moonlight-lupin/agent-skills/receipt-compiler.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.00038 | $0.01465 |
| Opus 5.5 | $0.00015 | $0.00586 |
| Sonnet 5.5 | $0.00008 | $0.00293 |
| Haiku 4.5 | $0.00004 | $0.00146 |
Grade A, and why
receipt-compiler 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 1mo 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 — 135 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Receipt Compiler
Overview
Receipt Compiler turns a folder of phone-camera receipt photos into one A4 PDF that looks like a photocopied expense-claim pack: each receipt is straightened (perspective warp, deskew), converted to a B&W "scanned" look, tiled on A4 with uniform visual scale, numbered, and summarised on an optional cover page.
Four subcommands with an enforced confirmation gate:
scan— straighten + scanify + OCR each photo →manifest.jsonreview— print the extracted expense tableconfirm— stamp user approval + bind the reviewed data (digest)pack— build the A4 PDF (refuses to run untilconfirmhas run)
When to Use
- "Compile my receipts into a PDF for expense claim"
- "Make a claim pack from these receipt photos"
- "Straighten and B&W these receipts and line them up on A4"
- Not for: scanning via flatbed scanner, or PDFs of invoices (use
pdfskill).
Prerequisites
pip install opencv-python-headless pillow pillow-heif pytesseract reportlab numpy
# PyMuPDF is needed only to run the self-test (tests/), not the script itself
Plus system tesseract-ocr on PATH. Check with tesseract --version.
Workflow (agent must follow the gate)
Step 1 — scan
python3 ~/.hermes/skills/productivity/receipt-compiler/scripts/receipt_compiler.py \
scan <photos_dir> -o <workdir> [--mode bw|photo]
Default --mode bw gives the photocopy look the user asked for. Use --mode photo
for grayscale. Completion criterion: manifest exists with one entry per photo;
ocr_confidence and needs_review flags set.
Step 2 — review + confirm (MANDATORY, user in the loop)
python3 .../receipt_compiler.py review <workdir>
# ... apply any corrections to manifest.json, THEN re-run review so the user
# ... sees the corrected table ...
python3 .../receipt_compiler.py review <workdir>
# ... after the user approves the corrected table ...
python3 .../receipt_compiler.py confirm <workdir>
Present the printed table to the user in chat. Ask:
- Are the extracted dates/merchants/amounts right? Fix
manifest.jsonfields. - Optional requirements — ask every time, do not assume:
- cover page (with claimant/period/notes)
- per-receipt numbering badges
- per-receipt captions (date · merchant · amount)
- currency symbol on totals
- Exclusions — any receipt to drop (
"include": false)? - Purpose/notes text for the cover.
What ships with it
2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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.
- 1mo ago First seen · 135 lines · 38 tokens per session scan A 5900b6a87f35
receipt-compiler is a skill published in the GitHub repository moonlight-lupin/agent-skills (101 stars, last pushed today), licensed MIT. It adds 38 tokens to every session and 1,465 once invoked, about $0.0002 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-09-13.
Other skills, from other repositories
document-exports
Generate and TEST downloadable document exports (PDF/CSV) from a Node/Express backend — pdfkit streaming, CSV BOM, cents formatting, and the supertest/pdfkit pitfalls that silently break tests.
invoice
A printable invoice page — sender + recipient block, line items table, tax breakdown, totals, and payment instructions. Use when the brief mentions "invoice", "bill", "billing statement", or "发票".
report-generator
Generate professional HTML/PDF investment reports with interactive visualizations.
iflytek-ocr-invoice
An image-reading tool that extracts structured information from Chinese invoices, receipts, bills, and tickets. OCR means turning text in a photo or scan into computer-readable data.
financial-parser
Extract and analyze data from invoices, receipts, bank statements, and financial documents. Categorize expenses, track recurring charges, and generate expense reports. Use when user provides financial PDFs or images.
procesar-mis-estados-de-cuenta
Proceso un lote de estados de cuenta bancarios y de tarjeta de crédito en PDF o CSV de principio a fin: extraigo cada transacción (subagentes Haiku en paralelo), normalizo los nombres de las contrapartes, categorizo contra tu plan de cuentas bloqueado (subagentes Sonnet en paralelo), detecto transferencias entre…