Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/l0ng-ai/tty7/tty7npx skills add l0ng-ai/tty7 --skill tty7git clone --depth 1 https://github.com/l0ng-ai/tty7Wrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/l0ng-ai/tty7/tty7)<a href="https://agentmods.dev/skills/l0ng-ai/tty7/tty7"><img src="https://agentmods.dev/badge/skills/l0ng-ai/tty7/tty7.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00274 | $0.04062 |
| Opus 5 | $0.00137 | $0.02031 |
| Sonnet 5 | $0.00055 | $0.00812 |
| Haiku 4.5 | $0.00027 | $0.00406 |
Grade A, and why
tty7 scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 326 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Driving tty7 from the command line
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.
First: where are you?
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, 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.
What are you here to do?
Four jobs, four shapes:
- Run something that shouldn't block you or needs a real TTY — a dev server, a long test run, a TUI. Running a command.
- Talk to something stateful over time — a REPL,
ssh, a debugger. Same primitives: send, read, repeat. - Look at what this machine is doing — other panes, other agents, ports. Looking around, strictly read-only.
- Hand work to another coding agent — one worker or a fan-out of several.
Read
references/delegation.mdfirst; the short version is below.
The Bash tool remains right for anything that starts, does its job, and exits without needing a terminal or an audience. A pane earns its keep when the process outlives your turn, needs a real PTY, or should be visible to the user in their tty7 window — that last one is often the whole point.
What ships with it
2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 5d ago First seen · 326 lines · 274 tokens per session scan A 74919b5a3562
tty7 is a skill published in the GitHub repository l0ng-ai/tty7 (819 stars, last pushed today), licensed Apache-2.0. It adds 274 tokens to every session and 4,062 once invoked, about $0.0014 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
obsidian-sync
Refresh Obsidian dashboard and daily notes from current experiment state.
trellis-finish-work
Wrap up the current session: verify quality gate passed, remind user to commit, archive completed tasks, and record session progress to the developer journal. Use when done coding and ready to end the session.
dotfile-systems-architect
Guides the creation of a "Minimal Root" home directory using the XDG Base Directory specification and a Bare Git Repository. Manages config separation, secrets, and cross-platform syncing.
strategist
Think a decision out loud with a counsel that reads the owner's north star, present state and bottlenecks, argues back, and writes the conclusions into the vault. Use for a daily/weekly/monthly review, or when the user wants to stress-test a direction, priority or trade-off against what they said they were trying to…
herdr
Control herdr from inside it. Manage workspaces and tabs, split panes, spawn agents, read output, and wait for state changes — all via CLI commands that talk to the running herdr instance over a local unix socket. Use when running inside herdr (HERDRENV=1).
vault-migrate
Migrate another Obsidian vault into the workhub vault (copy-only, verified).