Satchel — Development skill for Claude Code
Launcher and window manager for terminal windows — juggle many Claude Code sessions across accounts, or any shell.
How to install Satchel
This entry records only its repository, not the path inside it, so there is no
exact command to give. Open pedreaspolsro/satchel and copy the folder into
~/.claude/skills/, or the file into ~/.claude/agents/.
What Satchel does
Launcher and window manager for terminal windows — juggle many Claude Code sessions across accounts, or any shell. Group by account, see live status, get pinged when one needs you, dock as a taskbar strip. Windows.
Alternatives in Development
- Tmux Claude Hatch — tmux plugin that runs Claude Code sessions in popups per project directory, with an fzf picker showing each se 381 ★
- Tmux Claude Session Manager — Run many Claude Code sessions across your projects, each in its own tmux session — then list them, see which a 380 ★
- Build.mjs 使用说明 — 这是 Claude Config Manager 的 Node.js 构建脚本,提供了比原生 shell 脚本更好的跨平台支持和更多功能 254 ★
README
Satchel
A launcher + window manager for terminal windows. Built for juggling many **Claude Code** sessions across several accounts, usable for any shell.
Satchel does **not** host terminals. Every session stays a normal terminal window (git-bash / mintty on Windows); Satchel launches them with the right environment, keeps them in one list grouped by tabs, shows what each one is doing, and lets you focus / tile / minimize them.

Sessions above are illustrative. Satchel groups your real terminals by account (e.g. personal vs. work), shows each one's live status, and flags the ones waiting on you.
How it works
- Profiles (
~/.satchel/config.json) = environment + folder + command + group. On first run Satchel detects your Claude config dirs (~/.claude,~/.claude-) and creates one profile per account (CLAUDE_CONFIG_DIRset accordingly) plus a plainShellprofile. - Launch spawns the terminal with that environment and remembers the process. Adopt picks up
terminal windows you opened yourself (anything in
adoptExecutables). - Status comes from the window title. Claude Code rewrites it:
✳ topicwhen idle,◐ ◓ ◑ ◒while working. A session that goes working → idle while you are elsewhere is flagged needs you (row highlight + tab badge + desktop notification) until you focus it. - Hooks (optional, precise): a Claude Code hook script reports Stop / Notification / UserPromptSubmit events, so permission prompts and finished tasks light up immediately.
Architecture: platform-independent core (`src/main/sessions.js`, config, hooks) + one **window backend** per OS (`src/main/backends/`) + **terminal adapters** (`src/main/terminals/`).
| Backend | Status |
|---|---|
win32 (koffi → user32, no native build) |
working |
linux (wmctrl + xdotool, X11 only) |
experimental, untested; status-onl |
Related Skills
Agent Race Control
A minimal terminal cockpit for Claude Code on native Windows: one window, one taskbar icon, every Claude Code
Fluxdock
Desktop widget that shows Claude Code, Codex CLI and Antigravity usage for every limit window your account has
Claude Loader
Unofficial loader, launcher and manager for Claude Desktop and Claude Code. Run up to 5 accounts and their age
Brow
Claude Code usage and rate limits in the MacBook notch. Track the 5-hour and weekly limits of multiple Claude
Piaz Switch
Switch between Claude Code and Codex accounts in one click, track each account's limits, and see token usage a
Equip Silo Provider
Add a provider (claude, codex, grok, gemini, …) to an already-onboarded account silo with farm equip, completi
Related Agents
Game Tester
QA tester for EOB1 ScummVM CHT fan translation. Drives scummvm headlessly in WSL Xvfb (no window appears on Wi
Calendar Agent
Builds a publishing calendar the creator can actually hit — cadence from the channel archetype, backwards-plan
Dx Engineer
Use for the verdict output surface (human line, --json, truncation notices), CLI ergonomics, error message qua