cd /news/artificial-intelligence/show-hn-openargentum-self-hosted-fin… · home topics artificial-intelligence article
[ARTICLE · art-58934] src=openargentum.org ↗ pub= topic=artificial-intelligence verified=true sentiment=↑ positive

Show HN: OpenArgentum – Self-hosted finance manager you talk to

OpenArgentum, a self-hosted AI-powered personal finance manager, launched on Hacker News. The tool lets users import bank statements and interact with an AI assistant named Aurelia to query and manage their finances via conversation, with no cloud sync or telemetry.

read6 min views1 publishedJul 14, 2026

A self-hosted, AI-powered personal finance manager. No account, no cloud sync, no telemetry — you run it, you own your data.

For people who check in on their finances every few weeks — not every day. Dump in your statements, then let Aurelia make sense of it all.

GitHub Repository ·

./start.sh

handles everything. No Docker, no database server, no config files.

You need: Python 3.11+, Node.js 20.19+, and a Google Gemini API key (or existing Google Cloud Application Default Credentials). Use a paid-tier key for real financial data — see Configuration for why.

git clone https://github.com/amithmathew/OpenArgentum.git
cd OpenArgentum
./start.sh

Open http://localhost:8099 and the onboarding wizard will walk you through setup.

That’s it.start.sh

creates a Python virtual environment, installs all dependencies, builds the app, and starts the server. See[Getting Started]for a detailed walkthrough.

OpenArgentum ships with a demo database of realistic (synthetic) transactions and a sample statement, so you can evaluate it before pointing it at your own finances.

Look around now — no API key:

./start.sh --demo

to boot straight in).Browsing makes no external calls and needs no key. Any changes reset when you restart.

Try the AI features — add a key, use our sample:

The signature features — statement import and the Aurelia assistant — call Gemini, so they need an API key. To test them without touching your real data, add a key and import the bundled demo/sample_statement.pdf

. It’s synthetic, so a free key is fine for this — watch OpenArgentum extract and categorize every transaction, then ask Aurelia about it.

From demo to your own data:

Done looking around? The way out depends on how you got in:

./start.sh --demo

?./start.sh

to begin setup.Either way, the demo data stays put in demo.db

if you ever want it back. Before importing real statements, see Configuration — Google recommends the paid terms if personal information is involved.

Drop your bank and credit card statements into OpenArgentum and let AI do the rest.

Aurelia is your AI finance assistant. She lives inside OpenArgentum, has direct access to your data, and can answer questions, build charts, and make changes – all through conversation.

Aurelia isn’t a chatbot bolted onto a dashboard — she’s the primary interface. She has a full analytical loop: she can query and aggregate your transactions, compare periods, generate charts inline as you talk, navigate you to the filtered transaction view, write and search notes on transactions, and make bulk edits with your approval.

This matters most when you’re doing archaeology. If you only look at your finances every few weeks, you’re facing a pile of transactions with no memory of what half of them were. Static dashboards only answer questions you anticipated when you built them. Aurelia answers the question you just thought of:

“I travelled to Japan in early May — find transactions in that period that are in yen or look travel-related, and assign them to a Japan trip project.”

She reasons about which transactions qualify, makes the changes with your approval, and drops you into the filtered view when she’s done.

“How much did I spend on dining out last quarter?”

“Show me my grocery spending by store over the last 3 months”

“What’s my average monthly grocery bill?”

Aurelia queries your data, summarizes the answer, and renders charts right in the chat.

“Why were my January expenses so much higher than December?”

“Compare my essential vs discretionary spending this year”

Aurelia breaks down the numbers, highlights what changed, and explains why.

“Tag all my Ticketmaster expenses as Impulse and move them to discretionary”

“Create a project called ‘Home Renovation’ and add all Home Depot transactions”

Aurelia shows you exactly what will change and waits for your approval. Every change can be undone with one click.

Aurelia remembers your past conversations. Pick up where you left off, or start a new chat anytime.

See where your money goes at a glance.

Every transaction at your fingertips.

Organize your spending the way that makes sense to you.

Track spending against goals.

Eight built-in color themes.

Light: Mist, Rose, Sage, Ember, Ocean, Slate – Dark: Nightfall, Aurora

Run with ./start.sh --headless

to access OpenArgentum from any device on your local trusted network. A PIN is generated automatically to keep things secure. The UI is fully responsive with touch-optimized controls, so it works just as well from your phone.

OpenArgentum stores everything locally and reaches out to exactly one external service, on purpose.

--headless

, it’s protected by an auto-generated PIN with brute-force protection.To read and categorize your statements, OpenArgentum sends the files you import to Google’s Gemini API. Google’s data protection terms differ by billing tier:

Ultimately, this is your call. Pick the option you’re comfortable with, and review Google’s current terms before you commit.

Sources: Gemini API Additional Terms · Data logging policy · Vertex AI data governance

OpenArgentum is an independent, open-source project. It is not affiliated with, endorsed by, or sponsored by Google. Google, Gemini, Google Cloud, and Vertex AI are trademarks of Google LLC.

Your data is safe across updates. Pull the latest code and restart:

git pull
./start.sh

Your database, config, and uploaded files live in the data/

directory which is never touched by git. Database migrations run automatically on startup.

For real financial data, Google recommends their paid data terms — see Sending your data to Google Gemini above for why. Both options below work; enabling Cloud Billing on your key’s project (Option A) or using Google Cloud credentials (Option B) puts you on the paid terms.

Option A: API Key

Option B: Google Cloud credentials (Vertex AI) — enterprise data terms

gcloud auth application-default login

Variable Default Description
GOOGLE_API_KEY
Gemini API key (can also be set through the UI)
GEMINI_MODEL
gemini-2.5-flash
Gemini model to use
PORT
8099
Server port

Most users won’t need these – the UI handles everything.

./start.sh                         # Start the app
./start.sh --demo                  # Boot into the demo database (no key, no onboarding)
./start.sh --dev                   # Development mode with hot reload
./start.sh --headless              # Enable network access (auto-generates PIN)
./start.sh --headless --pin 1234   # Network access with a specific PIN
./start.sh --help                  # Show all options
openargentum/
  start.sh              # One-command setup and launch
  run.py                # Server entry point

  backend/              # Python + FastAPI
    app.py              # App init, auth middleware, routing
    config.py           # Paths, env vars, config helpers
    database.py         # SQLite schema and migrations
    models.py           # Request/response models
    routers/            # REST API endpoints
    services/           # Gemini client, ingestion, categorization,

  frontend/             # React + Vite + TailwindCSS
    src/
      pages/            # Dashboard, Transactions, Categories,
      components/       # ChatPanel (Aurelia), OnboardingWizard,
      hooks/            # useIsMobile

  data/                 # Created at runtime (gitignored)
    finance.db          # SQLite database
    config.json         # App configuration
    statements/         # Uploaded files
    snapshots/          # Database snapshots
    sandboxes/          # Aurelia analysis sandbox DBs

Backend: Python 3, FastAPI, SQLite, google-genai SDK, pdfplumber

Frontend: React 19, Vite, TailwindCSS, Recharts, TanStack React Query

AI: Google Gemini 2.5 Flash

./start.sh --dev

This starts the Vite dev server with hot module replacement and the backend with auto-reload. The Vite dev server proxies /api

requests to the backend.

OpenArgentum is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0).

Contributions are welcome — they require signing our Contributor License Agreement (a one-time comment on your first pull request). See LICENSE_FAQ.md and CONTRIBUTING.md.

OpenArgentum is a personal bookkeeping and analysis tool — not financial, investment, tax, accounting, or legal advice. AI-generated categorizations and insights can be incomplete or incorrect; always verify against your original statements and consult a qualified professional before making financial decisions.

── more in #artificial-intelligence 4 stories · sorted by recency
── more on @openargentum 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/show-hn-openargentum…] indexed:0 read:6min 2026-07-14 ·