chela is a tiny control plane over a single tmux session. It schedules agents, dispatches a TODO list into pull requests, and streams the whole fleet on one live terminal wall. You walk away; the agents keep working.
# one tmux session whose windows are your agents tmux new-session -d -s chela -n researcher # schedule one, then run the daemon uv run chela schedule add researcher --every 1h --prompt "Run your cycle." uv run chela run
chela is for putting them to work and walking away — and watching them
however you already watch tmux: tmux attach, Mosh, or the optional web dashboard.
Poke an agent on an interval or cron — every 1h, 0 */8 * * *,
or once at a set time. chela types the prompt into its pane when it fires.
Point chela at a WORKFLOW.md. Each open - [ ] becomes a git
worktree, an agent that implements it, and an opened pull request.
A live grid of every agent's terminal — drag, lock, maximize — with a context-window bar on each tile and 5h / weekly rate-limit pills up top.
Discovery is tmux list-windows + pane_current_path — no
external state file, no daemon to coordinate with. tmux never lies about what's live.
Each window of your session is an agent; the window name is its display name. Schedules and messages target it by name.
Every task runs in its own worktree on branch <project>-<n>,
opens a PR, and auto-closes when you merge — many tasks in flight at once.
The dashboard binds loopback; put it behind a tailnet or SSH tunnel. Or skip the UI
entirely and tmux attach from a phone over Mosh.
Python ≥ 3.11, tmux, git, and the claude CLI.
The core is two small deps; the dashboard is an optional extra.
# core git clone https://github.com/Devail1/chelamux && cd chelamux uv sync uv run chela status # optional web dashboard + terminal wall uv sync --extra dashboard uv run chela dashboard