Repository navigation
DevThrottle v2.31.0
v2.31.0 - October 25, 2026
Everything that needs your answer now lives in one place, Alerts, on the phone and in the Cockpit. DevThrottle runs properly on a Mac, a scheduled run that cannot work says so at once, and the Director sets up GitHub for you.
Highlights
- Alerts: one bell in the header of the phone app and the Cockpit, with a red count of the things that need your answer: a Director restart request, a secret transfer, or a session asking to message another session. The phone opens Alerts as a full screen of its own. Each request is a card with the question in plain words, who asked and why, and its Approve/Deny (or Accept/Decline) buttons right on the card. An answer takes one tap, and a restart still asks you to confirm. Anything already answered moves down to Earlier, folded away, where an X clears it and Clear all clears the lot. Clearing is remembered on the Gateway, so it holds on every device and after a reload. A failed answer shows in red. A push notification opens the app straight onto its alert. The request cards that used to sit inside the session list, and could not be cleared, are gone.
- DevThrottle on a Mac: the app is called DevThrottle and installs to /Applications. Copy and paste in the terminal work with Cmd+C, Cmd+V and Cmd+A, with an Edit menu, and Copy now comes first in every terminal menu. The command line tools are on the path for unattended shells too, because the installer writes its path settings to
.zshenv. - A schedule that cannot work says so: a scheduled run whose prompt never reached the agent, whose seat is at its usage or spend limit, or that is stuck, is now a failed run at once, never a "started" one. The schedule's owner is told by default, in one plain sentence. A scheduled Claude Code session never waits on the folder-trust question. A schedule's folder is checked on its machine when you save the schedule. The owner can see every account's schedule runs.
- The Director sets up GitHub: it finds git and the GitHub command line, installs them when they are missing, signs the GitHub command line in, and shows on Home whether GitHub is connected.
- Sessions come back after a crash: when a Director is killed or crashes, its sessions are offered back the next time it starts.
Also in this release
- Update now no longer ends with "the launcher is too old".
- The Cockpit shows every session on every machine, and a session started from another machine is linked under the session that started it.
- Typing and pasting into a session from the phone or the Cockpit behave as they do at the keyboard. Prompts get past an agent's usage-limit dialog, and no input is dropped silently.
- Pi sessions are handled in the terminal as well as the other agents, and report their state the same way.
- A rule in a factory that would refuse an action outright becomes a question for you instead: the owner's word is final, and a permission prompt shows as needs-you.
- Factory attachments are stored once and can be removed when no longer needed. Factory working documents keep their newest three versions.
- The setup commands find a
cc-*tool where it actually is, and say so plainly when a tool has no download. The shared Python tools bundle shows as a component of its own. - The Chat answers each poll from an index of the conversation, one poll at a time.
- History retention deletes only the expired sessions' turns, so it no longer holds the store while it reads every row.
- The hosted Gateway is faster under load: account settings and active device keys are kept in memory, the plan lease is kept, and the thread pool starts larger.
- On the Cockpit's Directors page, machine rows line up with the table columns again.
errors listanderrors groupsname the account on the scope line when you pass--emailor--account.- New remote terminal input routes and on-demand terminal conformance checks, for testing how each agent receives input.
- The test suites run on Linux and macOS as well as Windows, and the build installs a named .NET SDK version so a broken "latest" download can no longer stop it.