Cash Runway Calculator
calculate_runwayCalculation, not advice. Verify with a professional before acting. Deterministic cash-runway calculator. Given your liquid savings, monthly essential expenses, optional ongoing inflows (partner income, side income, severance paid as a monthly stream, unemployment benefits), and an optional expense-inflation rate, computes how many months the fund lasts before it hits zero, plus a month-by-month drawdown schedule. Single scenario per call: to compare 'status quo' vs 'cutbacks' vs 'cutbacks + unemployment', call once per scenario with the matching expenses and inflows. When inflows meet or exceed expenses (and expenses are not inflating), the fund does not draw down and a self-describing does-not-deplete outcome is returned instead of a month. Yield on the fund is treated as 0% in v1 (conservative). All assumptions cite their source. HEAVY tool: use output='summary' (default) for the headline or output='inline' for the full schedule. output='capture' writes the full payload to a file on this server's local disk for the chart-render pipeline; available on the local stdio transport only, and rejected with a structured error on the hosted HTTP transport.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| toolArguments | Yes | JSON object with parameters: REQUIRED: current_savings: decimal >= 0. Liquid fund available to draw down. 0 is valid (already-empty fund). monthly_essential_expenses: decimal > 0. Monthly outflow at the chosen expense basis. OPTIONAL: monthly_inflows: decimal >= 0 (default 0). Ongoing monthly income that continues during the drawdown (partner income, side income, unemployment benefit, severance paid monthly). Modeled as a flat monthly stream; a one-time severance lump and time-limited benefits are not modeled in v1. annual_inflation_rate_pct: decimal [0, 100) (default 0). When > 0, expenses grow each month by the monthly-equivalent of this annual rate. When 0, expenses are constant. use_essential_expenses: bool (default true). true = essential-only basis (survival runway); false = total-spend basis (current-pace runway). Labels the reported expense_basis. chart_title: string (optional). Reserved for the chart pipeline. Must not contain em-dashes or en-dashes. Max 120 characters. ENVELOPE: output: 'summary' (default) | 'inline' | 'capture' summary: headline scalars (depletion month / does-not-deplete) + citations; the schedule is stripped. inline: full payload including the month-by-month schedule[] (for chart rendering). capture: full payload written to ~/.senaro/captures/; capture_ref URI returned. Available on the local stdio transport only; the hosted HTTP transport rejects 'capture' with a structured error naming 'summary' and 'inline' as the valid alternatives. |