✨ New: Inspect subagent transcripts
When a turn spawns a subagent via the Agent/Task tool, its full transcript is now one click away. The tool call card gets a Subagent action that opens a modal rendering the subagent's messages with the same bubbles as the main session. While the parent tool call is still running, the modal polls every 5s and auto-scrolls so you can watch the subagent work in real time; closing it stops the polling.
The Agent/Task tool header also now shows the task description (the same slot Bash uses for its command — truncated, full text on hover) instead of a bare tool name, so you can tell subagents apart at a glance.
✨ New: Builtin slash commands are real skills + /cr
The builtin slash commands (/qa /fx /ex /go /cg /cc) now write their resolved prompt to ~/.cockpit/skills/<cmd>/SKILL.md and hand the model a "read this skill file" pointer — the same flow user-defined skills use — instead of inlining the whole template. They're now inspectable and editable on disk like any other skill.
New this release: /cr — a full code review (static triangulation + dynamic modelling), available alongside the others.
🐛 Fix: Terminal bubbles render UTF-8 correctly
Terminal bubbles ran in the C/POSIX locale because the pty env whitelist dropped LANG/LC_*, so vim/less showed CJK and emoji as mojibake while ASCII looked fine. Bubbles now default to a UTF-8 locale and pass real LANG/LC_ALL/LC_CTYPE through when the server has them.
🐛 Fix: PTY mode handles AskUserQuestion cleanly
In PTY mode, a model reaching for the AskUserQuestion dialog is now blocked at the source by a PreToolUse hook that steers it to ask in plain text and end the turn normally — so the turn completes instead of getting stuck behind an interactive card. A circuit breaker ends the turn after 3 attempts as a backstop, and the injected hook settings now self-heal across mixed-version cockpit instances.
🐛 Fix: Update popover closes on outside clicks
The "update available" popover stayed open when you clicked into the project area, because that area is a per-project iframe whose clicks never reached the handler. It now listens in the capture phase and closes on window blur, so clicking anywhere — including inside the project iframe — dismisses it.