Open Net Worth
Open Net Worth is an open-source personal AI wealth assistant you run yourself: one ledger for your whole financial life, worked by an AI agent you control.
翻訳待ち
No updates detected yet. GitHub releases will appear here.
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗A personal finance tracker built for Indian banking. It auto-logs your spending by reading bank, UPI, and credit-card notification emails from Gmail, parses them with an LLM, and lets you ask questions about your money in plain English. Designed mobile-first as an installable PWA.
Built for real use — it ingests live HDFC / HSBC / UPI emails and bank statements, not toy data.
{amount, merchant, payment mode, date, debit/credit} from each notification — turning your inbox into a ledger with no manual entry..xls) or a multi-cardholder HSBC credit-card statement (.pdf); it extracts your transactions (the HSBC PDFs are image-based, so they're parsed via Gemini's multimodal API) and de-duplicates against what email ingestion already captured.queryTransactions, aggregateByCategory, aggregateByMerchant, monthlyTotals). Ask "compare my May spend to April" or "top 5 merchants since Jan" and it plans tool calls, reads the results, and answers — with a collapsible trace of exactly which tools it ran.@google/genai) for email extraction, statement OCR, and the chat agent's tool-calling loopgoogleapis) for ingestion and loginSession table, httpOnly cookie) — no auth framework dependencyMAX_STEPS, and a rate-limited API with an eval suite (scripts/agent-evals.ts)./api/cron/sync) for serverless production.npm install
cp .env.example .env # then fill in the values (see below)
npx prisma db push # apply schema to a fresh SQLite db
npm run db:seed # seed default categories + payment modes
npm run dev # http://localhost:3000
You'll need a Google OAuth client (for login + Gmail), a Gemini API key (free tier), and a generated TOKEN_ENCRYPTION_KEY. See .env.example for every variable, and the Google setup walkthrough below.
| Command | What it does |
|---|---|
npm run dev | Start the dev server |
npm run build | Production build |
npm run db:seed | Seed default categories / payment modes |
npm run db:studio | Browse the database in Prisma Studio |
npx tsx scripts/agent-evals.ts | Run the chat-agent eval suite |
The app uses one OAuth client for both login and Gmail ingestion.
http://localhost:3000/api/auth/google/callback
.env, plus a Gemini key from aistudio.google.com/apikey.Workspace (school/company) accounts may be blocked by admin policy — use a personal Gmail.
Actively built and used. Single-currency (INR) by design. Deployment to Vercel + Turso and a Capacitor mobile wrapper are in progress.
This is a personal project. No financial data is committed to the repo — the local database (*.db) and all secrets (.env) are gitignored.