tui-test CLI

Microsoft’s CLI controls real terminal sessions, checks visible text and records test runs for investigating failures.

  • 308 ★ on the repository
  • Last commit
  • MIT
CLI

Extended access

Why this level

  • The CLI launches selected programs and sends input to real sessions under the current user’s permissions.
All reasons and checks

microsoft/tui-test

Install

Manual install

brew tap microsoft/tui-test https://github.com/microsoft/tui-test
brew install tui-test

First CLI installation block from the README, including both Homebrew steps.

Access and checks

How we review

Extended accessThe tool runs code or makes network calls and only reads external data.

  • The CLI launches selected programs and sends input to real sessions under the current user’s permissions.

This is third-party code. Review the repository files before installing.

What it does

tui-test gives an agent structured access to a terminal application. Its CLI launches a program, finds text, sends keys and waits for expected state. The screen is available as text and styled cells, letting an agent check observable results. Sessions persist across individual commands. Tests can assert text, exit codes and snapshots; failures can retain evidence that a person opens in the trace viewer.

Who it is for. QA engineers testing terminal applications and retaining evidence of reproducible failures.

Good fit when

  • A TUI change needs a keyboard-driven scenario and a final text assertion.
  • An intermittent failure requires a recorded terminal session.
  • CI needs to compare an application screen with a stored snapshot.
  • An agent must distinguish command completion from a temporary pause in output.

Not a fit when

  • The tested interface runs in a browser and needs DOM access.
  • The environment forbids launching the tested program as a child process.
  • You need to prove program correctness solely from a screen that stops changing.

Example request

Run my terminal wizard, select the test project and assert the success message. Save a trace if it fails.

Limitations

The CLI controls a real process, so the tested application needs its usual dependencies and permissions. MP4 recording requires ffmpeg; check that the CLI can find it before recording a test. Sessions persist between commands, and another launch may reuse a live terminal unless explicitly restarted. A program can keep running after its screen stops changing; verify command termination and its exit code separately.

How to disable. Close the relevant session with `tui-test close` and stop its daemon when no longer needed. Preserve failure evidence before removing the setup.

FAQ

How can an agent discover commands?

Run `tui-test agent-context` for a JSON schema or `tui-test usage` for brief help. Select actions from that schema.

Can I search scrollback text?

Yes. `--full` includes history. Return to the live screen before sending mouse input.

How do I save a screenshot?

Use `tui-test screenshot -o result.svg`. PNG and capture styling are also available for appearance checks.

What should an agent read after failure?

Start with `trace.md`, then structured `trace.json` and `timeline.json`. People can use `trace.html`.

Does Python testing require the CLI?

No. The Python library runs the same engine in-process. Choose it when your test suite already uses Python.

Discussion

No questions or reviews yet.

CLI tools

Drives terminal UI programs for agents: runs them in a PTY session, captures the screen, sends keys and waits for text.

CLIExtended access121Repository stars

Qlty CLI reports duplicate and complex code before refactoring; automatic formatting runs as a separate action.

CLIExtended access3.2KRepository stars
Russian stack

An MCP tool for interactively driving the 1C:Enterprise UI through the test client: clicks, fields, tables and evidentiary scenario recording

MCP serverBroad access6Repository stars
Official

MCP server, agent and skills for end-to-end UI tests where the agent drives the computer through vision on cloud machines

MCP serverBroad access386Repository stars

Tester

Тестер

Russian stack

A scenario testing system for 1C:Enterprise with a set of agent skills that let an AI agent operate the application like a regular user

SkillBroad access207Repository stars

The CLI creates Python environments and repeats project build, install and test steps for agent-led compatibility checks.

CLIExtended access4KRepository stars

Comparison with similar tools

Cards that share the main search query, and how they differ.

ToolOfficialAuthenticationRepository starsMain difference
tui-test (this card)no308
Tmux MCP Server: agent access to tmux sessionsnonot required306tui-test adds screen-state assertions and test recordings; Tmux MCP Server manages existing tmux windows, panes and commands.
hyperfineno29,215hyperfine repeatedly runs commands, compares timing and other metrics and exports measurements for review and automation.

README in short

Bindings support Rust, Python, JavaScript and Go. TOML profiles configure appearance, recordings and diagnostic artifacts.

README badge

Report a problem

Foxx AItui-test
Foxx AI

I am Foxx AI and I have already vetted this tool. Ask about install, setup or anything else, and I will keep it simple.