github sheprd-labs/sheprd v20261112.1
Sheprd 20261112.1 (beta)

pre-release48 minutes ago

GUI-only release. macOS 14.2+ universal signed/notarized DMG; x86_64 and ARM64 Linux .deb, .rpm, Arch packages and tarballs (glibc 2.39+); Authenticode-signed Windows x86_64 and ARM64 installers and zips; installed copies update in the app. Requires an existing Herdr daemon. Source: 06ec0d4.

[v20261112.1] - 2026-11-12

Added

  • Update Sheprd on SSH machines from their sidebar header
  • [worktrees] Create and delete worktrees in Herdr 2 workspaces
  • [notifications] Post system notifications for Herdr 2 agents
  • [overview] List closed Herdr 2 agents and reopen them
  • [notes] Send notes on a Herdr 2 selection to its agent
  • [sidebar] List Herdr 2 agents with Herdr 1's and step through both
  • Mute Herdr 2 tabs and show their agent, zoom, and processes
  • [remote] Split, zoom, and rename Herdr 2 tabs on a phone without Sheprd
  • [remote] Show a Herdr 2 or host workspace's changes on a phone
  • Choose how much scrollback Herdr 2 terminals keep
  • Move Herdr 2 panes and tabs to other workspaces
  • [cloud] Set up a machine with herdr-core alone, and report core failures
  • [hosts] Add SSH and WSL hosts that run herdr-core without Herdr 1
  • [worktrees] Fan out, dispatch, and run worktree scripts on Herdr 2
  • [teleport] Move Herdr 2 workspaces and land work in them
  • [teleport] Resume Claude Code sessions from Herdr 2 terminals
  • [linux] Install and update Sheprd through zypper on openSUSE
  • Open app-kept worktree dialogs and scripts from the CLI
  • Manage Herdr 2 worktrees and scripts on their remote hosts
  • Define scoped remote work request messages
  • [dispatch] Target remote and provisioned Herdr 2 hosts
  • [browser] Return remote core notes and reload the caller's pages
  • Carry scoped work commands from remote Herdr 2 terminals
  • [moonframe] Run Sheprd in a window laid out by Moonframe
  • [moonframe] Lay out the activity bar, sidebar and status bar in Luau
  • [moonframe] Draw Sheprd's rows, header and status bar in its own theme
  • [moonframe] Make the worktrees and the agents two mods of the left pane
  • [moonframe] Give the Luau window Sheprd's sidebar, menus and startup
  • [ios] Give the iPad sidebar Chats, Workspaces, and Settings tabs
  • [ios] Open a chat's workspace in a sheet from its header on iPad
  • [remote] Keep text shortcuts on each computer for every device
  • [ios] Share text shortcuts with every paired computer
  • [chat] Offer text shortcuts in the chat composer, shared across computers
  • [cli] List text shortcuts with sheprd chat shortcuts
  • [remote] Read phone pull requests without the desktop
  • [nix] Add macOS arm64 support to flake
  • Discover process-bound agent sessions for Herdr 2 chats
  • Extend session reporters and fence stale evidence
  • Reuse bounded file transfers across authenticated host routes
  • Paste images and deliver files to Herdr 2 panes
  • [sidebar] Scroll a shown agent pane to its bottom on row re-click
  • [tabs] Undo closing a terminal tab within a few seconds
  • [chats] Run native Herdr 2 chats on saved remote hosts
  • [chat] Wrap, number and stripe code blocks, and show HTML as code
  • Run explicit link-handler adapters for Herdr 2 clicks
  • Adapt opted-in plugin manifests with host platform filtering
  • [orchestrator] Recover owned launches and confirm same-run restarts
  • [browser] Transfer remote annotation images and preserve pending notes
  • [worktrees] Copy .worktreeinclude's ignored files into new worktrees
  • [teleport] Discover process-bound Herdr 2 agent sessions on their host
  • [chat] Recover lost core chats into durable replacement panes
  • [notifications] Clear all notifications with one command

Changed

  • Remove the obsolete local-only terminal lookup
  • [gpui] Make the app a library another window can host
  • [moonframe] Replay the Luau layout around the terminal while it prints
  • [moonframe] Keep the selected rows and open the window at Sheprd's size
  • [moonframe] Draw the terminal over the Luau layout instead of inside it
  • [gpui] Find main windows wherever they are shown, not only as roots
  • [settings] List Chat under Appearance, chat environment on General
  • [work] Share owned checkout receipts across launchers
  • Drop helpers production no longer calls

Fixed

  • [worktrees] Keep Herdr 2 worktree results and notes across host switches
  • [worktrees] Keep another host's Herdr 2 workspaces off this computer's Git
  • [worktrees] Keep Herdr 2 delete dialogs open and remove subfolder checkouts
  • [herdr-core] Stop treating a quit agent's last report as a running agent
  • [herdr-core] Keep an agent the shell became, and start a closed one once
  • [notes] Copy mirror notes and send the stand-in shell's to its agent
  • [notes] Send notes to a Herdr 2 agent on another host's core
  • [notes] Reach an agent the shell became with exec
  • [notes] Never hand an agent's notes to another agent in its pane
  • [notifications] Time Herdr 2 banners by the notification delay
  • [sidebar] Keep Herdr 2 agents, menus, and steps where Herdr 1 has none
  • [sidebar] Give a Herdr 2 agent in a tab not yet restored its own pane
  • [sidebar] Keep Herdr 2 agents on different hosts apart
  • [sidebar] List Herdr 2 agents of saved hosts with the rest
  • [ios] Keep the "need you" badge on one line and say "1 needs you"
  • Keep Herdr 2 mutes on their own tabs and the stand-in shell
  • Drop a muted Herdr 2 agent's sounds rather than delay them
  • [remote] Keep every phone's change to a closed Sheprd's Herdr 2 tabs
  • [remote] Never edit Sheprd's Herdr 2 tabs while it starts
  • [remote] Unzoom a Herdr 2 tab from any pane and focus a zoomed pane
  • [remote] Read a workspace's changes safely and fully without Sheprd
  • [remote] Read every untracked file a phone's change list sends
  • [remote] End a stuck Git and read SHA-256 and odd names on a phone
  • [remote] Show a file whose name holds a replacement character
  • [remote] Show a renamed file's own diff when its old name is reused
  • [remote] Show the diff of a renamed file whose name Git quotes
  • [cli] Find a Herdr 2 pane's workspace for work, host pr, and chat convert
  • [automations] Refuse approval in a Herdr 2 terminal its core can't vouch for
  • Send pane commands to the Herdr 2 workspace in front
  • Let every window see where a Herdr 2 tab moved
  • [hosts] Forget that a host lacked Herdr 1 once it connects again
  • [hosts] Find herdr-core on Windows hosts and beside an outdated Herdr 1
  • [hosts] Try a host's first Herdr 2 shell again after a passing failure
  • Keep remote update progress through disconnects and late success
  • Resolve remote updates through every saved host profile
  • [worktrees] Keep Herdr 2 archives, setups and lanes in their own workspace
  • [worktrees] Check only this computer's Herdr 2 checkouts for merges
  • [worktrees] Follow each Herdr 2 archive and open a run's own terminal
  • [worktrees] Retain split archive results and refuse uncertain agent restarts
  • [worktrees] Fence script launches and verify the checkout being cleaned
  • [teleport] Refuse Herdr 2 moves that would strand their work
  • [teleport] Reclaim a Herdr 2 checkout only for the same project
  • [teleport] Keep a Herdr 2 source's idle shell in its own window's session
  • [teleport] Move a Herdr 2 workspace in a subfolder from its checkout root
  • [worktrees] Check root archive scripts before cleaning subfolder workspaces
  • [worktrees] Preserve archive scripts and verify lanes before deletion
  • [remote] Keep remote control running after an update
  • [windows] Give native sidebar and dialog rendering more stack space
  • [windows] Keep the UI stack setting out of the launcher build
  • Enable workspace mutes and fan-out from Herdr 2 terminals
  • Report worktree dialog failures and document kept CLI targeting
  • Keep worktree Git operations on their destination host
  • Propagate cloud support through worktree Git dependencies
  • [dispatch] Prepare Herdr 2 destinations without Herdr 1
  • [work] Retain and recover owned agent launches after interruptions
  • [work] Verify retained owned terminals before cleanup
  • [fanout] Route and recover Herdr 2 lanes on their own hosts
  • [fanout] Open kept remote origins through their captured sessions
  • [fanout] Fence delayed lane presentation against retargeted hosts
  • [dispatch] Wait for provisioned destinations without replaying work
  • Keep a worktree agent visible after an uncertain send
  • [orchestrator] Dispatch and control runs on their Herdr 2 host
  • [fanout] Enable typed remote lanes on Windows routes
  • [acp] Find agents installed through mise or asdf
  • [remote] Offer every agent the login shell finds on the phone
  • [remote] Show why a terminal does not load instead of spinning forever
  • [remote] Keep a closed terminal unwatched when its retry finishes
  • Route kept worktree commands through the worktree client
  • [chats] Distinguish remote core panes by their owning host
  • [fanout] Synchronize scoped lane views through the core API
  • [work] Refuse agent recovery into a retained replacement shell
  • [fanout] Persist resolved lane destinations before creation
  • Expire queued worktree setups while another host is shown
  • Bind worktree branch reads and cleanup to their owning checkout
  • Retain remote browser feedback until acknowledgement
  • [browser] Use the standard bounded channel for remote replies
  • Keep remote checkout paths out of local Git workers
  • Bound remote checkout identity queries by their shared deadline
  • [browser] Cancel feedback when its driving core pane leaves the window
  • Keep queued remote work bound to its original workspace
  • Keep archive completion through temporary metadata failures
  • Preserve remote work refusal codes and advertise shim commands
  • [moonframe] Pin the activity bar's counts with a row, which takes float
  • [moonframe] Paste, hidden bars and three layouts work as in the app
  • [moonframe] Native checks build, and agents follow device and settings
  • [moonframe] Mark the left edge as draggable; right-click opens the sheet
  • [moonframe] Remote rows, folded statuses and restarts as in the app
  • Build with or without Moonframe and reduce dialog stack use
  • [ios] Keep the iPad sidebar's place and search results' panes
  • [ios] Open a new tab's form over the iPad workspace sheet
  • [chat] Refuse to move an agent whose folder is gone into a chat
  • Keep shortcut edits made after a clock change, and never cut a long one
  • [chat] Stop re-offering a shortcut list a slower clock took, and keep drafts
  • [chat] Never lower a shortcut list's edit time to match a slower clock
  • Track which shortcut edit each computer holds, and never lower edit times
  • [ios] Fetch a computer's shortcuts one request at a time
  • [chat] Move Claude into a chat without Herdr's integration
  • [remote] Fence late PR reads and expose web checks
  • [remote] Invalidate changed PR badges before backoff
  • [remote] Distinguish unverified PR identity while paused
  • [remote] Preserve PR hints and wrap phone log excerpts
  • [status-bar] Stop reporting a Herdr 1 that herdr-core stands in for
  • [nix] Bundle native Bluetooth pairing on macOS
  • Prevent terminal copy from crashing the window
  • [chat] Show OpenCode background subagents in the activity rail
  • Route session reports through their owning terminal socket
  • Accept native session-start payload variants
  • Preserve Codex session policy when continuing in chat
  • Stop superseded session reports from retrying forever
  • Localize kept checkout errors and repair Windows cleanup fixtures
  • Keep Stop and Send working for Herdr 2 runs started before ownership labels
  • Never start remote work its caller cancelled before the claim
  • Ignore remote work requested while no window was watching its host
  • Keep Stop and Send for Herdr 2 agents whose launch reply was lost
  • [tabs] Keep undo close from hiding a lone tab or mixing up hosts
  • [tabs] Show a tab again when its daemon restarts during undo close
  • [tabs] Keep a closed tab that another client focuses before the first poll
  • Refuse remote origins in the local-only fan-out consumer
  • Preserve failures while resolving a worktree script root
  • Preserve host-side checkout paths in remote branch queries
  • [fanout] Retain terminal identity after uncertain local launches
  • [work] Serialize lane folders for their POSIX destination
  • Retain dispatched checkouts after uncertain agent startup
  • Keep task claims when a dispatched agent may be working
  • Recover retained agent controls after a failed first journal write
  • Keep a Herdr 2 run's checkout until its terminal is proven ended
  • Explain why an unverified orchestrator run keeps its checkout
  • [chats] Preserve remote endpoint selection and cancelled launch ownership
  • [chats] Retain handoff cleanup until a core start is accepted
  • [chats] Offer owning-host conversion on Windows desktops
  • [chats] Keep desktop editor paths off remote core panes
  • [chats] Build remote chats on every platform
  • [remote] Keep phone layout edits responsive after desktop exit
  • [remote] Require saved-tab ownership before desktop startup
  • [remote] Mark the saved-tab lock message as diagnostic data
  • [ios] Read whether a computer offers GitHub without the desktop
  • Keep browser notes and agent tools with the machine a saved device names
  • Remove older agent runs and show socket fan-out lanes
  • [chat] Scroll code blocks and tables sideways only with Shift + wheel
  • [chat] Keep Show code when a page finishes loading after it
  • [chat] Open an HTML block in the browser from its code view on Linux
  • [browser] Load a page a restored layout shows instead of stalling on Loading
  • Keep link handlers host-isolated and cancellable after child exit
  • Retire deferred link fallback when its saved host changes
  • Offer missing-file hyperlinks to handlers in mouse-reporting panes
  • [fanout] Restore retained lanes through their workspace keeper
  • [dispatch] Route custom socket work by workspace keeper
  • [work] Verify owned terminals end before removing their checkout
  • [fanout] Stop owned agents before discarding lane checkouts
  • [dispatch] Isolate local core repositories from forwarded sockets
  • [dispatch] Discover cores while the orchestrator chooses a host
  • [fanout] Retain explicitly pinned hosts when they go offline
  • [orchestrator] Explicitly adopt legacy agents and fence checkout cleanup
  • [worktrees] Keep a Herdr 2 archive waiting while its checkout is unknown
  • [worktrees] Offer a kept workspace's Git only on the host keeping it
  • [cli] Keep the worktree dialog's branch selection inside its text
  • [orchestrator] Stop reporting a just-finished action as busy
  • [orchestrator] Let a finished run be restarted and removed
  • [orchestrator] Act on the project a command names
  • [orchestrator] Never end a program started in a finished run's shell
  • [orchestrator] Close an open dialog when a command switches projects
  • [browser] Discard forwarded pages when their core caller disconnects
  • [browser] Keep offline remote annotations out of local delivery
  • [browser] Route remote core notes to the exact driving host
  • [browser] Keep the remote reload command out of Linux builds
  • Run a remote work command once when two desktops drive its terminal
  • [teleport] Revalidate sessions before retirement and refuse ambiguous files
  • [teleport] Preserve resume settings outside the moved checkout
  • [teleport] Keep sessions running until the destination acknowledges them
  • [teleport] Refuse session config roots that climb out of home or checkout
  • [teleport] Keep a closed arrival tab closed instead of reopening it
  • [teleport] Open arrival tabs a limit left out once room is freed
  • [orchestrator] Keep dispatch retryable if its pre-start record fails
  • [fanout] End an owned lane's agent before Keep removes its checkout
  • [orchestrator] Restart or remove an agent that exited into its shell
  • [fanout] Journal a lane's planned checkout before Git creates it
  • [orchestrator] Stop reporting busy just after an action finishes
  • [orchestrator] Let an interrupted restart be retried
  • Read desktop pull requests for Herdr 2 SSH checkouts
  • Show SSH kept-workspace pull request badges and counts
  • [dispatch] Compile the dispatch source keeper and repair its tests
  • [orchestrator] Keep hosts without Herdr 1 out of the dispatch picker
  • [cloud] Run setup scripts on machines made without Herdr 1
  • [worktree] Mark the include copy script as data for the Fluent check
  • [cloud] Keep a core setup script queued and start it from home
  • [chat] Preserve core chats for explicit recovery after loss
  • [chat] Start a chat's replacement only after its old agent is gone
  • [chat] Keep other windows' splits and closes when chat recovery races
  • [chat] Exit with failure when a headless chat's agent ends unexpectedly
  • [chat] Refuse to restore a chat while its old agent is still running
  • [remote] Let a phone change a recovered chat's pane while Sheprd is closed
  • [chat] Repair both recovery receipts and never let one block a close
  • [remote] Keep a phone-given name when a lone chat recovers
  • [chat] Keep a recovered pane selected and pending replacements watched
  • [chat] Give the Windows process probe time to answer on a busy machine
  • [chat] Let restore run in a recovered chat that lost its agent again
  • [chat] Keep a chat recoverable when its terminal input fails
  • [chat] Bound the Windows process probe by its own wall-clock limit
  • [chat] Never close a recovered chat because another worker's list was older
  • [ios] Keep a terminal scrolling when no row on screen spans its width

Documentation

  • Track Herdr 2 acceptance and correct backend coverage claims
  • Reconcile standalone phone layout routes and upstream evidence
  • Retain Herdr 2 CLI exclusions confirmed by handler audit
  • Assign CLI adapter coverage and track partial Teleport delivery
  • Record partial parity PRs and their actual validation
  • Reconcile parity ownership and focused validation milestones
  • Consolidate parity stacks and outstanding acceptance evidence
  • Record dispatch retained-session P1 pending persistence fix

Don't miss a new sheprd release

NewReleases is sending notifications on new releases.