Skip to content

v0.11.0 — File explorer + spawn by repo/branch

Choose a tag to compare

@lacion lacion released this 15 Jul 17:45
758b9d5

Two features that make the board a place you can read code and start work from — each shipped with an adversarial security review, on top of the v0.10.0 audit release.

Added

  • Read-only file explorer. Browse any session's working tree from its drawer (⌸ browse, and the file chips open the viewer), and browse your whole home directory from a new ⌸ Files button in the header. Per-directory tree that refreshes on expand, a line-numbered file view with a rendered-Markdown toggle, and search by content or file name (git roots use git grep/git ls-files; non-git roots use a bounded walk). Caps are shown as truncated, never silently dropped.
  • Spawn by repo + branch. Give the spawn form a repo (a URL, org/repo, a local path, or a name the fleet knows) and a branch instead of a cwd: the daemon clones if missing (into FLEETDECK_REPOS_DIR, default ~/projects, override persisted) and materializes the branch as its own worktree or in place — created from origin/HEAD when new, tracking when remote-only. A durable repo catalog powers suggestions, and a 🗀 folder picker fills the path fields. Clones run async (202 → the card narrates cloning → live, or tombstones with git's error).

Security

  • The global home explorer exposes read-only home-directory files (incl. ~/.ssh, ~/.aws) to any bearer-token holder in LAN/standalone mode — loopback is unaffected. Same auth + Host walls and the same containment as every other data endpoint: root resolved server-side, ../absolute refused, symlinks never followed out of root, .git never readable.
  • Repo-mode git is argv-only, refuses option-smuggling inputs (leading -, a dash-host behind user@, non-https/ssh schemes), validates branches via git check-ref-format, runs clone/fetch with GIT_TERMINAL_PROMPT=0, never recurses submodules, and caps concurrent clones.

Full changelog: https://github.com/lacion/fleet-deck/blob/main/CHANGELOG.md#0110---2026-07-15