Files
zeekayandHanzo Dev 36d0272586 Hanzo Tabs — keep tabs on your agents
A standalone terminal workspace for the machines you have linked. Split, tile and
sweep through every shell your coding agents are working in, from a laptop or a
phone.

THERE IS NO BACKEND, and that is the design rather than an omission. `hanzo link`
already publishes a terminal from the machine over a zero-trust tunnel, already
authenticated and already gated; the browser frames it directly and reads the
machine registry with the caller's own token. A server here would be a third
party to a conversation that has two, one more thing to keep running, and one
more place a credential could sit. The whole site is static.

A SHELL IS A URL. ttyd runs with --url-arg behind a wrapper that names a tmux
session, so ?arg=build IS a shell called build. One link serves as many
independent shells as asked for, and closing a pane loses nothing because
reopening the name reopens the session with its scrollback.

CARRIED OVER WHOLE, with its tests: the layout tree (split, close with
sibling-promotion, resize, sweep order, derived geometry, and the phone
projection where side-by-side splits become swipeable pages) and the binding
model that separates where a pane sits from what runs in it. 39 tests, no browser
required.

NOT A FORK OF GGPrompts/Tabz. That repo carries NO LICENSE — no LICENSE file, and
GitHub's license API 404s — so it is all-rights-reserved and cannot be forked into
an OSS product. Its good ideas are ideas and are used freely: a tab strip, tmux
operations without the Ctrl+B prefix, and agent status badges. Its architecture is
not: it needs its own Node PTY backend, and `hanzo link` already is one.

Verified against the live control plane in Chromium at 1440x900 and as an iPhone
14: the workspace renders a pane bound to the real machine (`ra · hanzo`), with
New shell and both splits present, and no page errors.

Co-authored-by: Hanzo Dev <[email protected]>
2026-08-03 22:55:12 -07:00

22 lines
1.0 KiB
Plaintext

MIT License
Copyright (c) 2026 Hanzo AI, Inc.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.