Inspiration

I run four restaurants on Ganghwa Island, Korea, buying from local markets and suppliers. Receipt photos get lost among food photos on my phone, month-end means retyping them by hand, and overcharges or quiet price rises go unnoticed. Cloud bookkeeping apps want me to upload every receipt, card details included. My receipts are already backed up to the NAS, so the ledger should be built there too.

What it does

Receipt Ledger is a UGOS Skill. Saying "build my November receipt ledger" makes it:

  1. Find receipt photos for the month with Photos AI OCR search (skipping food photos).
  2. Read each receipt twice: vision-ocr for raw text and vision-vlm for line items. A receipt counts as verified only when the VLM total also appears in that photo's raw OCR text; otherwise it is marked "needs review". No invented numbers.
  3. Save a draft Markdown ledger (after approval).
  4. Reconcile the ledger with supplier statement PDFs to catch missing receipts and double charges.
  5. Compare unit prices with last month and flag items that rose above a threshold (default 10%).
  6. Save a one-page summary and, after approval, tag the verified photos.

Nothing is deleted or moved, card and approval numbers are masked, and nothing leaves the NAS.

How we built it

The Skill is pure Markdown (SKILL.md plus references for the ledger format, vision prompt, masking rules, user guide and test plan). It orchestrates four registered experts: photo-agent (ug-photo), knowledge-agent (ug-knowledge), file-agent (ug-filesystem, ug-filemgr) and document-agent (ug-document), passing only real paths and results between them and handling all five delegation states. It passes the official UGREEN skill checker with zero errors and zero warnings. Claude was used as a writing and review assistant; this is disclosed in references/disclosure.md.

Challenges

Keeping an LLM from guessing totals on faded thermal receipts. The double-read rule (VLM total must match raw OCR text) was the answer.

What's next

Prompt tuning on real Korean market receipts and on-NAS testing of OCR index coverage, VLM accuracy, reconcile with a Markdown ledger, and tag IDs.

Built With

Share this project:

Updates

Submission history