
iTerm2 Control Harness
Lets an agent read, send to, and arrange live iTerm2 terminal sessions via a CLI.
- Repository
- HKUDS/CLI-Anything
- Stars
- 58,084
- Licence
- Apache-2.0
- Files
- 13 files
What it does
Once installed, the agent stops answering iTerm2 questions from memory and instead drives a running iTerm2 app through a command-line tool. It can take a snapshot of every open terminal pane, type commands into a chosen pane, read recent output and scrollback, split panes, create windows and tabs, save and restore layouts, run tmux workflows, and read or change iTerm2 preferences. The skill's reference files describe each command group so the agent only loads what a task needs.
Great for
- Developers who keep several iTerm2 panes running servers, logs and editors and want an agent to check on them
- Engineers automating repeatable terminal layouts or tmux setups on macOS
- Users who want an agent to run a command in a specific pane and read the result
Skip it if
- Machines without macOS or iTerm2, since the tool depends on the iTerm2 Python API and will not work elsewhere
- Shared or production terminals where an agent typing commands could run destructive actions unreviewed; the skill sends real keystrokes into live sessions
- Users who are uncomfortable enabling iTerm2's Python API, which gives local programs control over the terminal app
Try asking
- “Show me what is running in each of my iTerm2 panes right now”
- “Send 'git status' to the pane labelled api-server and show me the output”
- “Split my current tab vertically and start a local http server on port 8000”
- “Save my current window layout so I can restore it later”
Install in 3 steps
- 1
Download the skill
The ZIP contains the 13 original files, the Apache-2.0 licence and an attribution note.
skills.zip - 2
Add it to your agent
Claude Code (all projects)
mkdir -p ~/.claude/skills && unzip skills.zip -d ~/.claude/skills/Claude Code / Agent SDK (this project only)
mkdir -p .claude/skills && unzip skills.zip -d .claude/skills/Claude apps (web/desktop): Settings → Capabilities → Skills → Upload skill, and choose the ZIP.
- 3
Ask for the task
No special command needed — the agent reads the skill's description and loads it when your request matches. Try one of the prompts above.
Get better results
- Use the --json flag for all commands so the agent gets machine-readable output
- Label panes with set-var user.role so app snapshot can identify them later
- Review commands before the agent sends them into sessions that run important processes
What's inside
- references/app-context.md
- references/broadcast-menu.md
- references/json-session.md
- references/json-tmux-app.md
- references/layout-arrangement.md
- references/layout-window-tab.md
- references/profile-pref.md
- references/session-control.md
- references/session-io.md
- references/session-shell-integration.md
- references/tmux-commands.md
- references/tmux-guide.md
- SKILL.md
Redistributed unmodified from HKUDS/CLI-Anything under the Apache-2.0 licence. The assessment was drafted with AI from the skill's files on 2026-10-29. Skills can instruct your agent to run code — read SKILL.md and any scripts before installing.