Skip to content
Agentmart
Submit a tool

agent-terminal

Terminal and TUI automation CLI for AI agents.

Skill by coder

IndexedApache-2.0★ 29
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/coder-agent-terminal

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Terminal and TUI automation CLI for AI agents. Use when the user needs to create a terminal session, run a command in a terminal, automate an interactive CLI or TUI, wait for terminal output, capture a TUI screenshot, export a terminal recording, or test a CLI workflow with reviewable artifacts.

Use cases: testing, productivity, agent-building

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/agent-terminal

What's inside

Skill name
agent-terminal
Description
Terminal and TUI automation CLI for AI agents. Use when the user needs to create a terminal session, run a command in a terminal, automate an interactive CLI or TUI, wait for terminal output, capture a TUI screenshot, export a terminal recording, or test a CLI workflow with reviewable artifacts.
License
Apache-2.0
Instructions
97 lines in SKILL.md · view on GitHub

Agent Skills spec issues

  • name: "agent-terminal" does not match folder "installed-skill"

Files (1)

  • SKILL.md

SKILL.md (first lines)

# Terminal Automation with agent-terminal

Install the CLI with `npm install -g agent-terminal`, then use `agent-terminal` directly.
Prefer isolated homes, JSON envelopes, and renderer-backed artifacts so terminal workflows stay reviewable and reproducible.

## Core Workflow

Every terminal or TUI automation task should follow this pattern:

1. **Create an isolated home** with `--home`.
2. **Check prerequisites** with `doctor --json` before screenshot or recording work.
3. **Create a session** with `create --json`.
4. **Run setup commands** with `run` instead of simulating long shell typing.
5. **Wait on observable terminal state** with `wait` instead of blind sleeps.
6. **Inspect the current screen** with `snapshot`.
7. **Capture proof artifacts** with `screenshot` or `record export`.
8. **Destroy the session** when finished.

```bash
AGENT_HOME="$(mktemp -d)"
agent-terminal --home "$AGENT_HOME" doctor --json
SESSION_ID=$(agent-terminal --home "$AGENT_HOME" create --json -- /bin/bash | jq -r '.result.sessionId')
agent-terminal --home "$AGENT_HOME" run "$SESSION_ID" 'printf "ready\n"'
agent-terminal --home "$AGENT_HOME" wait "$SESSION_ID" --text 'ready' --json
agent-terminal --home "$AGENT_HOME" snapshot "$SESSION_ID" --format text --json
agent-terminal --home "$AGENT_HOME" screenshot "$SESSION_ID" --json
agent-terminal --home "$AGENT_HOME" record export "$SESSION_ID" --format webm --json
agent-terminal --home "$AGENT_HOME" destroy "$SESSION_ID" --json
```

## Essential Commands

```bash
# Environment and lifecycle
agent-terminal --home <path> doctor --json
agent-terminal --home <path> create --json -- /bin/bash
agent-terminal --home <path> inspect <session-id> --json
agent-terminal --home <path> destroy <session-id> --json

# In-session control
agent-terminal --home <path> run <session-id> 'command here' --json
agent-terminal --home <path> type <session-id> 'literal text' --json
agent-terminal --home <path> paste <session-id> 'multiline payload' --json
agent-terminal --home <path> send-keys <session-id> Enter Ctrl+C --json

# Observation and proof
agent-terminal --home <path> wait <session-id> --text 'ready' --json
agent-terminal --home <path> wait <session-id> --screen-stable-ms 1000 --json
agent-terminal --home <path> snapshot <session-id> --format text --json
agent-terminal --home <path> screenshot <session-id> --json
agent-terminal --home <path> record export <session-id> --format webm --json
```

## Common Patterns

### Bootstrap a shell session

```bash
AGENT_HOME="$(mktemp -d)"
SESSION_ID=$(agent-terminal --home "$AGENT_HOME" create --json -- /bin/bash | jq -r '.result.sessionId')
agent-terminal --home "$AGENT_HOME" run "$SESSION_ID" 'pwd && ls -la' --json
agent-terminal --home "$AGENT_HOME" snapshot "$SESSION_ID" --format text --json
```

### Drive an interactive CLI or TUI

```bash
AGENT_HOME="$(mktemp -d)"
SESSION_ID=$(agent-terminal --home "$AGENT_HOME" create --json -- /bin/bash | jq -r '.result.sessionId')
agent-terminal --home "$AGENT_HOME" run "$SESSION_ID" '<interactive-command>' --no-wait --json
agent-terminal --home "$AGENT_HOME" wait "$SESSION_ID" --screen-stable-ms 1000 --json
agent-terminal --home "$AGENT_HOME" send-keys "$SESSION_ID" Down Down Enter --json
agent-terminal --home "$AGENT_HOME" screenshot "$SESSION_ID" --json
```

### Export reviewer-facing artifacts

```bash
AGENT_HOME="$(mktemp -d)"
SESSION_ID=$(agent-terminal --home "$AGENT_HOME" create --json -- /bin/bash | jq -r '.result.sessionId')
agent-terminal --home "$AGENT_HOME" run "$SESSION_ID" 'printf "artifact proof\n"' --json
agent-terminal --home "$AGENT_HOME" wait "$SESSION_ID" --text 'artifact proof' --json
agent-terminal --home "$AGENT_HOME" screenshot "$SESSION_ID" --json
agent-terminal --home "$AGENT_HOME" record export "$SESSION_ID" --format asciicast --json
agent-terminal --home "$AGENT_HOME" record export "$SESSION_ID" --format webm --json
```

## Anti-Patterns

- **Do not reach for `tmux`, `screen`, or ad hoc PTY wrappers first** when `agent-terminal` can provide an isolated, inspectable session.
- **Do not rely on blind `sleep` calls** when `wait --text`, `wait --idle-ms`, or `wait --screen-stable-ms` can observe terminal readiness directly.
- **Do not bypass `--json`** when another tool or agent needs machine-readable results.
- **Do not use external screenshot tools as the primary proof path** when `agent-terminal screenshot` and `agent-terminal record export` can produce renderer-backed artifacts tied to the session timeline.
- **Do not leave sessions running after the task ends**; destroy them explicitly.
- **Do not rewrite public examples into repo-local development invocations**; the public workflow should stay `agent-terminal ...`.

From coder/agent-tty, Apache-2.0.

More from coder/agent-tty

Signals

Stars
29
Forks
3
Open issues
1
Last commit (this folder)
Mar 28, 2026 (7 months ago)
Last release
Jun 23, 2026 (4 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
Apache-2.0
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from coder

Cite this page

agent-terminal skill. Agent Mart. https://agentmart.dev/skills/coder-agent-terminal (last updated 2026-10-24)