cowork-deck

Release ·

cowork-deck v0.4.1

A patch release carrying one fix, lifted out of dev on its own because it makes the app unusable with any MCP server and nothing else in this release is worth waiting for.

Sessions get the login shell’s PATH (#332)

A session launched from the app ran with launchd’s /usr/bin:/bin:/usr/sbin:/sbin and nothing else, so everything the agent then spawned failed to resolve: stdio MCP servers (npx …, #!/usr/bin/env node shims), hooks, the Bash tool. What that looked like from the outside was a set of MCP servers that simply never came up —

Connection failed (ENOENT): Executable not found in $PATH: "npx"
Server stderr: env: node: No such file or directory

— while the same servers, run by hand from a terminal, answered normally.

The nesting is why it went unnoticed for so long. The app captured a PATH only when finding claude had to go through the login shell, which reads as the right condition and is not: the PATH is needed less by claude itself than by everything it starts. An npm-installed claude happened to work, because it fails --version under launchd’s PATH, falls through to the login shell and picks up an environment on the way. A natively installed claude is a self-contained binary, passes that check, and short-circuits the only stage that captured anything — so its sessions found no node at all.

The login shell’s PATH is now asked for on every route, once per run and warmed while a workspace is being prepared, so no launch pays for a login shell on a path anybody is watching. A claude found through the login shell keeps the exact environment it was validated under.

One deliberate change of behaviour: COWORK_CLAUDE_PATH now gets the login PATH too. The override names a binary, not an environment.

Nothing else changed

No feature, no settings, no on-disk format. This is 0.4.0 with node back on the session’s PATH, and everything listed as still open there is still open.


Install

macOS — download the .dmg for your architecture (aarch64 for Apple Silicon, x64 for Intel), drag the app to Applications, then clear the quarantine flag once:

xattr -cr /Applications/cowork-deck.app

Linux — download the .AppImage, chmod +x it and run, or install the .deb.

The app checks this page for updates on launch and installs them in place; the xattr step is first-install only.