Shioaji Pro
為 agent 交易鋪路:交易終端全程由 coding agent 打造,介面 100% 開源、桌面版內建 AI Agent 與全套專業下單面板 — 這個終端就是能力證明。
Translation pending
Finds possible duplicate invoices and total mismatches in a CSV, in your browser. Files are never uploaded; a person reviews every finding.
FinanceTypeScript · PythonGitHub @idotbosburOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Invoice-error review prototype — exact-cents checks, human review, measured benchmark. Synthetic data.
Translation pending
Taken from the repository README
Loading the full README.
Read the full README ↗Live: https://catchfold.com/ · free · no sign-up · your files never leave your browser
Catchfold (formerly Preflight) is a free web tool for small businesses and individuals. You drop in a bills export from your accounting software and, if you like, a bank or card statement. In a few seconds it shows what may have been paid twice, overcharged or quietly gone up, with the evidence for each, and you decide what to do about it. It never pays, blocks or approves anything.
It is a portfolio project that is now being tested with real small businesses. It is not a production finance platform.
| Check | Needs | How |
|---|---|---|
| Bills entered twice | Bills | Same supplier and invoice number after normalising case, spaces and punctuation |
| Same amount twice in 14 days | Bills | Same supplier and amount, different invoice numbers (lower confidence) |
| Totals that don't add up | Bills with subtotal and tax | Subtotal + tax + shipping − discount, in exact cents |
| Bills paid twice / payments with no bill | Bills + a statement | Exact amount, payment 0 to 90 days after the bill, payee name matched to the supplier |
| Monthly charges creeping up / charged twice | A statement | A payee seen about once a month whose amount rose, or was taken twice in one month |
| Supplier price increases | Bills with item lines (e.g. Xero) | Same item from the same supplier, unit price up more than 2% |
| Year-end contractor (1099) list | Bills | Totals per payee per year, spellings grouped, over-threshold payees and missing W-9 or insurance flagged |
The results page adds them up into one figure, lists the biggest first, and drafts a polite email to the supplier for each one.
File formats: CSV, Excel (.xlsx), bank downloads (.qfx, .ofx, .qbo), and semicolon- or tab-separated text. File type and columns are recognised from the header row; the person only answers a question when it is genuinely unclear (for example whether 03/04 is March 4 or April 3). PDFs and photos are not supported; reading them well needs a stronger AI than a free browser tool can run, so they are on the list for a possible paid version.
A small sentence-embedding model (all-MiniLM-L6-v2, 8-bit, about 23 MB) runs in the browser through
@huggingface/transformers. It scores how alike two names are, so a bank line like SQ *ACME SUPPLY 4412 can be
matched to the supplier Acme Supply Co., and differently written item names can be grouped. Only the model files are
downloaded; no invoice or statement text leaves the device.
It is deliberately limited:
COMCAST CABLE vs Xfinity: 0.57) and
weak on abbreviations (AMZN vs Amazon: 0.19) and item names, so the thresholds are set high and word matching
does most of the work. A larger model is the obvious next experiment.docs/samples/test-set (kept out of the repository) with the expected result for every
file: all nine expected findings appear, nothing else is flagged, and the dollar total matches a hand calculation.The browser app is a port of an earlier local Python prototype. In that prototype, submitting a review returned HTTP 403
in a real browser even though every automated test passed. The cause was the header Referrer-Policy: no-referrer,
which makes Chromium send Origin: null on form posts, so the server's origin check rejected them. The fix changed the
policy to same-origin while keeping the strict origin allowlist and CSRF checks, and added a regression test that
submits the real rendered form. Codex found it during browser QA; Claude fixed it.
The concept, scope, product and design decisions are the project owner's. An earlier assistant elaborated the concept into the twelve-module roadmap. The application code and tests were written by Claude (Anthropic's AI coding agent), working as a lead with worker agents and independent reviewers. Codex coordinated the early work and ran browser QA. The owner did not hand-write the code.
React 19 · TypeScript 6 · Vite 7 · IndexedDB · Web Crypto · WebGL (hand-written raymarching shaders for the 3D logo and
background) · @huggingface/transformers 4.3.1 (in-browser AI) · read-excel-file 9.3.12 (Excel) · Node's built-in
test runner · Python 3.12 standard library for the reference prototype.
cd web
npm ci
npm test # typecheck + domain/state/evaluation tests + UI tests + static pages
npm run build # static site in web/dist
npm run dev # http://127.0.0.1:5173
Python reference (from the repository root): python -m unittest discover -s tests -t . and
python -m tests.evaluation.evaluate.
| Path | What it is |
|---|---|
web/ | The browser app (what the live site runs), its tests and evaluation harness |
src/, tests/, run.py | The original Python reference prototype and its tests |
fixtures/ | The synthetic invoice data and its answer key |
reports/latest.* | The latest Python benchmark report |
docs/ | Architecture, evaluation plan and the twelve-module roadmap |
The free version stays free. Ideas that would need servers and paid AI (connecting QuickBooks, Xero or a bank, reading PDFs, a stronger AI, chasing refunds, a bookkeeper mode) are listed on the site, where visitors vote on what they would use. The longer-term twelve-module vision is on the Roadmap page.