← ClaudeAtlas

budgetlisted

Encrypted monthly statement-merge sync — ingests new bank downloads, categorizes the unhandled transactions through a dialog, and writes a fresh encrypted snapshot the hosted budget app reloads. Trigger on `/budget`, "sync my statements", or "merge this month's statements".
natb1/commons.systems · ★ 3 · AI & Automation · score 66
Install: claude install-skill natb1/commons.systems
# budget This skill runs the monthly statement-merge sync entirely on the user's machine. Each run ingests new bank downloads into the statements archive, generates an inspection report, walks the user through categorizing any unhandled transactions, and writes a fresh encrypted snapshot that the hosted budget app picks up automatically. Two orchestrator scripts do the heavy lifting. You drive them and own the user-facing dialog: - `bash .claude/skills/budget/scripts/budget-sync` — the read-only half. It resolves the per-user config, resolves the distributed binary, requires `BUDGET_ETL_PASSWORD`, bootstraps the snapshot on first run, ingests new downloads, and writes the inspection report to `/tmp/inspect.json`. Platform detection and binary resolution are encapsulated inside this script — you no longer do them yourself. - `bash .claude/skills/budget/scripts/budget-apply [spec]` — the mutating half. It applies a patch spec (default `/tmp/budget-patch.json`), merges the statements into a fresh encrypted snapshot `snapshotDir/budget-<ts>.enc.json`, publishes it onto `current` with `cp -f`, and re-reports residual uncategorized into `/tmp/inspect.json`. ## Privacy invariant Transaction data does not leave the user's machine. You must not send transaction contents, descriptions, amounts, account numbers, the input files, or any snapshot to a network endpoint. The snapshot written to the user-configured `snapshotDir` and `current` is **encrypted** (`.enc.j