- 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>
- Sessions no longer need a project folder: any name works and starts in
DEVDESK_DEFAULT_DIR unless it matches a project; `devdesk new NAME [PROJECT]`.
- Rename (✎) and end/forget (×) sessions from the Sessions panel, plus
`devdesk rename`. The browser runs them as `devdesk attach --new|--rename|--end`
through ttyd. Renames keep the running Claude and its recorded conversation:
the hook, the run-wrapper and the statusline ask tmux for the current name.
- Claude Context panel is live: devdesk-statusline snapshots model,
context-window use, cost and edits per session, which --list reports;
Claude's footer gets a one-line summary. The panel now sits under Sessions.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
ttyd serves a single-file xterm.js UI styled with the LotusGuild TDS
(web_template base.css). Sessions live in a dedicated tmux server unit
(devdesk-tmux.service), so restarting or upgrading the web unit never
stops Claude. Each named session maps to a project directory. A Claude
SessionStart hook records the conversation ID, so after a reboot the
session resumes that exact conversation.
- bin/devdesk: attach / new / ls / end / pick, with an fzf picker
- ttyd requires a credential that NPM injects; origin check enabled
- debian/: dh 13 with --no-stop-on-upgrade for the tmux unit, bundled
sha256-verified ttyd 1.7.7, lintian overrides, man page
- CI: lint, test, build, smoke-test, artifact; v* tags publish to the
Gitea apt registry and create a release
Refs: tinker ticket 887531976
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>