tui-tester

Expert guidance for testing Gemini CLI behavior and visual output using terminal automation.

npx skills add https://github.com/google-gemini/gemini-cli --skill tui-tester

TUI Tester Skill

This skill provides the operational manual for verifying Gemini CLI behavioral changes and visual output using terminal automation.

Core Responsibilities

  • Verify Behavior: Confirm that code changes result in the expected terminal interactions.
  • Visual Validation: Ensure the TUI renders correctly across different terminal sizes and states.
  • Regression Testing: Use automation to prevent breaking existing interactive workflows.

Critical Protocol

When performing TUI testing, you must adhere to these strict rules:

1. Initialization

YOUR ABSOLUTE FIRST ACTION MUST BE: Activate the agent-tui skill. This provides the underlying tools needed for terminal automation.

2. Environment Setup (macOS / Parallel Safe)

Ensure the global daemon is running and the live preview is open:

if ! agent-tui sessions >/dev/null 2>&1; then
  tmux kill-session -t agent-tui 2>/dev/null || true
  agent-tui daemon stop 2>/dev/null || true
  rm -f /tmp/agent-tui*
  tmux new-session -d -s agent-tui 'agent-tui daemon start --foreground > /tmp/agent-tui-daemon.log 2>&1'
  sleep 1
fi
agent-tui live start --open

3. Session Management

  • Session IDs: Always use the session_id returned by agent-tui run for subsequent interactions.
  • Atomic Execution: Execute exactly one command per turn. Do not pipeline actions.
  • The Loop: Action -> Wait -> Screenshot -> Verify -> Next Action.

4. Gemini CLI Specifics

  • Build First: Always run npm run build or npm run build:all before testing local changes.
  • Bypass Trust: Set GEMINI_CLI_TRUST_WORKSPACE=true to avoid focus-stealing modals.
  • Isolate Config: Use GEMINI_CLI_HOME to prevent interference with your personal settings.

Workflow Example

# Start the CLI
env GEMINI_CLI_TRUST_WORKSPACE=true agent-tui run node packages/cli/dist/index.js

# Wait for the prompt
agent-tui wait "│" --assert

# Send a command
agent-tui type "/help"
agent-tui press Enter

# Verify output
agent-tui wait "Available Commands" --assert

Error Recovery

If a wait times out, take a fresh screenshot to diagnose the state. If you see os error 61, restart the daemon using the tmux method.

More skills from google-gemini

agent-tui
google-gemini
Main Agents: Do NOT use this skill directly. If you need to test the TUI, invoke the `tui_tester` subagent. Drive terminal UI (TUI) applications…
gemini-api-cli
google-gemini
Guide for using the Gemini API CLI tool. Use when you need to interact with the Gemini API via the command line, manage agents, or generate media (images,…
behavioral-evals
google-gemini
Guidance for creating, running, fixing, and promoting behavioral evaluations. Use when verifying agent decision logic, debugging failures, debugging prompt…
gemini-live-api-dev
google-gemini
Real-time bidirectional streaming with Gemini over WebSockets for audio, video, and text conversations. Supports audio input/output (16 kHz PCM), video frames, text, and automatic transcriptions with voice activity detection for interruption handling Includes native audio features: affective dialog, proactive audio, and thinking mode; function calling for synchronous and asynchronous tool use; and Google Search grounding Offers session management with context compression, resumption, and...
gemini-omni-flash-api
google-gemini
Use this skill for generative video editing, text-to-video, image-referenced video generation, and first-frame-to-video transition animations using the…
gemini-api-dev
google-gemini
Build applications with Google's Gemini models, supporting multimodal content, function calling, and structured outputs across Python, JavaScript, Go, and Java. Access current Gemini 3 models (Pro, Flash, Pro Image) with 1M token context; legacy Gemini 2.x and 1.5 models are deprecated Supports text generation, image/audio/video understanding, function calling, structured JSON output, code execution, context caching, and embeddings Official SDKs available: google-genai (Python),...
gemini-interactions-api
google-gemini
Unified interface for Gemini models and agents with server-side state, streaming, and tool orchestration. Supports multiple current models (gemini-3-flash-preview, gemini-3-pro-preview, gemini-2.5-flash/pro) and the Deep Research agent; automatically substitute deprecated model IDs with current alternatives Offload conversation history to the server via previous_interaction_id for stateful multi-turn interactions without manual history management Built-in tool orchestration including...
deliver
google-gemini
Posts a condensed version of the briefing to a Google Chat or Slack incoming webhook, so the daily run delivers itself — skips silently when no webhook is…