- run_resume falls back to a new conversation only when the transcript file
is gone; other failures end at the menu with the recorded id intact.
- The SessionStart hook resolves the session name under the registry lock;
rename holds it across tmux rename-session and the registry move
(dd_registry_locked, nestable).
- dd_load_env parses KEY=value like systemd instead of sourcing the files.
- devdesk-deploy: DPkg::Lock::Timeout, explicit FAILED lines on stdout and in
the log; the hook answers synchronously and CI checks the HTTP status.
logrotate for the deploy log.
- postinst drops duplicate terminal-features entries; hooks sweep stale
temp files.
Closes#12
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Terminal link provider: printed paths that are files of the session open
in Files (at the line); the file list is preloaded so the first hover works.
- Alerts: "In a new session" opens alert-<name> and types the prompt once
Claude is up.
- devdesk-guard PreToolUse(Bash) hook: permissionDecision "ask" for
destructive commands (verified to prompt in auto mode); DEVDESK_GUARD and
guard.local.
- State hook logs Bash commands and derives host tags (ssh targets, CT/VM
ids); --list carries tags, --peek the last commands; UI shows both.
Closes#21Closes#18Closes#27
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- PermissionRequest hook: the state file records tool, detail and
description of a pending permission; Notification keeps it.
- devdesk attach --answer (presses 1/Esc only if the same wait is on and the
prompt is visible), --peek (last exchange from the transcript), --reply
(bracketed paste + Enter, streamed like uploads).
- Inbox: Allow/Deny/Open for permission waits; Peek & reply for other waits
and finished sessions. Matrix messages include the command.
Closes#22Closes#23
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>