plan_treasury
Simulate shifting idle USDC into GBLIN while keeping operating cash liquid; review surplus, NAV mint, exit value, round-trip cost, blockers, and next steps.
Instructions
Idle USDC to a reviewable plan in one call: operating cash = max(reserve_usd, daily_burn_usd × days), the surplus above it, a simulation of minting that surplus into GBLIN at NAV (fees read live from the vault, estimated exit value today, round-trip cost), the same simulation for a trial amount (100 USDC by default), the blockers (crash shield, redemption cooldown, ETH for the exit) and the tools to call after a human confirms. Reads only: nothing is executed and nothing is advised. GBLIN is crypto exposure (cbBTC, WETH, USDC), not cash and not yield.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Days of spend to keep liquid (default 7, max 365). | |
| trial_usdc | No | Trial amount to simulate beside the surplus (default 100). | |
| reserve_usd | No | USD to keep liquid regardless of the burn rate; the larger of the two rules wins. | |
| daily_burn_usd | No | Average daily spend in USD. Operating cash = daily_burn_usd × days. | |
| wallet_address | Yes | Agent's 0x address. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| next | Yes | The tools to call after a human confirms. | |
| as_of | No | Block and time the reads were taken at. | |
| notes | No | ||
| trial | Yes | The same simulation for the trial amount. | |
| inputs | No | The inputs as applied, with the defaults filled in. | |
| market | Yes | NAV, ETH price, risk regime and crash shield status. | |
| wallet | Yes | ||
| surplus | Yes | USDC above the operating cash. | |
| blockers | Yes | Reasons parking is not appropriate right now, if any. | |
| simulation | Yes | Mint simulation for the surplus: shares, fees, exit value today, round-trip cost; or nothing_to_park. | |
| wallet_state | Yes | USDC, GBLIN and ETH balances, gas health, redemption cooldown. | |
| operating_cash | Yes | USDC to keep liquid: max(reserve_usd, daily_burn_usd × days), with the runway in days. | |
| park_candidate | Yes | True when no blocker applies. Not a recommendation. |