Vibeleaderboard
Index / tool
Visit github.com
Category
Developer Tools
Rank
No. 1609Tools index

Previous survey · No. 1614 ·

Pricing
Open Source
Type
TOOL
Builder
tobi
GitHub
20 stars
Date

About

Multiplexer-style tool by Tobi (Shopify CEO) for managing parallel agent or terminal sessions.

What it does

Amux gives long-running commands named, persistent workspaces organized by project. It streams initial output, then supplies exact byte positions for later reads, avoiding gaps and duplicates. Commands can receive keystrokes, expose recent logs, stay visible in a live terminal view, or be removed individually.

Why it's ranked here

The strongest idea is precise continuation after a timeout, which suits agents that cannot wait indefinitely. Dedicated terminal state avoids interfering with a user's existing setup. The package also offers human monitoring and agent-facing tools. Its narrow environment assumptions and apparent test drift make the overall case promising but qualified.

What's good

Completion markers distinguish success from a specific exit code, while interactive prompt detection catches common password and confirmation requests. Project-based grouping keeps related processes together. Panel names are validated, timeouts are capped, terminal output is sanitized, and nesting guards reject commands that would create redundant terminal multiplexers.

Tradeoffs

Amux depends on Node, Bash, and tmux rather than providing a portable process backend. Project discovery only searches the current directory and two parents for Git metadata. Panel names allow only letters, numbers, hyphens, and underscores. Every follow operation has a five-minute ceiling, so very long jobs require repeated continuation.

How to use it well

Use Amux for local development servers, test suites, build watchers, log streams, and interactive processes that an agent revisits across turns. Give panels stable task-based names, follow timeout hints exactly, and use the live view when humans need context. It does not replace CI, deployment automation, or remote job orchestration.

Technical notes+

The package is an ESM TypeScript project. package.json exposes bin/amux.ts as the CLI and src/index.ts as the library entrypoint, while ext/index.ts integrates directly with pi. src/amux.ts uses a dedicated tmux socket, SHA-256-derived project tab names, sidecar mappings, byte-addressed log reads, async child processes, ANSI sanitation, sentinels, and a 300-second timeout cap. conf/amux/bashrc emits completion markers through PROMPT_COMMAND, and conf/amux/tmux.conf defines the isolated viewing interface. test/unit.test.ts matches the displayed async implementation more closely than test/integration.test.ts, which references synchronous behavior and identifiers absent from the displayed source, indicating likely test drift. test/stress/run-all.sh adds CLI stress coverage.

Observed

Primary language
TypeScript, with supporting Bash configuration and stress scripts
Packaging and install
ESM npm package installed globally from the GitHub repository URL
Interfaces
Command-line tool, exported library API, pi extension, and bundled pi skill
Runtime dependencies
No declared direct dependencies; three optional peer dependencies support pi integration
Process backend
Uses tmux with a dedicated socket and configuration separate from personal tmux
Test structure
Repository includes unit tests, integration tests, helpers, and a shell-based stress suite

Read from README.md, package.json, src/index.ts, src/amux.ts, bin/amux.ts, ext/index.ts, test/helpers.ts, test/unit.test.ts, test/integration.test.ts, test/echo.sh, conf/amux/bashrc, conf/amux/tmux.conf, skills/amux/SKILL.md, test/stress/09-dust.sh, test/stress/run-all.sh.

What it can do

  • Create multiple terminal sessions

    User commandsParallel terminal instances

  • Switch between active sessions

    Session selection commandsActive terminal session view

  • Manage agent processes in parallel

    Agent configuration and commandsMultiple running agent instances

  • Split terminal interface into panes

    Split commands and layout preferencesMulti-pane terminal interface

  • Detach and reattach to sessions

    Session management commandsPersistent session state

  • Monitor multiple processes simultaneously

    Running processes across sessionsReal-time process status and output

Tags

multiplexcliagentterminal

Tech Stack

Node.js

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.