v1.1.0
Added
-
A Usage popup. Bind
switchboard.usageor open it from the central menu to see how much of
each AI subscription is spent and when it resets. Each agent gets a donut for the window closest
to running out, a bar for every other window, and the numbers that give the percentage its
context: what the session spent, how much of the context window the last turn used, whether
credits are on. Every card dates itself —as of 12m ago— because Codex reports whatever its
last session wrote, and a two-day-old percentage read as current is the mistake this popup exists
to prevent. Resets are given both ways,in 1d 12handresets 08:53 Wed.Codex reads the exact numbers OpenAI returns, straight out of its own session log, with no
network at all. Claude Code publishes nothing to disk, so its card asks the same endpoint the
in-session/usagecommand asks, using the OAuth token Claude Code already stores; that request
runs on a worker with a timeout, so the popup opens instantly with Codex on screen and fills
Claude in when it lands. Claude also grades its own limits, and the card colours them the way the
provider grades them rather than by a threshold of ours; anything ungraded falls back to
usage.warn_percentandusage.alert_percent.Each card names the account it is reporting on — the two agents are routinely signed in as two
different people, and a quota means little without knowing whose it is. Codex's address comes
from the ID token it stores, Claude's from the profile Claude Code caches, and that profile is
also where the Claude card gets its plan, since the usage endpoint names none.Press
rto read both again. Any agent that cannot be read says why on its own card and leaves
the other one alone. Choose the providers and thresholds under[usage], or from the settings
overlay. -
Zen can hide Herdr's own chrome. The new
zen.chromesetting (offby default, or
panes/full) suppresses the pane borders and gaps, the scrollbar column, the tab row and
the sidebar for the length of a zen session. None of those have a per-pane switch, so anything
butoffrewrites the matching[ui]keys in Herdr's ownconfig.tomland reloads Herdr,
then restores them exactly on the way out: comments and unmanaged keys survive, keys already at
the wanted value are left alone, and your untouched config is copied to
$XDG_STATE_HOME/herdr-switchboard/herdr-config.backup.tomlbefore the first write. If a
restore fails or Herdr is killed mid-session,herdr-switchboard zen chrome-restoreputs it
back. Herdr only appliessidebar_start_collapsedon its next launch, sofullmay leave the
sidebar in place — zen measures that and says so rather than failing silently. -
Zen mode.
switchboard.zen-togglegives the current pane the screen: it moves to a tab of
its own, centred atzen.width(default 70%) between two dimmed gutters, and toggling again
puts it back where it was.switchboard.zenopens a picker to zen any pane instead of the
current one. The gutters are dimmed by painting over them through Herdr's graphics API, which
needs[experimental] kitty_graphics = true; without it the gutters are simply blank. Tune it
withzen.width,zen.scrim, andzen.scrim_color, or from the settings overlay. Neighbouring
panes are never touched — only the zen'd pane moves, and its running process survives the move.
Leaving zen restores a two-pane tab exactly; a more deeply nested tab gets every pane back beside
its former neighbour, with a notification when the split nesting could not be reproduced. -
An AI Agents picker. Bind
switchboard.agentsor open it from the central menu to list the
AI integrations installed in Herdr.enterstarts the selected AI in the origin pane,ctrl-t
starts it in a new tab, andalt-wstarts it in a new workspace; failed starts clean up any
tab or workspace Switchboard created. The focused picker opens as a compact centered popup rather
than a mostly empty full-screen overlay. This requires Herdr 0.8.0 or newer.
Changed
- The README is now a concise entry point instead of a monolithic reference. Quick start,
feature discovery, core actions, and namespaced configuration stay on the front page; detailed
keybindings, safety behaviour, Zen, Git, configuration, and architecture now live in focused
guides underdocs/. Stale pre-1.0 wording, flat configuration names, dependency scope, popup
placement, update-version examples, and contributor checks were corrected at the same time.
Fixed
- Opening AI Agents or another popup from the Central Menu now waits for the menu popup to close,
so Herdr no longer rejects the replacement aspopup already open. - The AI Agents picker now closes immediately after a selection while startup readiness is checked
in the background; failed starts still clean up new tabs or workspaces and report the error with
a notification. - Linked development checkouts now rebuild their release binary when Rust sources or Cargo metadata
are newer, instead of silently running an old same-version binary after source changes.