Most "AI + finance" products I've looked at get the same thing wrong: they let the model write directly to your records.
Aurelio (2152 stars, MIT, Python) takes the opposite approach, and the detail is worth examining.
What it is
A wealth-management and financial-planning app that runs on your own machine. Bank and brokerage accounts, holdings, fund look-through (by country, sector, company, currency), debts, cash flow, goals.
Your records live in a local database file. No upload, no account. The AI advisor is optional — it goes through OpenRouter with your own key, and can be turned off entirely.
The design choice I keep thinking about
The README describes the AI advisor's behavior in one line:
Every change is presented as a card for you to confirm.
Each AI suggestion becomes a card. You confirm it or reject it. Not "the AI updated your books" — but "the AI proposes this change; do you accept?"
Pair that with local storage, and the author is making a clear statement: the model can be smart, but control stays with the user.
Why this matters more than it looks
Across enterprise AI delivery work, I've landed on a rule of thumb: whether AI gets adopted depends less on how capable it is, and more on how bad the failure is.
- A chatbot saying something wrong is an annoyance.
- An autonomous agent writing to the wrong record, deleting the wrong row, sending the wrong notification — that's an incident with a postmortem.
Which is why mature enterprise AI designs converge on the same shape: the model proposes, a human approves. The heavier the action, the harder that gate needs to be.
Aurelio is a personal accounting app — low-stakes by comparison. And it still chooses "every change gets a confirmation card." That's a product stance, not a technical necessity. Adding a confirm step is trivial; choosing to add it means giving up some "fully automatic" smoothness.
Running it
Requires Git, Node.js 22+, and uv. There's a demo mode with invented data:
git clone https://github.com/LosaLosSantos/aurelio-finance.git
cd aurelio-finance
./start.sh --demo
Honest limits
- Single-user by design — no multi-user, roles, or audit trail. Not an enterprise system.
- AI needs network + key (OpenRouter). Fully offline means no AI, though data stays local.
- Per-step confirmation is more work than full automation. That's the trade.
Why I'd read it anyway
If you build AI products — especially anything that writes data — spend ten minutes on how this project draws the AI/human boundary. It's a small project with a clearly considered position.
I localized the README to Chinese and added a quick-start section on top: https://github.com/yangshun2005/aurelio-finance-cn
If it's useful, a star on the original repo supports the author.
Top comments (0)