v0.14.0 — SSH-first cloning, a movable browse root, and honest clone failures
Repo-mode spawns work where the repos actually live: private forges over ssh, and Coder workspaces whose real disk is /workspace, not home.
Added
- ssh or https, your pick, for
org/reposhorthand. The spawn dialog's host pills gain a transport row (ssh · git@…/https); the destination hint previews the exact origin either way. The choice is a durable daemon setting written when a shorthand spawn is accepted with an explicit transport — the fleet remembers what you actually use. API:POST /api/spawntakesrepo_transport(ssh|https); absent resolves from the setting. - The file explorer's root is yours to choose. A durable
browse_rootsetting (envFLEETDECK_BROWSE_ROOTbetween setting and default) re-roots the global ⌸ Files explorer and the spawn form's 🗀 folder picker. On a Coder workspace the default is auto-detected as/workspace; everywhere else it stays home. The root is resolved server-side only, and a configured root that has vanished fails loud — never a silent fallback. - Favorite folders. ☆ any folder to pin it (up to 20); chips give one-click jumps in the explorer and the picker, and set as default root re-roots everything from where you stand.
POST /api/settingsaccepts any subset ofrepos_dir,repo_transport,browse_root,fav_dirs— validate-all-then-apply-all, unknown keys refused by name.
Changed
- Shorthand clones default to ssh (was https-always in 0.12.0, which cannot clone private repos from a daemon with terminal prompts disabled). Pick the https pill once and it's remembered; existing checkouts are unaffected — origin matching has been transport-insensitive since 0.12.0.
- On Coder, clones land in
/workspaceby default (was~/projects).
Fixed
- A failed clone now tells you why. Tombstones carry git's
fatal:/error:line instead of a truncatedCloning into '…banner; full stderr goes tofleetd.logplus a durableSpawnFailedevent.
Full changelog: https://github.com/lacion/fleet-deck/blob/main/CHANGELOG.md#0140---2026-07-16