Batch 22 — Remote Control Surfaces: Phones, Voice, Chat Bots, Terminal Multiplexers
Roster (10)
| slug | stars | distribution | cli_binary | local_ui | orchestration | multi_model | tier |
|---|---|---|---|---|---|---|---|
| im-codes | 100 | npm-package + docker | imcodes |
no (daemon + web) | parallel-fan-out | yes (any via proxy) | A |
| openquack | 28 | macOS-app (SwiftUI) | no | macOS menu-bar + popover | none | no (Whisper only) | A |
| onepilot | unknown | iOS-app + SaaS | no | iPhone (mobile) | none | yes (23+ providers) | C |
| cmux-manaflow | 19,779 | macOS-app (Swift/AppKit) | cmux |
desktop terminal app | none (via cmux claude-teams) |
no | A |
| cmux-coder | 1,782 | desktop-app (Electron) | mux |
Electron desktop | parallel-fan-out | yes | A |
| ccbot | 250 | python-package | ccbot |
no (Telegram bot) | none | no (OpenAI transcription only) | A |
| sidecar-marcus | 1,018 | npm-package | sidecar |
TUI (charmbracelet/bubbletea) | none | no | A |
| onui | 62 | browser-extension + npm | onui-mcp |
browser sidebar | none | no | A |
| mysti | 1,056 | vscode-extension | no | VS Code sidebar | parallel-fan-out | yes (12 agent CLIs) | A |
| ptah-orchestra | 26 | vscode-extension + electron + npm | ptah |
VS Code webview + Electron | hierarchical-multi-agent | yes (Claude/Copilot/Codex) | A |
The Two cmux Namesakes
Two completely unrelated projects share the name "cmux". This is the most important disambiguation in the batch.
manaflow-ai/cmux — Native macOS Terminal App
- What it is: A Ghostty-based macOS terminal emulator written in Swift/AppKit (19,779 stars). The name "cmux" comes from "command multiplexer" — it manages multiple terminal sessions in one window, like tmux but GPU-accelerated and native.
- Where the agent runs: On the developer's local machine, inside whichever agent CLI they launch inside cmux's terminal. cmux is a container — the agent (Claude Code, Codex, etc.) runs inside one of cmux's terminal tiles.
- Agent control surface: The terminal itself. cmux provides a
cmux claude-teamsorchestration command and 5 slash commands (/fix,/test,/spec,/review,/refactor) that inject pre-defined prompts into the active terminal session. - Access topology:
User keyboard → cmux terminal tile → agent CLI process running locally - No remote component: Everything runs locally. cmux is purely a local terminal multiplexer with agent-workflow conveniences.
- Key differentiator: libghostty GPU rendering, in-app scriptable browser (WebKit), notification rings (OSC 9/99/777 sequence support).
coder/cmux — "Mux" Electron Desktop Agent
- What it is: An Electron+React desktop application (1,782 stars) that implements its own full agent loop. Despite the GitHub repo being
coder/cmux, the product is branded "Mux" and the CLI binary is namedmux. - Where the agent runs: Inside the Mux Electron process itself. Mux has its own custom agent loop (distinct from claude-agent-sdk), not a wrapper around an external CLI.
- Agent control surface: The Mux desktop UI (Plan/Exec modes, diff viewer, PR workflow). The
muxCLI binary provides headless access. - Access topology:
User → Mux Electron app → Mux agent loop → git worktree OR SSH remote OR Coder workspace - Isolation options: git worktree per task (default), SSH remotes, or Coder cloud workspaces — agent writes code into an isolated working tree that can optionally be on a remote machine.
- Key differentiator:
.mux/skills/directory with deep-review skill (spawns 2–5 parallel sub-agents by dimension), attribution footer mandate on AI-generated PRs, opportunistic context compaction.
Access Topology Summary Table
| Dimension | cmux-manaflow | cmux-coder (Mux) |
|---|---|---|
| Agent process location | Local machine, inside terminal tile | Mux Electron app process (local) |
| Remote execution | No | Optional (SSH, Coder cloud) |
| Agent binary | User-chosen (Claude Code, Codex, etc.) | Mux's own agent loop |
| Control surface | Terminal + slash commands | Electron UI + mux CLI |
| Workspace isolation | None (shared fs) | git worktree per task |
| Stars | 19,779 | 1,782 |
| License | NOASSERTION | AGPL-3.0 |
Intra-Batch Patterns
Access topology is the defining variable in this batch. The 10 frameworks span every point in the local↔remote spectrum:
- Local-only, native: cmux-manaflow (terminal), openquack (menu-bar voice input), sidecar-marcus (TUI companion)
- Local process, remote reach: cmux-coder/Mux (Electron with SSH/Coder options), ptah-orchestra (VS Code/Electron with MCP server exposed outward)
- Chat-platform as control surface: CCBot (Telegram→tmux bridge), IM.codes (Telegram/Signal/Discord→remote daemon), OnePilot (Telegram/Discord/Slack channels for mobile-triggered agents)
- Browser as control surface: onui (browser extension + MCP server for annotation)
- IDE as control surface: mysti (VS Code orchestrating 12 agent CLIs), ptah-orchestra (VS Code with visual Canvas)
tmux as the execution substrate appears in three frameworks: ccbot (direct keystroke injection via libtmux), cmux-manaflow (terminal multiplexer philosophy), and IM.codes (SSH+tmux on the remote server). This makes tmux the most common execution substrate in the batch, not VS Code.
Voice as an input modality appears in two frameworks: openquack (on-device Whisper via WhisperKit for dictation) and ccbot (OpenAI Whisper transcription of Telegram voice messages). These are the only two voice-input tools in the entire Phase D corpus.
Messaging platforms as remote control is unique to this batch: three tools use Telegram/Discord/Slack/Signal as the primary human-agent interface, allowing an agent running on a server or desktop to be controlled from a phone with no dedicated app required. This is the "remote control surface" theme in its purest form.
Skill/persona richness scales with complexity: ccbot has zero skills (pure bridge), sidecar-marcus reads from 17 skills for its own dev, mysti ships 12 skills + 16 personas, ptah-orchestra ships 13 named agent personas across 4 categories. The more the tool manages agents directly, the richer its own agent persona system.
Most Interesting Find
Ptah's 50+ module-scoped CLAUDE.md files are the densest AI-native dogfood pattern in the entire Phase D catalog. Every one of the 37 libs and apps in the Nx monorepo has its own CLAUDE.md providing agent guidance scoped to that module. Combined with a .ptah/specs/ registry of hundreds of completed TASK entries and a skill-synthesis lib that learns from agent trajectories, Ptah is the only framework in the catalog that implements a full AI-native development lifecycle at monorepo scale — the tool uses itself to build itself, and the evidence is in the commit history.
IM.codes' three-tier daemon architecture is the most sophisticated remote control topology: npm agent on developer machine ↔ self-hosted server (Docker+PostgreSQL+pgvector) ↔ phone via Telegram/Signal/Discord/WhatsApp. The server tier handles multi-agent P2P discussions (agents message each other via imcodes send) and vector memory — a cloud-scale multi-agent substrate accessible from any chat app.
Tier C Items
OnePilot (spec-system/onepilot/): No public GitHub repository. Commercial iOS app with SaaS backend. Evidence gathered from website HTML only (onepilotapp.com). Key facts confirmed: SSH-based agent deployment wizard (OpenClaw/Hermes/Claude Code/Codex), "soul" personality designer, 23+ LLM providers, Telegram/Discord/Slack messaging channels, mobile-first interface. Files written: 00-summary.md + METRICS.yaml only.
Cross-References
- ccbot shares tmux-injection architecture with batch-21's live session monitors but controls the agent rather than observing it.
- mysti's Brainstorm Mode (5 strategies + heuristic convergence detection) is the most sophisticated ideation primitive in Phase D; compare with batch-13's PRD authoring tools.
- ptah-orchestra's MCP server (14 namespaces,
session_submittool) makes it the external-orchestration entry point closest to claude-flow (batch seed). External MCP orchestrators can delegate whole tasks to Ptah's Team Leader without bespoke integration. - cmux-manaflow's libghostty rendering places it in the same GPU-accelerated terminal tier as Ghostty itself; no other framework in the catalog uses libghostty directly.
- onui's Shadow DOM isolation for browser extension styling is a web-platform technique worth noting — it prevents host-page CSS bleed without iframes.