{"repo":"mwunsch/termscope","free":true,"listed":false,"github":"https://github.com/mwunsch/termscope","clone":"git clone https://github.com/mwunsch/termscope.git","description":"Headless terminal emulator CLI powered by libghostty-vt","language":"Zig","stars":18,"topics":["agent-skill","agentskills","ai-agents","automation","claude-code","cli-testing","codex","ghostty","headless","libghostty"],"license":"MPL-2.0","category":"workflow-automation","readme_excerpt":"termscope Headless terminal emulator CLI powered by libghostty-vt. Spawn any command in a real virtual terminal, interact with it programmatically, and capture the state — all from a single binary with zero runtime dependencies. Built for AI agents, CI pipelines, and TUI testing. Inspired by Playwright-style automation, but for the terminal. Install Or build from source (requires Zig 0.15.x): Quick Start Snapshot a TUI Interact then capture Assert in CI Drive from an agent (session mode) Reads JSON-line requests from stdin, writes JSON-line responses to stdout: Key Notation Emacs-style, the established standard: Notation Meaning --- --- C-c Ctrl+C M-x Alt+X RET Enter TAB Tab ESC Escape SPC Space DEL Backspace Arrow keys … Function keys C-x C-s Key sequence Output Formats Format Use --- --- text (default) Numbered lines, optimized for LLMs spans Text + per-line style runs json Structured JSON html Styled with elements svg Visual screenshot Session Protocol Method Params Response --- --- --- snapshot format? Snapshot data type text {} press key {} wait for text pattern , timeout? {found, row, col} wait for idle duration? {} wait for cursor row , col , timeout? {} query — Terminal state resize cols , rows {} close — {exit code} Errors: {\"id\":N,\"error\":{\"code\":\"...\",\"message\":\"...\"}} . The session continues on errors. Agent Skill","default_branch":null,"files":null,"tree":[],"storefront":"/r/mwunsch","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/mwunsch/termscope/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}