diff options
| author | Ogulcan Celik <ogulcancelik@gmail.com> | 2026-05-31 22:44:55 +0300 |
|---|---|---|
| committer | Ogulcan Celik <ogulcancelik@gmail.com> | 2026-05-31 22:44:55 +0300 |
| commit | 018cbfb84ad9516be3121d2264c61d9a4a3aebc1 (patch) | |
| tree | 9f69ac05520a669bb14092314cd35c331310f0da /website/src/content/docs | |
| parent | e91b8abfcc5ca2bb61353e840e5f7bfcb0c913d9 (diff) | |
chore: finalize release docs and harden release flow
Diffstat (limited to 'website/src/content/docs')
| -rw-r--r-- | website/src/content/docs/configuration.mdx | 12 | ||||
| -rw-r--r-- | website/src/content/docs/install.mdx | 6 |
2 files changed, 16 insertions, 2 deletions
diff --git a/website/src/content/docs/configuration.mdx b/website/src/content/docs/configuration.mdx index 936cc3ac..189e2121 100644 --- a/website/src/content/docs/configuration.mdx +++ b/website/src/content/docs/configuration.mdx @@ -56,6 +56,15 @@ default_shell = "nu" When unset or empty, Herdr uses `$SHELL`, then `/bin/sh`. This is an executable name or path, not a shell command line. Existing panes keep their current shell until they are recreated. Command panes still run through `/bin/sh -c`; detached custom command keybindings use Herdr's existing `/bin/sh -lc` path. +Set how Herdr starts newly created interactive pane shells: + +```toml +[terminal] +shell_mode = "auto" +``` + +`shell_mode = "auto"` starts login shells on macOS so login-only PATH setup such as `/usr/libexec/path_helper` and Homebrew shell initialization runs in new panes. On other platforms, it keeps the existing non-login shell behavior. Use `"login"` to force login-shell startup, or `"non_login"` to opt out. Command panes, detached custom command keybindings, and explicit argv launches keep their existing command execution paths. + Set the working directory policy for new panes, tabs, and workspaces: ```toml @@ -180,12 +189,15 @@ Custom commands use the same keybinding syntax. key = "prefix+alt+g" type = "pane" command = "lazygit" +description = "run lazygit" ``` `type = "pane"` opens a temporary pane and closes it when the command exits. `type = "shell"` runs detached in the background. +An optional `description` can be provided. When specified, this description is displayed in the keybind help panel (opened with `prefix+?`) in place of the default `'custom command'` label. + Custom commands receive `HERDR_SOCKET_PATH`, `HERDR_BIN_PATH`, `HERDR_ACTIVE_WORKSPACE_ID`, `HERDR_ACTIVE_TAB_ID`, `HERDR_ACTIVE_PANE_ID`, and `HERDR_ACTIVE_PANE_CWD` when those values are available. Shell commands run from the focused pane's working directory when Herdr can detect it. ## Theme diff --git a/website/src/content/docs/install.mdx b/website/src/content/docs/install.mdx index 434b5149..409b0d50 100644 --- a/website/src/content/docs/install.mdx +++ b/website/src/content/docs/install.mdx @@ -43,13 +43,15 @@ herdr update `herdr update` is for installs managed by Herdr's own installer. Homebrew and Nix installs are updated through those package managers instead. -By default, `herdr update` installs the new binary and leaves compatible running sessions alone, or asks before stopping sessions that must restart. To opt into experimental live server handoff for supported running sessions, run: +By default, `herdr update` installs the new binary and leaves compatible running sessions alone. If an update changes Herdr's client/server protocol, Herdr asks whether to stop the old server after installing. Stop the old server to use the new version. Stopping exits pane processes. For the default session, run `herdr server stop`, then run `herdr` again. For a named session, run `herdr session stop <name>`, then run `herdr session attach <name>` again. + +To opt into experimental live server handoff for supported running sessions, run: ```bash herdr update --handoff ``` -Live handoff does not apply to Homebrew or Nix package-manager updates. For those installs, update with the package manager, then restart any running Herdr servers that need the new binary. +Live handoff does not apply to Homebrew or Nix package-manager updates. For those installs, update with the package manager, then restart that Herdr session when you are ready to use the new server. If a running session still uses the old server, stop it with `herdr server stop` or `herdr session stop <name>`, then run Herdr again. ## Install with Nix |
