Ghost in the Ledger: open-weight AI that finds the ghosts haunting your bank statement
This is a submission for the Hacktoberfest Open-Source AI Challenge Week 4: Ghost in the Machine What I Built I live in Nigeria, where every debit comes with an SMS or an email: a POS payment at 2 AM, a small SMS fee, a subscription you forgot about, a salary that landed on the 28th and was mostly

Posted on Oct 31 • Edited on Oct 31 • AI-assisted
Hacktoberfest Open-Source AI Challenge: Ghost in the Machine Submission 👻🌼
This is a submission for the Hacktoberfest Open-Source AI Challenge Week 4: Ghost in the Machine
I live in Nigeria, where every debit comes with an SMS or an email: a POS payment at 2 AM, a small SMS fee, a subscription you forgot about, a salary that landed on the 28th and was mostly gone by the 1st. Then I noticed everyone's phone does this: a card alert, a "you made a $12.99 purchase", a pound here, a euro there. At the end of the month, nobody knows where the money went.
Ghost in the Ledger takes a bank statement (PDF or CSV) or pasted alerts and SMS from almost any bank, in many currencies, and shows you the ghosts hiding in it:
Subscription ghosts: the same place charging about the same amount every month. Fee poltergeists: overdraft, ATM and foreign transaction fees, SMS charges, VAT and stamp duty, added up. Midnight spenders: debits between 12 AM and 5 AM. Payday vanishing acts: a big credit where most of it is gone within three days. Leaks: many small debits to the same place.
Each ghost gets a short, spooky story and the exact lines behind it, so every claim can be checked.
My reading of the theme: the past is still in your account, and it keeps leaving marks. A ghost that says "your salary vanished in three days" is harder to ignore than a spreadsheet row.
The part I care about most is the one you cannot see: the model is never allowed to be wrong about your money. More on that below.
All demo data is fake. The app has three demo sets (US dollars, UK pounds, Nigerian naira) so anyone can try it without a statement.
A real result from the US demo, written by gpt-oss-20b through Groq:
The Payday Vanishing Act. On 2026-08-31 a friendly ghost paid a credit of 2850 USD, then vanished after spending 2424.99 USD, leaving a spectral 85% balance.
(That is the model's own wording, quirks included. The numbers are checked against the data, the prose is the model's.)
Paste your bank alert emails, SMS texts or a statement, from almost any bank in the world, and a friendly ghost shows you what is quietly haunting your money: forgotten subscriptions, small bank fees, late-night spends, a payday that vanished in three days.
Built for the DEV Hacktoberfest "Ghost in the Machine" challenge. It uses open-weight models (Gemma, Llama, gpt-oss) and has zero npm dependencies.