Train the Prompt,
Not Just the Model.
A desktop trainer for vision and OCR prompts. Run a prompt against a dataset of real documents, score the output field by field against ground truth, and watch accuracy climb with every revision.
Dataset
Real images and PDFs with ground truth
Run
Extract structured data with your prompt
Score
Field-by-field accuracy against ground truth
Commit
Every revision saved with its score
Field-Level
Scoring
Every Rep
In History
Any
Vision Model
OCR Prompt Development Is Guesswork
Tweak the prompt, eyeball one document, hope for the best. There's a better way.
No Accuracy Number
You changed the prompt and the output "looks better." Better by how much? Across the whole dataset, or just this one file?
One File Is Not a Test
A prompt that nails one invoice can faceplant on the next fifty. Without dataset-wide scoring, you never know until production.
Silent Regressions
The edit that fixed the date field just broke the totals column. With no per-field scores, regressions hide until someone complains.
Lost Iterations
Yesterday’s prompt scored better than today’s, but it lives in your undo history. Without versioning, good work evaporates.
Built for the Iteration Grind
Everything the run-score-commit loop needs, and nothing that slows it down.
Field-by-Field Scoring
Output is scored per field against known-correct ground truth values, so you see exactly which fields improved and which regressed.
Git-Style Prompt History
Every prompt change is committed with a dataset-wide accuracy score. Watch accuracy evolve over time and roll back to any version.
Pluggable Providers
Anthropic Claude for best quality, Ollama for free local models, and an offline mock so the whole loop runs with zero setup. Adding a provider is one class.
Import From Anywhere
Pull datasets from local folders, S3, or Azure Blob Storage. Files are linked by reference and fetched lazily, one at a time, as you navigate.
Dataset-Agnostic
Images and PDFs of anything — invoices, forms, lab results, training logs. Nothing domain-specific lives in the core.
Keyboard-Driven Loop
Run with ⌘Enter, commit with ⌘S, arrow between files. The whole training loop stays under your fingers.
Three Sets to a Better Prompt
The loop is simple. The gains compound.
Load Your Dataset
Point Reps at a folder, bucket, or container of documents and enter the ground truth values each one should produce.
Run and Score
Execute your prompt against the current file. Reps extracts the structured output and scores every field against ground truth.
Commit and Compare
Commit the revision with its dataset-wide score. Compare against past versions, keep what works, roll back what doesn’t.
Time to Put In the Reps
Native on macOS and Windows, self-contained builds, no runtime to install.
Built by Andrew, a solo developer, to stop guessing whether his OCR prompts actually got better.