Skip to content

Support Herdr protocol 22 - #87

Draft
powerfooI wants to merge 3 commits into
mainfrom
feat/herdr-protocol-22
Draft

Support Herdr protocol 22#87
powerfooI wants to merge 3 commits into
mainfrom
feat/herdr-protocol-22

Conversation

@powerfooI

@powerfooI powerfooI commented Sep 2, 2026

Copy link
Copy Markdown
Owner

Goal

Track Herdr's upcoming protocol 22 (post-0.8.2) so Herdr Studio keeps working after the next Herdr release.

Scope

  • Handle the redesigned handshake: ClientMessage::Hello was replaced by TerminalHello; launch_mode, requested_encoding, and keybindings were removed (server/src/bridge/thin-client.ts, server/src/bridge/protocol-compat.ts)
  • Handle workspace.close requiring close_group: true when linked-worktree workspaces are open (introduced in protocol 21, web/src/store.ts closeWorkspace)
  • Reject unknown newer protocols with a clear error instead of silently mis-decoding (protocols 14-22 supported)
  • OSC 52 clipboard relay on protocol 22+: verified from Herdr master source that ServerMessage::Clipboard is routed only to foreground endpoint-shell clients, which direct-terminal connections can never be. The relay is now skipped on protocol 22+ with an explicit warning instead of idling silently; clipboard sync returns with the endpoint-protocol migration.
  • Verify end-to-end against a real Herdr build with protocol 22 once the next preview/stable ships (handshake, terminal stream, workspace close)
  • Migrate to Herdr's stable endpoint protocol (generation 1) to restore clipboard sync and stop chasing the private bincode protocol per release

Notes

  • Herdr v0.8.2 (protocol 20) remains the supported stable target; protocol 21/22 support is forward-looking and verified against wire-format and server-routing diffs plus unit tests, not a live Herdr 0.9.x server yet.
  • Merge can happen before the next Herdr release: older Herdr servers are unaffected, and newer-than-22 now fails with a clear error.

@github-actions github-actions Bot added the enhancement New feature or request label Sep 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant