Show HN: Hty – Puppeteer for the terminal let's AI agents drive interactive CLIs

anonfunction1 pts0 comments

hty<br>Skip to ContentCTRL K

Get Started<br>Introduction<br>Quick Start<br>Installation<br>Core Concepts<br>Sessions<br>Background Server<br>Session Logs<br>Commands<br>list<br>run<br>snapshot<br>send<br>wait<br>kill<br>delete<br>logs<br>replay<br>watch<br>attach<br>keys<br>info<br>export<br>Guides<br>AI Agents<br>CI Automation<br>Remote Observation<br>Session Replay<br>Reference<br>Exit Codes<br>Environment Variables<br>Socket Protocol<br>Light<br>Get Started<br>Introduction<br>Quick Start<br>Installation<br>Core Concepts<br>Sessions<br>Background Server<br>Session Logs<br>Commands<br>list<br>run<br>snapshot<br>send<br>wait<br>kill<br>delete<br>logs<br>replay<br>watch<br>attach<br>keys<br>info<br>export<br>Guides<br>AI Agents<br>CI Automation<br>Remote Observation<br>Session Replay<br>Reference<br>Exit Codes<br>Environment Variables<br>Socket Protocol

Light<br>hty<br>Copy page

hty

Puppeteer for the terminal. Let AI agents drive any interactive CLI — editors, REPLs, auth flows, scaffolding wizards — by reading the screen and sending keys.

Install

Point your AI agent at the skill:

Install hty using this skill: https://hty.sh/skill.md

It teaches the agent when to reach for hty, how to drive sessions, and handles installing the hty CLI itself.

Or install the skill directly via the skills CLI :

npx skills add LatentEvals/hty --skill hty

Installing hty yourself? See all methods →

Why hty exists

Unlock a world of TUI and CLI software for your AI agent.

If you’ve used agents, you’ve seen them struggle with things like create-next-app, or watched them try to stage a sprawling diff by shuffling files into /tmp, rm-ing changes, and getting hopelessly confused. If only they could use git add -p. Well, now they can.

hty wraps any interactive program in a persistent PTY session. Your agent reads the rendered terminal the way you do and types the way you would.

# agent decides to use hty to create its terminal<br>hty run --name create-next-app -- create-next-app my-app

# agent looks at the terminal to see what to do<br>hty snapshot create-next-app

# agent sees: "Would you like to use TypeScript? (Y/n)"<br>hty send create-next-app --text "y\n"

# ...repeat for each remaining prompt...

# delete the terminal session<br>hty delete create-next-app

What you get

Any interactive program works. vim, psql, btop, git add -p, gh auth login, create-next-app — if a human can use it, an agent can too.

Sessions persist. The server auto-starts and keeps sessions alive across invocations. Pick up where you left off.

Watch live. Open another terminal and run hty watch to see exactly what the agent sees, in real time.

Full replay. Every session is recorded. hty replay plays it back through a fresh VT engine — debug what happened, or demo it to your team.

Wait primitives that actually work. --text for substring match, --idle for output settling, --exit for process completion. All with timeouts. No sleep 2 and hope.

Remote observation. SSH tunnel to a remote machine and watch or attach to sessions running there. No protocol changes needed.

Single binary, zero dependencies. One curl | sh and you’re running. Built on Ghostty’s production-grade VT engine in Zig.

Get started in 30 seconds

curl -fsSL https://raw.githubusercontent.com/LatentEvals/hty/main/scripts/install.sh | sh<br>hty run --name demo -- top<br>hty wait demo --text "PID" --timeout 5000<br>hty snapshot demo<br>hty kill demo<br>hty logs demo # still works — the recording is preserved<br>hty delete demo # permanently remove the session and its log

Install hty →

Quick Start →

GitHub →<br>Last updated on April 23, 2026<br>Quick Start

agent session create terminal next demo

Related Articles