- Light mode with the house ☀/◐ toggle and lt_theme preference; light
terminal palette; Claude runs with dark-ansi so its colours follow the
palette; tmux and the statusLine use ANSI colours.
- Command palette (⌕, Ctrl+Shift+P) with session, terminal, view, link and
help commands.
- .lt-modal dialogs for new/rename/end and a keyboard shortcuts sheet.
- .lt-toast results for actions, uploads, copy and CI.
- ttyd dropped the reply of fast one-shot commands; replies now wait for the
browser to hang up, and the client hangs up as soon as it has one.
- Sessions panel re-fetches after an action instead of reusing a stale poll.
Closes#31Closes#32Closes#33Closes#34Closes#35
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- devdesk-state-hook (Claude UserPromptSubmit/PostToolUse/Notification/Stop/
SessionStart/SessionEnd) records whether each session is working, waiting on
you or idle; --list carries it. The sidebar shows it, the header shows the
current session's state, and a pulsing "needs you" chip jumps to sessions
waiting for input. Session refresh no longer depends on the sidebar being open.
- `devdesk attach --upload SESSION FILE BYTES` receives a file as base64
terminal input (raw mode, exact length, size-checked, sanitised name) into
/var/lib/devdesk/uploads/<session>/. The UI uploads dropped or pasted files and
pastes the path into Claude, which attaches images itself.
- `devdesk alerts` / `--alerts`: firing and pending Grafana alert rules with
severity, instances, summary and a link. The panel's "Ask Claude" types an
investigation prompt into the current session.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>