§01 — comind / dock Apache-2.0 · Rust

comind-dock · cdock

Many agents.
One terminal.

A terminal-native runtime and multiplexer for AI coding agents. Each agent lives in its own persistent pane; the runtime detects who is working, blocked, or done, and surfaces the ones that need you. Detach and reattach at will — agents keep running.

◆ Fig. 1 — cdock session: one space, two agents, the blocked one surfaced to the top.

§02 — Core ideas four commitments

idea / A

Server-owned sessions

A background server owns every terminal and process. Clients are thin and disposable: close your terminal, reattach later, nothing dies.

idea / B

Agents are first-class

The runtime classifies each agent pane as working / blocked / done / idle and rolls that state up to tabs and workspaces — a glance at the sidebar tells you where you’re needed.

idea / C

Automation-friendly by design

The entire UI surface is also a CLI and a JSON socket API. Agents running inside panes can spawn siblings, read their output, and wait on their state.

idea / D

Mouse-first TUI

Click, drag, right-click menus, scroll — everything the keyboard can do, the mouse can too. Prefix-key model with a fully configurable keymap.

§03 — Roadmap phase 1 shipped · 5 to go
01 Core multiplexer shipped
02 Server/client split & persistence next
03 Agent awareness planned
04 Automation surface planned
05 Ecosystem planned
06 Distribution & reach planned

◆ Each phase ships something usable; later phases never require rewriting earlier ones. Full plan in docs/ROADMAP.md.

§04 — Get it end of sheet

Build it,
run it today.

Phase 1 is a working single-process multiplexer: PTY panes with full VT emulation, split trees, prefix keymap, mouse support, TOML config. Rust, Apache-2.0.

# build and run

$ cargo build --release

$ ./target/release/cdock