Browse / Invoicing and finance
Ray Finance
Local-first AI financial advisor CLI over Plaid or Bridge bank data, bring your own model.
Ray syncs bank accounts through Plaid (US/CA) or Bridge (EU) into an encrypted SQLite file and answers 'can I afford this' from a persistent context file about your goals. Dashboard commands (status, spending, budgets, goals, alerts) are deterministic; the chat calls your chosen model with PII masked. Free with your own keys; a $10/month Pro edition supplies the keys.
- I want a money advisor that knows my situation and runs on my laptop with a model I choose
- I want cron to sync my banks and my agent to read spending and budget status from the CLI
- Plaid OAuth banks (Chase, Capital One) need PLAID_REDIRECT_URI registered in the Plaid dashboard
- Plaid production access requires Plaid approval; sandbox only gives fake data
- The chat is interactive; there is no documented non-interactive prompt flag for agents
Last activity Aug 1, 2026. Fit: adaptable 3, operable 2.
Editions
Bring your own keys · Free open source
- Clone
git clone https://github.com/cdinnison/ray-finance - Install
npm install -g ray-finance
Pro (managed keys) · $10 per month closed source
- HostedOpen the hosted app
Adaptable: what is yours to change
Make it yours
Config only18 things to edit
Pick the model provider and model in .env or ~/.ray/config.json, add Plaid or Bridge credentials, and edit ~/.ray/context.md, the persistent profile the advisor reads before every answer. That file is where an Adopter changes the advice: household, goals, strategy, rules.
- Env vars
RAY_PROVIDERRAY_MODELANTHROPIC_API_KEYOPENAI_COMPATIBLE_KEYOPENAI_COMPATIBLE_BASE_URLPLAID_CLIENT_IDPLAID_SECRETPLAID_ENVPLAID_REDIRECT_URIPLAID_OPTIONAL_PRODUCTSBRIDGE_CLIENT_IDBRIDGE_CLIENT_SECRETDB_ENCRYPTION_KEYPLAID_TOKEN_SECRETRAY_PORT- Config files
~/.ray/config.json.env- Prompt files
~/.ray/context.md- Accounts you need
- Plaid developer account (US/CA) or Bridge (EU)LLM provider account, or Ray Pro
Source
- github.com/cdinnison/ray-finance
- MIT license
- Last commit Aug 1, 2026
- 301 stars
Operable: what an agent can drive
Interface
OfficialCLIpublished by the builderlocal
How an agent can drive an Operable Listing, in five levels: native (built for the agent as the primary interface), official (the Builder ships an agent interface), wrapped (a third party wraps the software's API), config (an agent can only drive it by editing files), gui (screen control only). An interface is official only when it is published by the same organization that ships the software. GUI-level Listings are allowed and sorted last.
- Docs
- github.com/cdinnison/ray-finance#commands
- Tools
add_recat_rulebudgetsgoalsalertsscoring
Reach
Partial coverage. 7 of 9 jobs reachable through the stated interface.
| Job | Through the interface | Evidence |
|---|---|---|
| Link bank accounts | Not reachable | ray link opens Plaid Link or Bridge in a browser and needs the human to authenticate |
| Sync transactions and balances | Reachable | ray sync; scheduled by launchd or cron |
| Financial dashboard, accounts, transactions | Reachable | ray status, ray accounts, ray transactions (filterable) |
| Spending breakdown and monthly recap | Reachable | ray spending [period], ray recap [period] |
| Budgets and goals | Reachable | ray budgets, ray goals |
| Daily score, streaks and alerts | Reachable | ray score, ray alerts |
| Ask the advisor a question | Undetermined | ray starts an interactive chat; no documented one-shot or piped prompt mode |
| Import Apple Card CSV and manual accounts | Reachable | ray import-apple <path>, ray add |
| Backup and restore | Reachable | ray export, ray import |
Code stack
- Languages
- TypeScript
- Frameworks
- none
- Package manager
- npm
- Database
- SQLite (SQLCipher)
- Hosting target
- local machineDocker
- Built
- Unknown (recorded, never ranked)
Model stack
- Providers
- AnthropicOpenAIOllamaany OpenAI-compatible endpoint
- Models
- none
- Keys you need
RAY_PROVIDERRAY_MODELANTHROPIC_API_KEYOPENAI_COMPATIBLE_KEYOPENAI_COMPATIBLE_BASE_URL- Prompts live in
~/.ray/context.md
Evidence and confidence
| Field | Where it was seen | Confidence |
|---|---|---|
| formFactor | npm CLI, ray command table in README | 95% |
| executionModel | dashboard commands are deterministic; chat calls an LLM with tools (README How It Works) | 90% |
| operability | official CLI from the Builder; no MCP or API | 85% |
| effort | README Configuration section names env vars, config.json and context.md | 90% |
| editions | README: bring-your-own-keys free forever; Pro $10/mo with Stripe checkout | 85% |
| active | GitHub pushedAt 2026-08-01; HN comments May 2026 | – |
| reach | 80% |
Open questions
- Whether ray accepts a prompt argument or stdin for non-interactive advisor calls
- Is context.md safe to edit by hand or only through the self-updating flow
Sources
- github.com/cdinnison/ray-finance sourcing:invoicing-finance:community
- www.npmjs.com/package/ray-finance analysis:invoicing-finance