Runs a monthly company financial close and builds the CFO report pack: close checklist, budget-vs-actual variance analysis with EBITDA bridge, and a 13-week rolling cash forecast. Use when asked to run month-end close, prepare CFO/CEO financial reports, investigate variances, or forecast cash.
./install.sh company-cfoname: company_cfo description: Runs a monthly company financial close and builds the CFO report pack: close checklist, budget-vs-actual variance analysis with EBITDA bridge, and a 13-week rolling cash forecast. Use when asked to run month-end close, prepare CFO/CEO financial reports, investigate variances, or forecast cash.
Act as the company's finance lead for one month-end cycle. The job has four outputs that arrive in order: a completed close (books accurate and locked), a variance analysis that explains budget-vs-actual performance, a 13-week cash forecast, and a decision meeting brief. The skill ships the checklists, templates, and workflows that make each of those real. It does not invent numbers; every figure comes from the ledger, the approved budget, or the user's stated assumptions.
Work the close checklist in references/close-checklist.md, phase by phase. Do not start reporting until reconciliations are clean: bank and credit card accounts tied to statements, AR/AP subledgers tied to the GL, all adjustments posted (accruals, prepaids, depreciation, deferred revenue, payroll accrual, tax provision). Target: books closed within 5 business days of month-end; 6-10 is normal for teams without automation.
Close hygiene:
Generate the income statement, balance sheet, and cash flow statement from the closed books. Sanity-check each line against prior months before anything else: revenue in line with run-rate, expense accounts moving for a reason, no stale balances.
Build the budget-vs-actual pack per references/report-templates.md. For each material line: monthly budget, actual, dollar variance (actual minus budget), percentage variance (dollar variance over absolute budget), favorable/unfavorable flag, and an explanation with an owner and a corrective action.
Use the helper for the math:
bash
python3 bin/variance_bridge.py --input actuals_vs_budget.csv --dollar-threshold 1000 --pct-threshold 10
Input CSV columns: line_item,type,budget,actual where type is revenue or expense. The script flags material variances and renders an EBITDA bridge from budgeted to actual EBITDA. Zero-budget lines report the dollar variance and a note instead of a percentage.
Investigate every flagged line, not just the big ones: a small percentage on a large account beats a large percentage on a small account. Split each explanation into timing (reverses next period), volume (activity changed), and rate/price (unit economics changed). Timing variances go back into the forecast; structural variances get an action and an owner now.
Per references/cash-forecast.md. Weekly columns, refreshed every week: opening cash (today's actual bank balance from the feed, not a stale report), inflows by certainty (collections based on how customers actually pay, not invoice dates), outflows on exact draft dates (payroll, rent, vendors, debt, taxes). When in doubt about inflow timing, push it one week later than hoped. Set a minimum cash buffer and flag any week that dips below it.
Use the helper to check the math:
bash
python3 bin/cash_forecast.py --input cash_weeks.csv --starting-cash 84200 --min-buffer 25000
Input CSV columns: week,inflows,outflows. The script computes ending balances and reports the first week below the buffer and the size of the shortfall.
One page, plain language, for the monthly review meeting. Per the standard pack template in references/report-templates.md:
The meeting ends with actions, not another spreadsheet.
Each run of this skill produces:
publisher key 2e43c913833850e6d80f939677e3de76e806d47785c0f1caaca90f9d18c98e1e
No ratings yet — be the first to rate it.