Wrapper Update: v1.3.16+claude1.1.4498
This release updates the wrapper/packaging only -- the upstream Claude Desktop version is unchanged.
Changes since v1.3.15+claude1.1.4498
Cowork Mode: KVM and bubblewrap isolation backends (#269)
Cowork mode now has a pluggable backend architecture for isolating Claude Code sessions. Three backends are available: KVM (full virtual machine), bubblewrap (Linux namespace sandbox), and host (no isolation, fallback). The launcher auto-detects which to use based on what's available on your system, preferring KVM over bwrap over host.
The KVM backend runs Claude Code inside a lightweight VM. Communication goes over vsock (port 51234), bridged to a Unix socket on the host side via socat. The bubblewrap backend uses Linux namespaces to sandbox the session: $HOME is mounted read-only, and only the working directory and explicitly listed paths are writable. This blocks writes to sensitive paths like ~/.ssh and ~/.gnupg.
Other changes in this PR:
--doctornow checks for cowork dependencies: KVM device access, vsock support, QEMU, socat, virtiofsd, and bubblewrap- Stale cowork sockets from previous sessions are cleaned up automatically on launcher start
readFileis restricted to paths within$HOME;execSyncreplaced withexecFileSyncthroughout
Status: experimental. Both KVM and bwrap backends need real-world testing. The host fallback is available if neither works in your environment.
SSH helper binaries included in packages (#268)
The upstream SSH helper binaries are now copied into the Electron resources directory during build. This enables SSH remote mode, which uploads the binary to a remote host over SFTP. The build skips macOS binaries and only copies the architecture-matching Linux binary, saving roughly 12-18MB per package. If Anthropic removes the claude-ssh/ directory upstream, the build step is skipped gracefully.
--doctor diagnostic command (#267)
Running claude-desktop --doctor prints a diagnostic report of your environment: Electron version, system dependencies, cowork backend availability, and more. Useful for troubleshooting installation issues or filing bug reports. The --doctor flag and its output are documented in the README and troubleshooting guide.
CLAUDE_MENU_BAR environment variable
Set CLAUDE_MENU_BAR=0 to hide the menu bar, or CLAUDE_MENU_BAR=1 to show it. Input validation is now in place, and the variable is included in --doctor output. Contributed by noctuum.
Installation
APT (Debian/Ubuntu)
# First time? Add the repo:
curl -fsSL https://aaddrick.github.io/claude-desktop-debian/KEY.gpg | sudo gpg --dearmor -o /usr/share/keyrings/claude-desktop.gpg
echo "deb [signed-by=/usr/share/keyrings/claude-desktop.gpg arch=amd64,arm64] https://aaddrick.github.io/claude-desktop-debian stable main" | sudo tee /etc/apt/sources.list.d/claude-desktop.list
# Install or update:
sudo apt update && sudo apt install claude-desktopDNF (Fedora/RHEL)
# First time? Add the repo:
sudo curl -fsSL https://aaddrick.github.io/claude-desktop-debian/rpm/claude-desktop.repo -o /etc/yum.repos.d/claude-desktop.repo
# Install or update:
sudo dnf install claude-desktopAUR (Arch Linux)
yay -S claude-desktop-appimageManual Download
Download .deb, .rpm, or .AppImage from the assets below.