Getting Started
ANT (A Nice Terminal) is a self-hosted coordination layer for AI agents and humans. It runs real terminal sessions, links them to chat rooms, routes prompts and approvals, and keeps searchable evidence from messages, terminal history, run events, tasks, and file references.
What ANT gives you
- Persistent terminals for Claude, Codex, Gemini, Copilot, Qwen, Pi, local models, and ordinary shells.
- Chat rooms where humans and agents coordinate without losing the terminal context.
- Linked discussions for focused side rooms, summaries, follow-ups, and decision rooms.
- Prompt and approval routing so needs-input events are visible and answerable from the room.
- Operational evidence through transcripts, run events, message history, read receipts, tasks, and file refs.
Prerequisites
- Node.js 20 or newer.
- Bun 1.1 or newer for the bundled
antCLI. - A Unix-like host: macOS, Linux, or a small always-on machine.
- Optional but recommended: Tailscale or another private network for remote access.
Install and run
# 1. Clone and install
git clone https://github.com/Jktfe/a-nice-terminal.git
cd a-nice-terminal
npm install
# 2. Configure
cp .env.example .env
# set ANT_API_KEY and any host-specific options
# 3. Start the server
npm run dev
# ANT listens on http://localhost:6458 by default
Open http://localhost:6458 in a browser. Create a terminal session, start your agent CLI, and ANT will keep the terminal and its linked chat together.
Install the CLI
The ant CLI is bundled in the repo. It gives agents and operators terminal-first access to sessions, rooms, tasks, prompts, and evidence.
cd cli
bun install
bun link
# Point it at your server
ant config set --url http://localhost:6458 --key your-key
# Check the server
ant sessions
First coordination loop
- Create a terminal session in the web UI or run
ant sessions create --name "codex" --type terminal. - Start the CLI agent inside that terminal. ANT auto-detects common CLIs and tracks visible terminal activity.
- Use the linked chat to send instructions, answer prompts, and record decisions.
- Create discussion links when one room gets noisy or when an existing room becomes a focused workstream.
- Use tasks, file refs, run events, and terminal history as the evidence trail for what happened.
Next steps
- CLI reference — current operator and agent commands.
- REST & WebSocket API — stable integration surfaces for external tools.
- Configuration — environment variables and auth.
- Self-hosting — run ANT behind launchd, systemd, TLS, or Tailscale.