Cash Flow Forecast
by @samledger67-dotcom
Generates a 13-week rolling cash flow forecast from QuickBooks Online data with base, optimistic, and pessimistic scenarios including burn rate and runway an...
clawhub install cash-flow-forecastπ About This Skill
name: cash-flow-forecast description: "Build a 13-week rolling cash flow forecast from QBO data with 3-scenario modeling (base, upside, downside). Pulls Balance Sheet and CF Statement for starting cash and trend baseline. Use when a client needs cash runway projection, burn rate analysis, or scenario-based liquidity planning. NOT for annual budgets, P&L variance analysis, or bank reconciliation." license: MIT summary: - Builds a 13-week rolling cash flow forecast from QBO data with 3-scenario modeling - Pulls live Balance Sheet (starting cash) + CF Statement (trend baseline) from QBO - Outputs Excel: Summary | Weekly Detail | Scenarios | Burn Rate | Assumptions | CDC Log - GlowLabs-type clients: runway/burn emphasis; SB Paulson-type: interest expense emphasis - CDC tracks forecast accuracy vs. prior runs (predicted vs. actual starting cash) updated: 2026-03-17 metadata: openclaw: emoji: "πΈ"
Cash Flow Forecast Skill
When to Use
NOT for
Script Location
scripts/pipelines/cash-flow-forecast.pyQuick Start
cd /Users/samshouse/.openclaw/workspaceStandard 13-week forecast
python3 scripts/pipelines/cash-flow-forecast.py --slug glowlabs6-month history for better seasonality
python3 scripts/pipelines/cash-flow-forecast.py --slug sb-paulson --months 6Custom low-cash threshold (GlowLabs: high burn)
python3 scripts/pipelines/cash-flow-forecast.py --slug glowlabs \
--low-cash-threshold 50000 \
--critical-threshold 25000 \
--out ~/Desktop/reportsSandbox testing
python3 scripts/pipelines/cash-flow-forecast.py --slug glowlabs --sandbox
All CLI Options
| Flag | Default | Description | |------|---------|-------------| |--slug | required | QBO company slug |
| --weeks | 13 | Forecast horizon (weeks) |
| --months | 3 | Months of CF history to pull (1β6) |
| --low-cash-threshold | 25000 | Warn when balance < X |
| --critical-threshold | 10000 | Critical alert when balance < X |
| --account | auto | Specific bank account name filter |
| --out | ~/Desktop | Output directory |
| --sandbox | false | Use QBO sandbox |Output Excel Tabs
Tab 1: Cash Flow Summary
Tab 2: Weekly Detail
Tab 3: Scenarios
Tab 4: Burn Rate
Tab 5: Assumptions
Tab 6: CDC Log
Scenario Definitions
| Scenario | Collections | Expenses | |----------|-------------|----------| | Base | Historical avg | Historical avg | | Optimistic | +10% | Unchanged | | Pessimistic | -15% | +5% |Cash Flow Categories
Automatically classified from QBO CF rows:Operating β Inflows
collections: Revenue, AR, Net Income, payment processor receiptsinterest: Interest incomeOperating β Outflows
payroll: Wages, salaries, officer comp, Deel (GlowLabs)rent: Rent, lease, occupancyvendors: AP, COGS, professional fees, software, subscriptionsinterest: Interest expense (SB Paulson: material line)taxes, insuranceInvesting
capex: Equipment, property, asset purchasesFinancing
debt: Loans, line of credit, notes payableequity: Owner distributions/contributionssafe: SAFE notes (GlowLabs)Client SOP Integration
The script readsclients/{slug}/sop.md automatically and adjusts:| SOP Signal | Effect | |------------|--------| | "burn rate", "runway", "high cash burn" | Burn Rate tab emphasized, π΄ alert | | "interest expense" | Interest tracked separately | | "POS collection", "collected at POS" | No AR lag β flat weekly inflow distribution | | "accounts receivable" | AR-based: note 30-45 day receipt lag | | "SAFE" | SAFE financing category added | | "crypto", "wallet", "ETH" | Crypto wallet note added | | "Deel" | Deel inbound classified as expense reduction |
Seasonality Weights
Default week-of-month distribution (configurable in script CONFIG section):| Week | Inflows | Outflows | Rationale | |------|---------|----------|-----------| | Week 1 (days 1β7) | 30% | 35% | Collections/payroll land early | | Week 2 (days 8β14) | 20% | 20% | Mid-month quiet | | Week 3 (days 15β21) | 20% | 25% | Mid-month payroll + rent | | Week 4 (days 22β28) | 30% | 20% | End-month collections | | Week 5 (overflow) | 0% | 0% | Rarely used |
POS clients (e.g. SB Paulson): inflows flattened to equal weekly distribution.
CDC Accuracy Loop
1. First run: savesstarting_cash, first_week_balance, avg_monthly_burn, months_of_runway
2. Second run: compares new starting_cash against prior first_week_balance
3. Accuracy % = how close the forecast was to reality
4. Burn rate and runway deltas tracked run-over-run
5. Cache stored in .cache/cash-flow-forecast/{slug}.jsonLow-Cash Alert Colors
| Color | Excel Fill | Condition | |-------|-----------|-----------| | β OK | White | Balance β₯ low threshold | | β Warn | Yellow | Balance < $25K (configurable) | | π΄ Critical | Orange/Red | Balance < $10K (configurable) |Client-Specific Notes
GlowLabs (High Burn)
--low-cash-threshold 50000 --critical-threshold 25000 recommendedSB Paulson / Willo Salons
--months 6 for better seasonality (salon business is seasonal)Dependencies
pip install openpyxl
Node.js QBO client must be authenticated with a valid token.Output Naming
CashFlowForecast_{slug}_{YYYY-MM-DD}.xlsx
Default output: ~/Desktop/Related Pipelines
pl-quick-compare.py β P&L variance analysispl-deep-analysis.py β Controller-level with GL drill-downbank-reconciliation.py β Bank statement reconciliationβ‘ When to Use
π‘ Examples
cd /Users/samshouse/.openclaw/workspaceStandard 13-week forecast
python3 scripts/pipelines/cash-flow-forecast.py --slug glowlabs6-month history for better seasonality
python3 scripts/pipelines/cash-flow-forecast.py --slug sb-paulson --months 6Custom low-cash threshold (GlowLabs: high burn)
python3 scripts/pipelines/cash-flow-forecast.py --slug glowlabs \
--low-cash-threshold 50000 \
--critical-threshold 25000 \
--out ~/Desktop/reportsSandbox testing
python3 scripts/pipelines/cash-flow-forecast.py --slug glowlabs --sandbox