Install
openclaw skills install @puncsky/beancount-roll-forwardExplain how one balance-sheet account moved over a period — opening balance, each signed movement, closing balance — with shown, reproducible bea queries for prepaid, loan, and brokerage accounts. Strictly read-only; the closing is computed independently and any gap is reported, never plugged. Skip ledgers hosted on Beancount.io, recording entries (beancount-add), explanations of one transaction (beancount-ask), reconciliation against a statement (beancount-reconcile), investment or tax advice, and general Beancount or BQL questions.
openclaw skills install @puncsky/beancount-roll-forwardExplain a balance-sheet movement as opening + signed movements = closing — never with model arithmetic, and never with a plug.
This skill exists because "why is this balance what it is" is the question a ledger should answer exactly. Every figure comes from a query run against the ledger, the closing is computed by an independent route, and the ledger is never modified.
beaRead beancount-init's references/bea-cli.md (from this skill's folder, ../beancount-init/references/bea-cli.md; a copy at references/bea-cli.md when this skill was installed alone) before running ledger commands. Without bea, use beancount-init's references/compatibility.md. Run the queries yourself: bea ask hands the question to another model, and its figures are not queries you can show.
Does: run the read-only roll-forward trio in references/roll-forward.md — read it first; every query there is tested — for one account, one currency, and one period, and present the tie-out.
Does not: write, edit, or format any file; reconcile against an external statement (beancount-reconcile); explain spending or answer general ledger questions (beancount-ask); force a difference to zero; give investment or tax advice.
Local ledger files only. For a ledger hosted on Beancount.io, stop this skill and offer a separately requested hosted workflow or local clone (beancount-init's references/bea-cli.md, Hosted ledgers). Find the root ledger with the suite's discovery convention (fd -e beancount -e bean .; the root has option/include directives) and confirm it when ambiguous.
Name the exact account (a subtree rolls forward account by account, then sums only within one currency), the currency, and the half-open period [start, end). Resolve "last quarter" against today's date and state the resolved range. When the account or period is ambiguous, ask — a precise explanation of the wrong account reads as authoritative.
Run opening, movements, and the independently computed closing from the reference. Present:
Uncategorized stays visible: a movement that cannot be named is listed as its own bucket with date and amount, never dropped or netted.