Skip to main content

wealthbraid

Python CI Documentation Status License Ruff

wealthbraid is a local-first, AI-native personal wealth manager built on an append-only, double-entry ledger stored in human-readable files.

AI agents analyze your finances and propose changes through a CLI. You review explanations, exceptions, reconciliations, and proposals in a local web UI. Nothing an agent proposes changes a balance until you approve it. Every number can be traced back to the evidence, the reasoning, and the decision behind it.

  • Append-only and rebuildable. The book is a directory of JSON Lines segments plus the original documents. Records are never overwritten. Corrections are new records linked to what they supersede. All state is rebuilt from these files, and wealthbraid verify checks every content hash, the hash chain, and every evidence digest.
  • Double-entry and exact. Every entry balances per commodity. Amounts are decimals, never floats. Multi-currency valuation uses recorded prices.
  • Provenance for every change. Every change is an operation. It records the actor, inputs, evidence, reasoning summary, confidence, proposed records, approval status, and resulting record ids.
  • Humans approve sensitive changes. Only a human: actor can approve, and every command that writes must name its actor explicitly. Only evidence and notes, which neither change balances nor decide what enters the book, may be applied automatically by policy. Imported statement lines wait for approval. Approval re-checks the proposal against the book as it is at that moment.
  • Private by design. No telemetry and no network calls. wealthbraid never calls a model provider itself. The web UI serves only loopback clients and loads no external assets.

Installation

uv tool install wealthbraid      # or: pip install wealthbraid
# from a checkout:
uv sync && uv run wealthbraid --help

A month in wealthbraid

wealthbraid init ~/finances --name "Household" --currency EUR --user alice
cd ~/finances && git init        # optional; the log only ever grows

# You set up accounts. Every write names its actor; --actor and --book go before the command.
wealthbraid --actor human:alice open Assets:Bank:Checking Income:Salary Expenses:Groceries --date 2026-01-01 --approve

# An agent imports and categorizes
export WEALTHBRAID_ACTOR=agent:claude
wealthbraid import csv statement.csv --account Assets:Bank:Checking \
  --date-column Date --amount-column Amount --description-column Description
wealthbraid categorize                                   # rules from wealthbraid.toml
wealthbraid categorize --assignments picks.json --reasoning "Merchant names are unambiguous."
wealthbraid reconcile Assets:Bank:Checking --date 2026-08-31 --balance 6384.56

# You review and decide, in the browser or the terminal
wealthbraid serve                                        # http://127.0.0.1:8765
wealthbraid review
wealthbraid --actor human:alice ops approve opr_…   # the imported lines, then the categorization

Then ask questions of the book:

wealthbraid report networth
wealthbraid report cashflow --from 2026-01-01 --to 2026-08-31
wealthbraid explain change Assets:Bank:Checking --from 2026-08-01 --to 2026-08-31
wealthbraid trace ent_…                 # evidence → statement line → proposal → decision → corrections
wealthbraid scenario template > plan.toml && wealthbraid scenario run plan.toml
wealthbraid verify

Every report includes the record id it was computed from. --at <record> reproduces a past view exactly.

Commands

Area Commands
Book init, status, verify, log, show, trace, schema, serve
Ledger accounts, open, close, entries, add, correct, void, price
Statements evidence add/list, import csv, lines, categorize, reconcile, reconciliations
Workflow propose, review, ops list/show/approve/reject, note add
Analysis report balances/income/networth/cashflow, explain change, scenario run/template

Every command accepts --json. See the agent guide for the machine contract and the architecture for the design.

Development

uv sync
uv run pytest
uv run ruff check src tests && uv run ruff format --check src tests

License

BSD 3-Clause. See LICENSE.

Release files for wealthbraid 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for wealthbraid 0.1.0
File Size Uploaded
wealthbraid-0.1.0.tar.gz 256.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for wealthbraid 0.1.0
File Interpreter ABI Platform
wealthbraid-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 392.8 kB

Release files / wealthbraid-0.1.0.tar.gz

Download URL wealthbraid-0.1.0.tar.gz
Size 256.4 kB
Tags Source
SHA-256 checksum
How to use checksums
62cd6d44a772ef79689368a1ec1841e8f388fe9e17c95b692c978b9bdd0b8975
BLAKE2b-256 checksum
How to use checksums
72f2c4e7ca27bd5b1505722e3c449122dd9f149b9f5700dfd354b128c597812d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / wealthbraid-0.1.0-py3-none-any.whl

Download URL wealthbraid-0.1.0-py3-none-any.whl
Size 136.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
64e1fa65e2ea0dd6f3edeb033d1d563d76500367d83ef6ab32fa25b292f72866
BLAKE2b-256 checksum
How to use checksums
17590f82a9f515c599b25b1db00e611efadfef0e5ee3cbc0120811098eeb8aed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page