Added
- Startup check for the terminal control channel. Being in a supported
terminal is not the same as being able to drive it. On Kitty, a remote-control
setup that is missinglisten_onor carries a mismatched password used to
surface one failed action at a time, with kitty's raw error in the status line;
captain-miao now proves the channel works before the dashboard takes over the
screen, and a failure prints which half of the setup is wrong — plus the config
block to fix it — while stderr is still visible.
Fixed
- Codex sessions on macOS track their transcript again. Codex rows showed no
context usage, never picked up the first-prompt title, and stayed green forever
after an Esc-interrupt: the rollout watch matched the wrong spelling of a
symlinked path, and macOS reports nothing at all for the way Codex writes (one
long-held file descriptor, appended to for the whole session). Context tokens
and interrupts now land with the event that caused them, and the watch parks
itself while a session is idle, so a session sitting at rest costs nothing. - Codex no longer refuses to start with "local database appears to be
damaged." The synthetic$CODEX_HOMEnow repairs entries where a real file
sits where a link into your real~/.codexbelongs — what Codex leaves behind
whenever it adds a new state file, which eventually split a SQLite database
across the two homes. - Review-pending detection for commands containing a quote. An
r3 watch
wrapped in something likenix develop … --command bash -c '…'was truncated
when normalised, so the row sat at "Task" instead of "Review" — and every
command wrapped that way collapsed onto a single entry in the learned
long-running set. CLAUDE_CONFIG_DIRis honoured when locating Claude's home. An instance
that relocates the agent's config dir no longer has the resume picker and the
bbrowser listing every project from the real~/.claudeinstead.nix buildworks again. The build's source filter droppedassets/, so
the logo the dashboard embeds at compile time was missing and the build failed.
Changed
- README rewritten around installation and configuration, gathering the
Cargo, npm, and Nix routes under one section and documenting every CLI
subcommand and config key in tables.
Security
- The recommended Kitty setup is now scoped by an authorization script.
Pairing the remote-control password with a smallis_cmd_allowedscript shuts
the in-terminal escape-code channel outright — the vector by which a shell
running inside a Kitty window, including one on the far end of an ssh session,
could otherwise drive your terminal — and confines even an authenticated
request to the eight commands captain-miao actually issues. The README carries
the script, and now says plainly that substituting your own password is what
makes that check real: the built-in default is a published constant and
authenticates nothing on its own.
Full Changelog: v0.2.0...v0.2.1