| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| tally-linux-amd64.zip | 2026-01-06 | 12.9 MB | |
| tally-macos-amd64.zip | 2026-01-06 | 9.8 MB | |
| tally-macos-arm64.zip | 2026-01-06 | 9.8 MB | |
| tally-windows-amd64.zip | 2026-01-06 | 9.5 MB | |
| README.md | 2026-01-06 | 3.6 kB | |
| Tally v0.1.292 source code.tar.gz | 2026-01-06 | 2.9 MB | |
| Tally v0.1.292 source code.zip | 2026-01-06 | 2.9 MB | |
| Totals: 7 Items | 47.8 MB | 0 | |
What's Changed
tally up Replaces tally run
The primary command is now tally up - shorter and clearer. tally run still works but shows a deprecation warning.
:::bash
# New
tally up --config config/
# Old (deprecated)
tally run config/
Report Diff Feature
See what changed each time you run tally up. Helps catch rule changes, understand version upgrade impacts, and debug "why did my totals change?"
:::bash
tally up
# Output includes:
# Changes since last run:
# Totals: spending $45,231 → $46,892 (+$1,661)
# Merchants: +3 new, 1 removed, 2 tag changes
# Use --diff for details.
tally up --diff # Show detailed changes
Consistent Config Resolution
All commands now use the same config detection logic: auto-detect ./config or ./tally/config, with --config flag to override. No more inconsistent positional arguments across commands.
:::bash
tally up # Auto-detect config
tally up --config ~/budget/ # Override location
tally explain Netflix -c config/
Supplemental Data Sources (Experimental)
Enrich transactions with data from other CSV files using Python list comprehensions. Match Amazon transactions to order details, PayPal payments to merchant names, or any cross-reference scenario.
Note: This feature is experimental and will evolve based on feedback.
:::yaml
# settings.yaml
data_sources:
- name: amazon_orders
file: data/orders.csv
format: "{date},{item},{amount}"
supplemental: true # Query-only, won't generate transactions
:::ini
# merchants.rules
[Amazon - Verified]
let: orders = [r for r in amazon_orders if r.amount == txn.amount]
match: contains("AMAZON") and len(orders) > 0
category: Shopping
subcategory: Online
field: items = [r.item for r in orders] # Add to transaction details
New rule directives:
- let: - Cache expensive queries in named variables
- field: - Add computed fields to transactions (visible in HTML report)
Rule Mode Setting
Control how rules are matched when multiple patterns match:
:::yaml
# settings.yaml
rule_mode: first_match # Default - first matching rule wins
rule_mode: most_specific # Most specific pattern wins
Subcategory Grouping in HTML Report
Toggle between merchant view and subcategory view in the HTML report. Click the grouping toggle to see spending aggregated by subcategory instead of merchant.
Custom Report Title
Replace year: with title: for custom report headers:
:::yaml
# settings.yaml
title: "2025 Household Budget" # New
# year: 2025 # Deprecated
Bug Fixes
- Fix category percentage calculation when filtering by subcategory
- Fix popup click propagation in HTML report
- Fix
tally updatenot offering stable release when on prerelease - Fix JSON export crash accessing missing data
- Fix single-character delimiter handling
- Fix currency formatting throughout HTML report and CLI
Improvements
- Cash Flow Summary in CLI output
- Investment category in monthly trend charts
- Transactions sorted by date descending within merchant view
- Quiet mode implied for
--format jsonand--format markdown
Install
Linux / macOS:
:::bash
curl -fsSL https://tallyai.money/install.sh | bash
Windows PowerShell:
:::powershell
irm https://tallyai.money/install.ps1 | iex
Or download the zip for your platform below.
See https://tallyai.money for more info.