Skip to content
Back to skills

Tabs

ASecurity

Use when the user asks to "list my claude sessions", "which windows are waiting", "/ar:tabs". Discovers Claude sessions across tmux windows and reports which need attention.

  • 12 stars
  • 0 votes
  • 0 copies
  • 5 views
  • Added August 31, 2026
ai-agentsbashtestinggit

Works with

  • claude code
  • cli

Security analysis

A100/100

Scanned August 31, 2026

npx -y skills add ahundt/autorun --skill tabs --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Tabs?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Tabs
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/ahundt-tabs/badge)](https://www.skillsdirectory.com/skills/ahundt-tabs)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: tabs
description: Use when the user asks to "list my claude sessions", "which windows are waiting", "/ar:tabs". Discovers Claude sessions across tmux windows and reports which need attention.
allowed-tools: Bash(tmux *), Bash(uv *)
argument-hint: "[A,B:command] or [all:continue] or [awaiting:status]"
---

# Claude Session Manager

<purpose>

Discover, analyze, and interact with Claude Code sessions across tmux windows.

## Context

Current tmux sessions and Claude windows:

Run `tmux list-sessions` and read its output before choosing a session.

## Your Task

The user's request is the task description for everything below.

If no arguments provided, discover all Claude sessions and present them to the user.

</purpose>

<workflow>

## Workflow

1. **Discover** - Run the discovery script to get session data
2. **Present** - Show sessions as table with letter labels (A, B, C...)
3. **Ask** - Get user selection for which sessions to interact with
4. **Execute** - Run commands on selected sessions

## Discovery

```bash
"${CLAUDE_PLUGIN_ROOT}/commands/tabs-exec"
```

## User Selection Syntax

| Syntax | Meaning |
|--------|---------|
| `A,C` or `AC` | Select sessions A and C |
| `A:git status` | Run custom command on session A |
| `B:pwd, C:git log` | Different commands per session |
| `all:continue` | Execute on all discovered sessions |
| `awaiting:continue` | Execute only on sessions awaiting input |

## Execution

After user confirms, execute via:

```bash
# Using tabs-exec
# NOTE: --execute requires the full session JSON from discovery phase, not a minimal stub.
# Claude should pass the full session data obtained from the discovery run above.
echo '{"selections": "B,C", "command": "continue", "sessions": [...session_data_from_discovery...]}' | "${CLAUDE_PLUGIN_ROOT}/commands/tabs-exec" --execute

# Direct tmux (for simple commands)
tmux send-keys -t "session:window" "command"
tmux send-keys -t "session:window" C-m   # Enter as a separate call, as tmux-automation requires
```

## Prompt Types

When discovering sessions, detect what state each Claude session is in:

| Type | Visual Indicator |
|------|------------------|
| `input` | Standalone `>` prompt - ready for input |
| `plan_approval` | "Would you like to proceed?" |
| `tool_permission` | `[Y/n]` or numbered options `[1] [2]` |
| `question` | Multi-choice with ❯ selector |
| `clarification` | Question ending with `?` |
| `working` | No prompt detected - Claude is active |

</workflow>

<output_contract>

## Session Table Format

Present discovered sessions as:

```
| # | Session | Purpose | Status |
|---|---------|---------|--------|
| A | main:3  | Feature dev | awaiting input |
| B | main:5  | Testing     | working |
| C | work:1  | Bug fix     | plan approval |
```

Then ask: "Which sessions would you like to interact with?"

**Related**:
- `agents/tmux-session-automation.md` (agent `ar:tmux-session-automation`) - Advanced session lifecycle automation
- `agents/cli-test-automation.md` (agent `ar:cli-test-automation`) - CLI testing automation patterns

**Implementation**: See `tabs-exec` script for discovery and execution logic.

</output_contract>

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.