Named after the T-1000 from Terminator 2: Judgment Day — the antagonist that could not be stopped, never crashed, and kept coming back no matter what.
You already know how to use a browser: open tabs, name your windows, switch between sessions, search across everything, and nothing disappears when you close it. T-1000 brings that exact mental model to your terminal work.
Each tab is a live shell. Each window is a named workspace. Sessions survive restarts via tmux — invisibly, with no tmux knowledge needed. It's the browser UX you're already fluent in, applied to the terminal you actually live in. And like the machine it's named after: it does not crash, does not lose your work, and keeps running.
flowchart TD
App(["T-1000"])
App --> W1["Window: Backend\n(named workspace)"]
App --> W2["Window: Agents\n(named workspace)"]
W1 --> T1["Tab: api\nshell • ~/projects/api"]
W1 --> T2["Tab: tests\npytest -f"]
W1 --> T3["Tab: shell\nbash"]
W2 --> T4["Tab: codex-api\ncodex • ~/projects/api"]
W2 --> T5["Tab: claude-review\nclaude • ~/projects/api"]
W2 --> T6["Tab: opencode-frontend\nopencode • ~/projects/frontend"]
style App fill:#1e1e2e,color:#cdd6f4,stroke:#89b4fa
style W1 fill:#313244,color:#cdd6f4,stroke:#a6e3a1
style W2 fill:#313244,color:#cdd6f4,stroke:#f38ba8
style T1 fill:#1e1e2e,color:#a6e3a1,stroke:#45475a
style T2 fill:#1e1e2e,color:#a6e3a1,stroke:#45475a
style T3 fill:#1e1e2e,color:#a6e3a1,stroke:#45475a
style T4 fill:#1e1e2e,color:#f38ba8,stroke:#45475a
style T5 fill:#1e1e2e,color:#f38ba8,stroke:#45475a
style T6 fill:#1e1e2e,color:#f38ba8,stroke:#45475a
Each Window is a named group (like a browser window). Each Tab is a live terminal shell backed by tmux — close the app, reopen it, everything is still running.
| OS | Supported | Notes |
|---|---|---|
| Linux | ✅ Full | Primary platform. All features work. |
| macOS | GTK3/VTE via Homebrew. /proc resource stats unavailable — CPU/RAM monitoring disabled. |
|
| Windows | Run inside WSL2 (Ubuntu). Native Windows has no GTK3/VTE/tmux. |
# 1. System dependencies
sudo apt update
sudo apt install -y tmux python3-gi python3-gi-cairo gir1.2-gtk-3.0 gir1.2-vte-2.91 git python3-pip
# 2. Install T-1000
git clone https://github.com/streetquant/TerminalBrowser.git
cd TerminalBrowser
pip install -e .
# 3. Run
t1000# 1. System dependencies
sudo pacman -S --needed tmux python-gobject gtk3 vte3 git python-pip
# 2. Install T-1000
git clone https://github.com/streetquant/TerminalBrowser.git
cd TerminalBrowser
pip install -e . --break-system-packages
# 3. Run
t1000# 1. System dependencies
sudo dnf install -y tmux python3-gobject gtk3 vte291 git python3-pip
# 2. Install T-1000
git clone https://github.com/streetquant/TerminalBrowser.git
cd TerminalBrowser
pip install -e .
# 3. Run
t1000
⚠️ Resource monitoring (CPU/RAM per tab) is disabled on macOS —/procis Linux-only.
# 1. Install Homebrew if not already installed
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# 2. System dependencies
brew install tmux pygobject3 gtk+3 vte3
# 3. Install T-1000
git clone https://github.com/streetquant/TerminalBrowser.git
cd TerminalBrowser
pip3 install -e .
# 4. Run (may require XQuartz for display)
t1000
⚠️ T-1000 does not run natively on Windows. Use WSL2 with an Ubuntu distro.
# 1. Enable WSL2 and install Ubuntu (PowerShell as Administrator)
wsl --install
# Reboot, then open Ubuntu from Start menu# 2. Inside Ubuntu WSL2 — same as Debian install above
sudo apt update
sudo apt install -y tmux python3-gi python3-gi-cairo gir1.2-gtk-3.0 gir1.2-vte-2.91 git python3-pip
# For GUI support install a Wayland/X11 compositor (WSLg is built into Win11)
# Win11: WSLg is automatic. Win10: install VcXsrv and set DISPLAY=:0
git clone https://github.com/streetquant/TerminalBrowser.git
cd TerminalBrowser
pip install -e .
t1000- Named windows — group terminals by project or context, just like browser windows
- Directory-backed tabs — every tab opens in a specific path, like a bookmark that runs
- Persistent sessions — close the app, reopen it, your tabs are all still there
- Side pane — search, filter, multi-select, pause, resume, kill tabs (
F9to toggle) - Command palette — keyboard-first access to all actions (
Ctrl+Shift+P) - Themes — built-in light/dark themes with density control
- Workspace recipes — save and restore a full set of tabs in one click
Free up CPU from a runaway agent without killing it. The tmux session keeps existing — just frozen.
t1000 pause codex-api # pause one agent
t1000 pause --tag ai # pause all agents
t1000 resume --tag ai # resume all at once
t1000 pause-hot --all # auto-pause anything using high CPUSend the same text to every tab in a tag group — like texting all your agents simultaneously.
t1000 send --tag ai "status" # ask all agents for status
t1000 send --tag ai "stop and summarise" # graceful checkpoint
t1000 send --tag ai "continue" --no-enter # stage input, don't submit yett1000 capture --tag ai --lines 200 # last 200 lines from every agent
t1000 activity --tag ai # who needs attention right now?
t1000 search-output "needs approval" --tag ai # find specific text across all tabst1000 gui --workspace agents.workspace.jsonOne JSON file defines all windows, tabs, commands, and directories. Reopen any time and everything restores exactly.
Close T-1000, reboot the machine, reopen — all tabs come back. Agents that were mid-task can be resumed exactly where they were.
| Action | Key |
|---|---|
| New tab | Ctrl+Shift+T |
| Close tab | Ctrl+Shift+W |
| Next / prev tab | Ctrl+Tab / Ctrl+Shift+Tab |
| Toggle side pane | F9 |
| Command palette | Ctrl+Shift+P |
| Settings | Ctrl+, |
T-1000 shines as a multi-agent cockpit. See docs/codex-claude-workflow.md for:
- How to launch 3+ agents in parallel with a single workspace recipe
- The agent lifecycle state machine (running → needs input → paused → done)
- The approval loop — click card in side pane, answer, back to work
- CLI commands to monitor, capture output, and steer agents by tag
- Full day workflow Gantt
You can use T-1000 with Codex, Claude Code, and OpenCode side by side. Give each agent its own tab or tag, then monitor and steer them from the same workspace.
Paste this prompt into Codex, Claude Code, or OpenCode and it will install T-1000 on your machine:
Install T-1000 from https://github.com/streetquant/TerminalBrowser by:
1. Installing system dependencies for this OS (tmux, GTK3, VTE, python3-gi)
2. Cloning the repo into ~/t1000
3. Running pip install -e . inside it
4. Verifying with: t1000 --version
MIT
