From 95e97bff3ac090ffc71bf24174ccc2449e97bcc6 Mon Sep 17 00:00:00 2001 From: kangal-bot <285672167+kangal-bot@users.noreply.github.com> Date: Sun, 20 Sep 2026 21:51:02 +0000 Subject: docs: publish preview documentation --- .../website/src/content/docs/cli-reference.mdx | 2 + .../website/src/content/docs/configuration.mdx | 2 +- .../src/content/docs/connecting-machines.mdx | 6 ++- .../website/src/content/docs/integrations.mdx | 4 +- .../website/src/content/docs/ja/cli-reference.mdx | 12 +++++- .../website/src/content/docs/ja/configuration.mdx | 4 +- .../src/content/docs/ja/connecting-machines.mdx | 14 +++++-- .../website/src/content/docs/ja/integrations.mdx | 2 + .../website/src/content/docs/ja/keyboard.mdx | 20 +++++++++ .../src/content/docs/ja/persistence-remote.mdx | 6 +-- .../website/src/content/docs/ja/quick-start.mdx | 4 +- .../website/src/content/docs/ja/session-state.mdx | 26 +++++++++++- .../website/src/content/docs/ja/socket-api.mdx | 14 +++++-- .../website/src/content/docs/ja/windows-beta.mdx | 7 ++-- docs/preview/website/src/content/docs/keyboard.mdx | 20 +++++++++ .../website/src/content/docs/session-state.mdx | 25 ++++++++++- .../website/src/content/docs/socket-api.mdx | 48 ++++++++++++++++++---- .../src/content/docs/zh-cn/cli-reference.mdx | 12 +++++- .../src/content/docs/zh-cn/connecting-machines.mdx | 14 +++++-- .../src/content/docs/zh-cn/integrations.mdx | 2 + .../website/src/content/docs/zh-cn/keyboard.mdx | 20 +++++++++ .../src/content/docs/zh-cn/persistence-remote.mdx | 6 +-- .../website/src/content/docs/zh-cn/quick-start.mdx | 4 +- .../src/content/docs/zh-cn/session-state.mdx | 26 +++++++++++- .../website/src/content/docs/zh-cn/socket-api.mdx | 14 +++++-- .../src/content/docs/zh-cn/windows-beta.mdx | 7 ++-- .../preview/website/src/data/config-reference.json | 8 +++- 27 files changed, 276 insertions(+), 53 deletions(-) (limited to 'docs/preview') diff --git a/docs/preview/website/src/content/docs/cli-reference.mdx b/docs/preview/website/src/content/docs/cli-reference.mdx index 9f61d02d..cf9b355f 100644 --- a/docs/preview/website/src/content/docs/cli-reference.mdx +++ b/docs/preview/website/src/content/docs/cli-reference.mdx @@ -197,6 +197,8 @@ herdr tab close A tab is another terminal layout inside a workspace. Without `--workspace`, `tab create` uses the active workspace and fails if none exists. Its JSON response exposes `.result.tab.tab_id` and `.result.root_pane.pane_id`. Closing a workspace's last tab also closes the workspace, matching the TUI close-tab action. If `confirm_close` is enabled and closing the tab would also close a whole worktree group, `tab close` returns a `confirmation_required` error instead. +With `ui.confirm_close` enabled, the TUI asks for confirmation before closing a workspace's last tab from a keybinding or the tab menu. Ordinary CLI/API tab closes remain immediate. + Workspace and tab creation, and pane splitting, leave focus unchanged by default. `--focus` selects the new layout; `--no-focus` states the default explicitly. Without `--cwd`, new terminals follow the configured `terminal.new_cwd` policy, which follows the source pane or workspace by default. Each `--env KEY=VALUE` adds or replaces that variable in the new root shell. ## Panes diff --git a/docs/preview/website/src/content/docs/configuration.mdx b/docs/preview/website/src/content/docs/configuration.mdx index 1975a43a..c54c79a9 100644 --- a/docs/preview/website/src/content/docs/configuration.mdx +++ b/docs/preview/website/src/content/docs/configuration.mdx @@ -73,7 +73,7 @@ Set the executable Herdr uses for newly created interactive panes: default_shell = "nu" ``` -When unset or empty, Herdr uses `$SHELL`, then `/bin/sh` on Unix and PowerShell on Windows. This is an executable name or path, not a shell command line. Existing panes keep their current shell until they are recreated. Custom command keybinding strings run through `/bin/sh -c` for pane commands and `/bin/sh -lc` for detached commands on Unix; on Windows they run through `cmd.exe /d /c`. +When unset or empty, Herdr uses `$SHELL`, then `/bin/sh` on Unix. On Windows it uses `pwsh.exe` (PowerShell 7) when it resolves on `PATH`, and otherwise the inbox `powershell.exe` (Windows PowerShell 5.1). This is an executable name or path, not a shell command line. Existing panes keep their current shell until they are recreated. Custom command keybinding strings run through `/bin/sh -c` for pane commands and `/bin/sh -lc` for detached commands on Unix; on Windows they run through `cmd.exe /d /c`. Set how Herdr starts newly created interactive pane shells: diff --git a/docs/preview/website/src/content/docs/connecting-machines.mdx b/docs/preview/website/src/content/docs/connecting-machines.mdx index 3a31639d..3f7bcfe6 100644 --- a/docs/preview/website/src/content/docs/connecting-machines.mdx +++ b/docs/preview/website/src/content/docs/connecting-machines.mdx @@ -7,6 +7,8 @@ Keep your local work and remote agents in one Herdr window. Save an SSH machine Each machine keeps its own Herdr server, sessions, and running processes. A lost connection to one machine does not disconnect the others. +Herdr requests SSH compression to reduce screen-update traffic on limited connections. This works with older compatible Herdr servers and does not change how typing or other input is delivered. Herdr's `-C` option overrides `Compression no` in your SSH config. If SSH reuses an existing connection through an external ControlMaster, that connection keeps its original compression setting. + ## Before you connect You need normal SSH access to the remote machine. Verify it first: @@ -17,7 +19,7 @@ ssh workbox `workbox` can be a host from your SSH config. You can also use a target such as `ssh://you@server:2222`. -Multi-machine connections are supported on Linux and macOS clients, connecting to Linux and macOS servers on x86_64 or aarch64. Multi-machine connections are not yet verified or supported on Windows; standalone `herdr --remote` remains supported on Windows. Native Windows servers are not supported as SSH targets. See [Remote attach over SSH](/docs/persistence-remote/#remote-attach-over-ssh) for SSH configuration, authentication, and custom binaries. +Multi-machine connections support Linux, macOS, and Windows clients connecting to Linux or macOS servers on x86_64 or aarch64, or Windows servers on x86_64. Interactive setup can install or update the complete remote package after confirmation; background reconnects only discover installed packages. See [Remote attach over SSH](/docs/persistence-remote/#remote-attach-over-ssh) for SSH configuration, authentication, and custom binaries. ## Add a machine @@ -101,6 +103,8 @@ Workspace, tab, pane IDs, and agent names are scoped to one server. Two machines Saved profiles contain only an opaque ID, label, SSH target, explicit remote session, and enabled state. Herdr does not store passwords, private keys, agent tickets, or SSH control sockets in the catalog. Authentication stays with OpenSSH. +Herdr separately remembers each machine's remote OS and resolved executable path so repeated `--machine` commands can skip discovery. Existing profiles learn missing information on first use. This cache is optional: missing, invalid, or unwritable cache files do not prevent commands from working. Commands still check live server compatibility. If a cached executable is missing or no longer supports API forwarding, Herdr rediscovers it during the initial read-only check; it never automatically repeats a command that may already have changed remote state. + The client and server negotiate compatibility rather than requiring identical versions. Saved-machine connections additionally need the server's `surface_interest` and `health_check` capabilities. Older servers without those capabilities show Attention until explicitly updated, even if a standalone attach works. Other missing server methods disable only their corresponding actions. Updating a compatible client does not replace the running remote server or stop its agents. When you need new server-side behavior, update that server explicitly. Normal replacement asks before stopping the server and its pane processes. diff --git a/docs/preview/website/src/content/docs/integrations.mdx b/docs/preview/website/src/content/docs/integrations.mdx index 4516061f..7bca01e6 100644 --- a/docs/preview/website/src/content/docs/integrations.mdx +++ b/docs/preview/website/src/content/docs/integrations.mdx @@ -223,7 +223,7 @@ herdr integration install opencode The integration supports OpenCode V1 `1.18.29` or later and OpenCode V2 (tested with beta `19242`). The OpenCode config directory must already exist. Herdr installs the server entrypoint at `~/.config/opencode/plugins/herdr-agent-state.js`, the shared TUI plugin at `herdr-tui-session.js`, and a V2 TUI entrypoint at `herdr-opencode/tui.js` in that config directory. -Install registers the V1 TUI plugin in `tui.jsonc` and the V2 TUI plugin in `cli.json`, preserving other preferences and plugins. If OpenCode still has V1 TUI preferences to import (`tui.json` or `kv.json`), Herdr defers registration so the first-start migration can run; start `opencode2` once and reinstall the integration afterward. Otherwise Herdr creates `cli.json` with the plugin registration. Restart the OpenCode TUI after installation. Uninstall removes the managed plugin files and their configuration entries. +Install registers the V1 TUI plugin in `tui.jsonc` and the V2 TUI plugin in `cli.json`, preserving other preferences and plugins. An existing V1 registration in `tui.json` also counts as installed and is reused without creating `tui.jsonc`. Uninstall removes the Herdr registration from both TUI config files while keeping the files and other preferences. If OpenCode still has V1 TUI preferences to import (`tui.json` or `kv.json`), Herdr defers registration so the first-start migration can run; start `opencode2` once and reinstall the integration afterward. Otherwise Herdr creates `cli.json` with the plugin registration. Restart the OpenCode TUI after installation. Uninstall removes the managed plugin files and their configuration entries. V2 lifecycle reporting runs in the pane-local TUI, which associates events with its selected root session even when multiple panes share one OpenCode server. Completion and interruption clear the working state; pending permission requests, pending forms, and failed executions keep the pane blocked. V2 Mini and headless clients do not run the TUI plugin and therefore do not provide this lifecycle reporting. @@ -285,6 +285,8 @@ Herdr resumes stored Qwen Code sessions with `qwen --resume `. ## Letta Code +Letta Code integration installation is experimental and CLI-only. It is not listed in the Settings integration screen or the JSON integration API. `herdr integration status` reports it as `letta (experimental)`. Agent detection and `herdr agent start --kind letta` are supported independently of this installation restriction. + Install the Letta Code hook: ```bash diff --git a/docs/preview/website/src/content/docs/ja/cli-reference.mdx b/docs/preview/website/src/content/docs/ja/cli-reference.mdx index 58cb3e9f..99a2e133 100644 --- a/docs/preview/website/src/content/docs/ja/cli-reference.mdx +++ b/docs/preview/website/src/content/docs/ja/cli-reference.mdx @@ -191,7 +191,9 @@ herdr tab rename