aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorCan Celik <ogulcancelik@gmail.com>2026-09-21 15:22:46 +0300
committerGitHub <noreply@github.com>2026-09-21 15:22:46 +0300
commit3602c757e07645383dc092f8540dcb72ba0ed49d (patch)
tree4c4aae37a34a5bfe16ac45e710bbb9a8684915d2 /docs
parent5a649142233631f8407b4099da0e8e78dfef8574 (diff)
fix: refresh forwarded ssh agents after reconnect (#4443)
refs #1931
Diffstat (limited to 'docs')
-rw-r--r--docs/next/api/herdr-api.schema.json33
-rw-r--r--docs/next/website/src/content/docs/connecting-machines.mdx4
2 files changed, 37 insertions, 0 deletions
diff --git a/docs/next/api/herdr-api.schema.json b/docs/next/api/herdr-api.schema.json
index ea888dc3..bd758e9e 100644
--- a/docs/next/api/herdr-api.schema.json
+++ b/docs/next/api/herdr-api.schema.json
@@ -3965,6 +3965,18 @@
},
"type": "object"
},
+ "ServerSshAgentRegisterParams": {
+ "properties": {
+ "socket_path": {
+ "description": "Absolute remote-host agent socket. Registration lasts until this API connection closes.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "socket_path"
+ ],
+ "type": "object"
+ },
"SplitDirection": {
"enum": [
"right",
@@ -4820,6 +4832,22 @@
{
"properties": {
"method": {
+ "const": "server.ssh_agent.register",
+ "type": "string"
+ },
+ "params": {
+ "$ref": "#/schemas/request/$defs/ServerSshAgentRegisterParams"
+ }
+ },
+ "required": [
+ "method",
+ "params"
+ ],
+ "type": "object"
+ },
+ {
+ "properties": {
+ "method": {
"const": "server.agent_manifests",
"type": "string"
},
@@ -10638,6 +10666,11 @@
"live_handoff": {
"type": "boolean"
},
+ "ssh_agent_registration": {
+ "default": false,
+ "description": "Supports connection-scoped `server.ssh_agent.register` on the local JSON API.",
+ "type": "boolean"
+ },
"surface_interest": {
"default": false,
"description": "Whether this server supports explicit client-shell surface interest.",
diff --git a/docs/next/website/src/content/docs/connecting-machines.mdx b/docs/next/website/src/content/docs/connecting-machines.mdx
index 3f7bcfe6..8a7f5c7c 100644
--- a/docs/next/website/src/content/docs/connecting-machines.mdx
+++ b/docs/next/website/src/content/docs/connecting-machines.mdx
@@ -91,6 +91,10 @@ Use your profile's target. If you chose a named session when adding it, include
If authentication fails, check ordinary SSH first. For a passphrase-protected key, load it with `ssh-add` before starting Herdr's non-interactive background connections.
+For Git authentication or SSH signing inside remote panes, enable `ForwardAgent yes` for the trusted host in your SSH config. Herdr does not enable forwarding for you. When a session starts with an agent, updated Linux and macOS servers give panes a stable agent address, so existing and new panes can use the forwarded agent after `--remote` or a saved machine reconnects. A working inherited agent or earlier connection keeps priority over later clients and temporary setup checks; if it disappears, another live attachment can supply the agent.
+
+This requires an updated remote server, not just an updated local client. Local sessions started without an agent leave `SSH_AUTH_SOCK` alone. Panes created before the server update, or before an agent was first supplied to the session, keep their original environment and need to be recreated once to inherit the stable address. Older compatible servers and connections without agent forwarding can still attach normally.
+
## Settings and automation
The UI uses the client's local theme, sidebar settings, and keybindings by default. Custom commands and plugins advertised by the selected server still run there. Herdr does not copy local command plugins, configuration, executables, or secrets onto SSH hosts. Missing remote commands fail visibly. Use the UI's `reload config` action after editing client settings; see [Configuration](/docs/configuration/#reload-config).