v0.18.0
What's Changed
A new interactive dashboard (new)
The terminal UI has been rebuilt from the ground up on Textual, replacing the old curses menu. Running bare cswap in a terminal now opens a dashboard: the active account as a full card with live 5-hour/7-day usage bars (plus spend and per-model windows when your plan has them), the other accounts as compact one-line rows, and a nested menu for switching, adding and removing accounts, and refreshing. It is keyboard-first — arrow keys or j/k, s to switch, enter to confirm, esc to go back — and mouse clicks work everywhere too. A one-line status strip with the active account's usage stays docked on top of every screen, and cswap tui remains the explicit spelling.
Watch and auto, live (new)
cswap watch (or w from the dashboard) opens a live monitor with every account in full detail; press s to pick a switch target without leaving the view. The auto screen runs the real auto-switch engine in dry-run mode by default so you can watch what it would do, and a single key takes it live. An open dashboard stays polite to the API: each refresh window fetches only the active account plus the stalest alternate, so traffic stays flat no matter how many accounts you manage.
Windows out of the box (new)
The new TUI runs on stock Windows terminals — no windows-curses extra to install — and the TUI test suite now runs on Windows CI.
Also in this release: cswap auto relaxes the active account's polling cadence while usage is far from the switch threshold, upgrade notifications point at the cswap upgrade subcommand, and the TUI describes token-expired and other credential states with exactly the same wording as cswap list.
Full Changelog: v0.17.1...v0.18.0