Agent Session Manager
Organize, monitor, and resume multiple AI coding CLI sessions from one terminal interface.
- Source repo
- izll/agent-session-manager
- Stars
- ★ 13
- Last updated
- 19d ago
- License
- MIT
- Primary language
- Go
- FA score
- 69/100 · Some gaps
At a glance
- Works with
- Universal · cross-platformCodex · Claude Code
- You'll need
- Typical use
- A developer running Claude Code, Codex, and Gemini CLI concurrently can monitor each task's busy, waiting, idle, or stopped state from one TUI.
- Main limitation
- Core session execution depends on tmux; Windows users need psmux or must point
ASMGR_TMUXat tmux under WSL or Cygwin. - Source review
- 69/100 · Some gaps
What does this agent do, and when should you use it?
Agent Session Manager (ASMGR) is a local terminal UI built with Go and Bubble Tea that controls AI coding assistants through tmux, or psmux on Windows. It directly supports Claude Code, Gemini CLI, Aider, OpenAI Codex, Amazon Q, and OpenCode, while also accepting custom CLI commands. Sessions can be isolated by project, arranged into groups, run in parallel from the same directory, and expanded with multiple agent or shell tabs. The interface provides ANSI-aware live output, per-tab activity detection, prompt delivery, conversation resumption, history search, and Git diff inspection. Its deployment boundary is the user's terminal, local repositories, filesystem configuration, and terminal multiplexer; it is not a hosted agent service.
Running asmgr opens a project selector and loads persisted state from projects.json, the default sessions.json, or project-specific projects/<project>/sessions.json files under ~/.config/agent-session-manager/. Components under session/ handle process lifecycles, PTY and tmux integration, storage, project records, status detection, and discovery of agent conversation histories. The ui/ package uses Bubble Tea, Bubbles, and Lip Gloss to render the session list, previews, overlays, split view, help, and color picker. After the user chooses Claude, Gemini, Aider, Codex, Amazon Q, OpenCode, or a custom command, ASMGR launches and controls that process in a tmux/psmux session or tab, captures its output for live preview, and can send prompts to it without attaching. It discovers resumable conversations for Claude, Gemini, Codex, OpenCode, and Amazon Q, while global search reads supported Claude, Aider, OpenCode, and shell history stores. In Git working directories, it produces either a Session diff measured from HEAD at session start or a Full diff containing all uncommitted changes, and it persists session paths, agent types, resume IDs, colors, groups, notes, and auto-yes settings.
- A developer running Claude Code, Codex, and Gemini CLI concurrently can monitor each task's busy, waiting, idle, or stopped state from one TUI.
- An engineer handling several tasks in one repository can launch named parallel instances of the same agent without merging their conversation contexts.
- A solo developer maintaining many repositories can separate sessions by project and organize long-lived work with collapsible groups, favorites, and notes.
- A developer reviewing agent output can switch from the live preview to Session or Full Git diffs without leaving the manager.
- A Claude Code user exploring risky or competing implementations can fork one conversation into a new tab or a separate session.
- A terminal-heavy user returning to old work can search supported agent and shell histories and resume compatible conversations.
How do you install or deploy this agent?
The runtime requires tmux on Linux/macOS or the tmux-compatible psmux on Windows. Install at least one supported AI CLI, unless the session will run a custom command. On macOS or Linux, install with Homebrew:
brew tap izll/tap
brew install asmgrLinux users can instead run the quick installer:
curl -fsSL https://raw.githubusercontent.com/izll/agent-session-manager/main/install.sh | bashBuilding from source requires Go 1.24 or newer:
git clone https://github.com/izll/agent-session-manager.git
cd agent-session-manager
go build -o asmgr .
cp asmgr ~/.local/bin/On Windows, download asmgr_<version>_windows_amd64_setup.exe from Releases. The per-user installer adds asmgr to PATH and can offer to install psmux where winget is available; open a new terminal after installation.
How do you use this agent?
First ensure tmux or psmux and the chosen AI CLI are available on PATH, then start the application:
asmgrSelect or create a project, or continue without one. In the session list, press n to create a session, Enter to start and attach, or s to start without attaching; a offers replacement or a named parallel instance. Use t to add an agent or ordinary terminal tab, p to send a prompt to a running process, and r to browse resumable conversations for supported agents. Press D for the diff view, F to choose Session or Full diff, and Ctrl+F for global history search. Once attached, Ctrl+q detaches quickly; F1 or ? opens the complete in-application help.
What are this agent's strengths and limitations?
- One interface directly manages six named AI coding CLIs plus arbitrary custom commands, avoiding a single-provider session model.
- Parallel instances in the same directory, multi-tab sessions, project isolation, groups, favorites, and persistent notes support large ongoing workloads.
- ANSI-aware live previews, per-tab activity states, prompt sending, and conversation resumption centralize observation and control.
- Session and Full Git diffs, split-screen comparison, and cross-history search add review and retrieval workflows around agent execution.
- Distribution options include Homebrew, a Windows installer, a Linux script, deb and rpm packages, and source builds.
- Core session execution depends on tmux; Windows users need psmux or must point
ASMGR_TMUXat tmux under WSL or Cygwin. - Each AI CLI must still be installed and configured separately, including its credentials, network access, and provider charges; ASMGR supplies no model service.
- Feature coverage differs by agent: Aider and custom commands cannot resume conversations, and conversation forking is Claude-only.
- Global history search covers Claude, Aider, OpenCode, and terminal history only, and it is restricted to ASMGR project directories.
- The terminal and desktop editions keep separate session stores, so adopting both does not provide a shared session list.
How does this agent compare with similar options?
The project explicitly says it was inspired by Claude Squad. Unlike a session manager centered on one assistant, ASMGR documents direct support for Claude Code, Gemini CLI, Aider, OpenAI Codex, Amazon Q, OpenCode, and custom commands. The separate ASMGR Desktop repository is the named graphical alternative: it uses Wails and Svelte and adds real terminals, a diff viewer, a file browser, and mobile push notifications, but its sessions are stored separately from the TUI edition.
Key facts side by side with the most closely related agents.
| Agent | Source review | Stars | Updated | Language | Full support on |
|---|---|---|---|---|---|
| Agent Session Manager This agent | 69 · Some gaps | ★ 13 | 19d ago | Go | Codex · Claude Code |
| Agent Deck | 76 · Good | ★ 948 | 3d ago | Go | Codex · Claude Code |
| Agent Manager | 64 · Some gaps | ★ 496 | today | Go | Codex · Claude Code |
| dmux | 69 · Some gaps | ★ 1.8k | 1mo ago | HTML | Codex · Claude Code · OpenAI API |
How does FollowAgents rate this agent?
Why each dimension lost points
The README discloses the principal local configuration and history paths, tmux sessions, arbitrary custom commands, self-update behavior, and deletion effects. Updates, stops, and most deletions include confirmation, while the Windows installer is described as per-user, supporting ordinary least-privilege and confirmation handling. Deductions apply because quick tab close has no confirmation, YOLO mode weakens downstream agent safeguards, arbitrary commands may be launched, and potentially sensitive Claude, Aider, OpenCode, and shell histories are read without an access-control, redaction, retention, or privacy model. Dependencies are versioned, but the supplied evidence lacks go.sum, vulnerability scanning, an update policy, or release signing, and the workflow selects the latest GoReleaser. Forking and diff views offer limited recovery assistance, but there is no comprehensive undo for deletion, self-update, or agent file changes. Licensing, inspiration, and related tools are attributed, although publisher identity and maintenance ownership are not independently verified.
The README, go.mod, and release workflow are broadly consistent about Go 1.24, cross-platform builds, and principal dependencies, and the tmux or psmux and agent-CLI prerequisites are explicit. A deduction applies for visible shortcut inconsistencies: t is described both as creating a tab and toggling status lines, while another section assigns status lines to o; several capabilities are supported only by README assertions. Runtime availability depends on external package managers, GitHub releases, agent CLIs, and a multiplexer, although useful platform alternatives are documented. Failure-message evidence is thin: the single-instance PID error, missing-psmux explanation, and a few installation cautions are concrete, but systematic diagnostics, retries, and troubleshooting guidance are absent.
The intended audience and scenarios are covered thoroughly through workspaces, parallel agents, comparison, resume, history search, and conversation forks. Six named agent families, Amazon Q, and arbitrary custom commands are supported, with concrete Linux, macOS, and native Windows accommodation, earning strong scenario and environment scores. Boundaries are partly explicit: Aider and custom commands cannot resume, forking is Claude-only, and history search is restricted to ASMGR project directories. Deductions apply because there is no consolidated compatibility matrix or complete security boundary. Keyboard triggers, modal contexts, and confirmations are detailed, but shortcut conflicts and broad YOLO/custom-command entry points reduce trigger precision.
The README is well organized around features, installation, updating, operation, configuration, and architecture, with substantial navigation and examples. Homebrew, Windows, script, system-package, and source builds are documented, and the complete MIT license matches the metadata. Naming is mostly stable, but Agent Session Manager, ASMGR, and the separate desktop product coexist, while shortcut labels conflict. Numerous walkthroughs partly substitute for examples and FAQ, but there is no dedicated FAQ or troubleshooting section. Limitations are disclosed only across scattered sections. Versions and a release workflow are visible, but no changelog, compatibility policy, or explicit semantic-versioning commitment is supplied. Maintenance responsibility can only be inferred from the repository namespace, copyright line, and automation; no maintainer roster, support policy, or security-reporting path is shown.
The TUI combines multi-agent sessions, live previews, tabs, groups, notes, search, diffs, and forks into directly actionable output, with extensive shortcuts and state indicators. This provides strong usability and clear marginal value over manually coordinating many terminals. The cost-benefit score is reduced because users must install and maintain a multiplexer, at least one agent CLI, and the relevant account environment; self-updating and multiple history parsers add operational and privacy costs. No measurements of performance, resource use, or scaling limits are provided.
Core claims map to concrete README features, configuration paths, and named architecture files. go.mod corroborates the language and TUI dependencies, while the release workflow corroborates cross-platform release work and checksum generation, providing moderate traceability and cross-source support. Deductions apply because the supplied evidence omits implementation files, tests, go.sum, release configuration, and change history, leaving many detailed behaviors supported only by the README. The documentation generally distinguishes functions, prerequisites, and limitations, but promotional assertions such as “powerful” and “improved reliability” have no metrics or supporting evidence, and inferred statements are not explicitly labeled.
- Global history search reads agent conversations and shell history; before enabling it for sensitive projects, review local permissions, retention behavior, and preview-exposure risks.
- Custom commands and auto-confirmation or YOLO mode can expand downstream agent authority; use them only in trusted directories after reviewing each agent's permission settings.
- Quick tab close has no confirmation, and there is no comprehensive undo for deletion or agent file changes; protect important work with version control and independent backups.
- The convenience installer executes content fetched from the main branch, while releases use the latest GoReleaser action setting; high-assurance environments should pin versions, verify checksums, and build from source.
- The README conflicts about the t key and status-line toggle; confirm the active keymap in the built-in help for the installed version.
- This assessment covers only the supplied static files; the application was not executed, implementation was not inspected, release artifacts were not verified, and dependencies were not vulnerability-audited.
FAQ
Does ASMGR include or host an AI model?
Can it run on Windows?
ASMGR_TMUX can point to an absolute tmux path under WSL or Cygwin.