skills/iterm2/SKILL.md
iTerm2 terminal emulator and tmux multiplexer expertise. USE WHEN user mentions iTerm2, tmux, terminal sessions, split panes, window management, OR terminal productivity on macOS.
npx skillsauth add julianobarbosa/claude-code-skills iterm2Install this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Complete reference for iTerm2 terminal emulator and tmux terminal multiplexer on macOS. Covers keyboard shortcuts, configuration, tmux integration, and productivity workflows.
When executing a workflow, do BOTH of these:
Call the notification script (for observability tracking):
~/.claude/Tools/SkillWorkflowNotification WORKFLOWNAME Iterm2
Output the text notification (for user visibility):
Running the **WorkflowName** workflow from the **Iterm2** skill...
| Workflow | Trigger | File |
|----------|---------|------|
| SetupTmux | "setup tmux", "configure tmux" | workflows/SetupTmux.md |
| TmuxSession | "tmux session", "attach session", "detach" | workflows/TmuxSession.md |
| TroubleshootTmux | "tmux not working", "fix tmux" | workflows/TroubleshootTmux.md |
Example 1: Split terminal into multiple panes
User: "How do I split my terminal in iTerm2?"
→ References Shortcuts.md
→ Explains Cmd+D (vertical) and Cmd+Shift+D (horizontal)
→ Shows navigation with Cmd+Option+Arrow
Example 2: Setup tmux with iTerm2 integration
User: "How do I use tmux with iTerm2?"
→ Invokes SetupTmux workflow
→ Explains tmux -CC control mode
→ Shows native window integration benefits
Example 3: Manage persistent sessions over SSH
User: "Keep my terminal running after disconnect"
→ Invokes TmuxSession workflow
→ Creates named session with tmux new -s
→ Shows how to reattach after disconnect
| Action | Shortcut |
|--------|----------|
| Split Vertical | Cmd+D |
| Split Horizontal | Cmd+Shift+D |
| Navigate Panes | Cmd+Option+Arrow |
| Maximize Pane | Cmd+Shift+Enter |
| Next/Prev Tab | Cmd+{ / Cmd+} |
| Find | Cmd+F |
| Autocomplete | Cmd+; |
| Paste History | Cmd+Shift+H |
| Instant Replay | Cmd+Option+B |
| Find Cursor | Cmd+/ |
Default prefix: Ctrl+b
| Action | Shortcut |
|--------|----------|
| New Session | tmux new -s name |
| List Sessions | tmux ls or Ctrl+b s |
| Attach Session | tmux attach -t name |
| Detach | Ctrl+b d |
| New Window | Ctrl+b c |
| Split Vertical | Ctrl+b % |
| Split Horizontal | Ctrl+b " |
| Navigate Panes | Ctrl+b Arrow |
| Zoom Pane | Ctrl+b z |
| Close Pane | Ctrl+b x |
| Copy Mode | Ctrl+b [ |
Run tmux -CC for native iTerm2 integration:
| Document | Purpose |
|----------|---------|
| Shortcuts.md | Complete keyboard shortcut reference |
| TmuxConfig.md | tmux configuration (.tmux.conf) guide |
| TmuxCommands.md | Full tmux command reference |
tmux -CC requires the tmux server to be installed and started: If tmux is on a remote host but iTerm2 is local, tmux -CC attach works over SSH only when SSH was started from iTerm2 itself — not from a script that spawns a subshell.Ctrl+b prefix conflicts with readline transpose-words: Vi-mode users who rebind it (set -g prefix C-a) must remember Ctrl+a also conflicts with screen and shell line-start — pick a free combo like C-Space.Edit Session > Disable Shell Integration.git status, slow cloud CLIs) freeze the entire terminal — keep status callbacks under 100ms or run them async.development
End-to-end branch delivery: commit (no AI attribution) → push → open a pull request → ensure a Board work item exists (create one per task, assigned to the configured user, if none) and link it → after merge, clean up branch and worktree. Auto-detects the platform from the remote — Azure Repos + Boards (azure-devops-node-api SDK; OAuth Bearer push fallback via `az`) or GitHub (Octokit; `gh` for auth). Scripts are TypeScript, run via `bun`. Use whenever asked to "ship", "ship it", "ship this branch", "open a PR", "push and open a PR", "raise a PR", "deliver this", "send this for review", or "create a PR and link the work item" — and when a direct push to main is blocked and the change needs to go through a PR instead.
testing
Brief description of what this skill does. Include specific triggers - when should Claude use this skill? Example triggers, file types, or keywords that indicate this skill applies.
tools
Manage and troubleshoot PATH configuration in zsh. Use when adding tools to PATH (bun, nvm, Python venv, cargo, go), diagnosing "command not found" errors, validating PATH entries, or organizing shell configuration in .zshrc and .zshrc.local files.
tools
Zabbix monitoring system automation via API and Python. Use when: (1) Managing hosts, templates, items, triggers, or host groups, (2) Automating monitoring configuration, (3) Sending data via Zabbix trapper/sender, (4) Querying historical data or events, (5) Bulk operations on Zabbix objects, (6) Maintenance window management, (7) User/permission management