Repository navigation
v1.3.3
- readme: plainer wording throughout; Requirements says Shepherd starts herdr's server when nothing answers on the socket, and downloads herdr from herdr.dev when it isn't installed
- herdr: when herdr is nowhere to be found, Shepherd downloads this system's binary from herdr.dev's release manifest, checks it against the manifest's SHA-256, puts it in ~/.local/bin as install.sh does and starts it; once a launch, macOS and Linux only
- terminal: a cell keeps its whole grapheme cluster and it shapes as one, so flags, skin tones, ZWJ sequences, keycaps and combining marks draw as Ghostty has them; a combining mark keeps its offset on its letter's column
- sync: herdr follows the agent status of the panes with an agent only, not of every pane: it polls each one it watches; one found later (pane.agent_detected) changes the set
- statusbar: a local Claude transcript is read on from where the last read stopped, not whole every 10 s (transcripts reach 100 MB), as a machine's already was; one rewritten shorter is counted afresh
- herdr: Shepherd costs herdr less: recent tabs keep 6 panes attached, not 24, since herdr renders and streams each one out of sight; a burst of pane_updated that leaves the snapshot as it is (Claude Code's title spinner, a few a second per working agent) no longer fetches a whole session snapshot; and a focus change by another client is caught again, since herdr names its events pane_focused, not pane.focused
- render: a working agent's spinner no longer redraws the window at the display's rate: spinners ask for a frame every 66 ms (loader::request_slow_frame), panes are cached views that a frame they did not cause reuses, a grid reread takes only the rows Ghostty marked dirty, and a row's runs compare weight and style instead of cloning the font per cell; the fixture's idle Shepherd goes from ~55% CPU to ~11%
- readme: Linux release builds only tell of a new release in the sidebar, as the review put it
- update: off macOS, a release build from CI tells of a newer release: "Shepherd vX.Y.Z is out" in the sidebar, and a click (or Settings → About) opens its page, only one under github.com/freethinkel/shepherd/releases/; nothing is downloaded, as there is no signature to check it against. Only builds with SHEPHERD_UPDATE_CHECK set (release CI's Linux and Windows jobs) ask GitHub; builds from source and distribution packages never do. macOS keeps its updater
- window: a Window buttons setting (off macOS and Windows) hides the minimize, maximize and close Shepherd draws at the titlebar's right end, for when the window manager provides its own controls or tiles windows, and gives their room back to the tabs; the edges still resize the window, and a right-click on the titlebar opens the window manager's window menu
- appearance: a Translucent window setting lets the desktop show through the window (blurred on macOS; elsewhere as the compositor does it); on by default on macOS as before, off elsewhere, and it applies to open windows at once
- settings: off macOS they speak of Ctrl+click and desktop notifications, and leave out the Dock badge, macOS's notification settings and Secure Keyboard Entry; a workspace's menu shows its folder in the file manager rather than Finder
- usage: Claude's plan limits off macOS too, with the sign-in Claude Code keeps in .credentials.json in its folder (CLAUDE_CONFIG_DIR when set and not empty, else ~/.claude) where macOS has its keychain
- herdr: a server on another protocol than Shepherd's is named, from its ping, once as a toast and on every pane it disconnects, with what to do (update herdr, or restart its server if you already did; or update Shepherd), whether the subscription went through or failed; a ping without a protocol says nothing
- notifications: on Linux the Sound setting plays the freedesktop sound theme's complete, through canberra-gtk-play, or paplay on the theme's file where that is missing, as gpui posts notifications without a sound-name hint for the server to play
- notifications: a click on one requests activation for the window off macOS and Windows (xdg-activation on Wayland, _NET_ACTIVE_WINDOW on X11), as gpui's app-level activate does nothing there; compositors may grant it or mark the window for attention
Full Changelog: v1.3.2...v1.3.3