Update projection
update_projectionUpdate projected values for specific accounts and months in the financial plan. Use this when the user asks to change a projection, forecast, or budget number. Empty books are created on first write (the named account is added as CASH OUT unless the name is clearly revenue). Only current and future months can be updated — past months with bank actuals are protected. IMPORTANT: If an account already has non-zero values, you must specify mode="add" to add on top of existing values, or mode="set" with force=true to replace. Without these, the tool will return the current values and ask for clarification.
Routing: Call get_projections first to see current values — an account with existing non-zero values needs mode="add" to layer on top or mode="set"+force=true to replace
[write-tier — first use may require a manager's approval; a from-now-on approval makes future calls seamless, a just-once approval re-asks next time. Call it on the first clear ask; the card is the yes — do not re-ask in chat.]
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | How to apply the value. "set" = replace existing value (default) — pair with force=true to skip the overwrite confirmation. "add" = add on top of the existing value — use when the user says add/include/put in/layer on top. | |
| force | No | When mode="set", skip the overwrite confirmation for non-zero values. Use only when user explicitly wants to replace existing values. | |
| updates | Yes | Array of month+value pairs — supports multiple months in one call, e.g. [{ month: "apr", value: 15000 }, { month: "may", value: 16000 }]. | |
| companyId | Yes | FreedomOS company id to act within (you must be a member). Required for company-scoped tools. | |
| fiscal_year | No | Fiscal year to update (default: current year) | |
| account_name | Yes | Account name to update. Matches an existing line, or creates it on first write (CASH OUT unless the name is clearly revenue). |