3axap4eHko

Tmux Select — Development skill for Claude Code

Development community

Agent-aware tmux window picker with a built-in fuzzy finder for Claude Code and Codex.

How to install Tmux Select

This entry records only its repository, not the path inside it, so there is no exact command to give. Open 3axap4eHko/tmux-select and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Tmux Select does

Agent-aware tmux window picker with a built-in fuzzy finder for Claude Code and Codex.

Alternatives in Development

  • Ccusage — CLI for analyzing Claude Code/Codex usage from local JSONL files 11.8k ★
  • Family Picker — family-picker 1k ★
  • Oh My Agent — Portable multi-agent harness for .agents-based skills, workflows, and standards-aware agent teams across Antig 786 ★

README

tmux-select

An agent-aware tmux window picker. It replaces the usual `list-windows | fzf | select-window` binding with a picker that annotates each window with the detected state of any AI coding agents (Claude Code, Codex, Kimi Code, Pi, OpenCode, Qwen Code, Grok Build, and Muse Code) running in its panes, so you can see at a glance which window needs your attention and jump straight to the pane that is blocked.

https://github.com/user-attachments/assets/74f50ead-c774-462d-a619-862d38bb2888

It lists the windows of the **current tmux session**, initially in window-index order. Pick one and it switches to it; if a pane there is blocked, it focuses the first blocked pane so you land exactly where input is needed.

Requirements

  • tmux (developed against 3.5a) - the only runtime dependency; the fuzzy finder is built in (no fzf required)
  • Rust (edition 2024) to build from source

Linux and macOS are fully supported. On other platforms the build works, but agent classification falls back to the pane's foreground command name (the process-tree walk needs `/proc` or libproc).

Install

From crates.io:

cargo install --locked tmux-select

Or from a local checkout:

cargo install --locked --path .
# or: cargo build --locked --release  (binary at target/release/tmux-select)

Then bind it in `~/.tmux.conf`:

bind / display-popup -E "tmux-select"

Press your prefix then `/` to open the picker. The `-E` flag closes the popup automatically when the picker exits.

`tmux-select` must run inside a tmux session (it reads `$TMUX`); launching it from a plain shell exits with an error. The `display-popup` binding always satisfies this.

Usage

The picker opens with every window of the current session listed and the active window preselected. Type to fuzzy-filter, move with the arrow keys, press Enter to switch.

Window names and renaming

Windows with `automatic-rename` off show their window name instea