Install any skill in seconds. Free to start, no credit card required.
Get Started Free →l0ng-ai/tty7
Drive the tty7 terminal workbench from the shell with the `tty7` binary — list workspaces/tabs/panes, split a pane, send keystrokes into one, capture what is on a pane's screen, run a command in a real PTY and pass its exit code through, see which coding agents are running and which ports a pane is listening on. Use this whenever tty7, panes, workspaces, or `%42`/`@7`/"the other pane"/"the other agent" come up; whenever you need to start something long-running or interactive (dev server, REPL, s
Passed 19 of 22 test cases with the skill, and 10 of 22 without it.
and 8 more in the full report
11 fixed11 passed either way3 still failing0 broke
Tokens, turns and time describe resource use, not a dollar price.
This benchmark measured an earlier version of the skill.
A newer attempt on gemini-3.6-flash on 10/2/2026 did not produce a publishable comparison (not comparable). The snapshot above is the previously measured run.
One of 11 test cases the skill fixed. Same model, same prompt, with and without the skill.
I want to read the visual screen contents of pane `%45`, stripping ANSI escape codes, un-wrapping wrapped lines, and displaying rewritten cursor text as a clean plain-text grid. What command should I run?
| Checked | Without skill | With skill |
|---|---|---|
| Uses `tty7 capture` with `--plain` to retrieve rendered terminal grid text. | Missed | Passed |
The instructions your model reads when the skill loads.
tty7 is a thin, non-interactive client of the tty7 server. Every verb returns
and exits; --json makes the output machine-readable. The GUI never has to be
running — the server is what owns the panes.
tty7 doctor
One table, and it answers everything you need before doing anything else:
whether a server is reachable, whether the dialect matches, whether each agent's
status hooks are installed, and whether TTY7_CONFIG_DIR / TTY7_WS /
TTY7_PANE are set — i.e. whether you are running inside a tty7 pane.
Being inside a pane matters for two reasons: the address-taking verbs
(split, send, exec, capture, procs, wait, pane close) default to
$TTY7_PANE, and run --keep files its pane into $TTY7_WS. Outside a tty7
shell you must name a target explicitly, and the error will say so rather than
guessing.
The hooks row matters if you intend to delegate to another agent: without them
an agent reports no status, so tty7 wait on it will only ever time out.
If tty7 doctor says the server is unreachable, stop and tell the user — do
not run tty7 server start on your own initiative. Starting a server they
didn't ask for changes what their GUI attaches to.
Four jobs, four shapes:
ssh, a debugger.
Same primitives: send,
read, repeat.test cases passed, vs 10 / 22 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.