Files
jaredandClaude Opus 5.5 07a41bd625
build-deb / Lint, test, package (push) Canceled after 1m13s
build-deb / Notify on failure (push) Canceled after 0s
feat: DevDesk v0.1.0, a persistent browser terminal for Claude Code
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>
2026-10-06 23:11:07 -04:00

25 lines
1.1 KiB
Plaintext

Source: devdesk
Section: admin
Priority: optional
Maintainer: Jared Vititoe <jjvititoe1@gmail.com>
# Node.js >= 18 with npm is also needed to build the web UI (provided by the CI image / nodesource).
Build-Depends: debhelper-compat (= 13), bats, ca-certificates, curl, jq, tmux (>= 3.2)
Standards-Version: 4.6.2
Homepage: https://code.lotusguild.org/LotusGuild/devdesk
Vcs-Browser: https://code.lotusguild.org/LotusGuild/devdesk
Vcs-Git: https://code.lotusguild.org/LotusGuild/devdesk.git
Rules-Requires-Root: no
Package: devdesk
Architecture: amd64
Depends: ${misc:Depends}, fzf, jq, tmux (>= 3.2)
Description: persistent browser terminal for Claude Code
DevDesk serves a LotusGuild-styled web terminal (ttyd with an xterm.js
front end) whose sessions live in a dedicated tmux server. Closing the
browser, restarting the web service or upgrading the package never stops
the Claude Code processes; after a reboot each named session resumes its
own conversation.
.
Authentication and TLS are expected to be handled by a reverse proxy
(Nginx Proxy Manager + Authelia), which also injects the ttyd credential.