--- title: process description: Cross-platform child-process runtime. Required on Windows. ---
Slot: runtime · Name: process
Spawns agents as plain child processes — no tmux involved. Use this on Windows (where tmux isn't available) and in any environment where you'd rather not depend on tmux. ## Use ```yaml title="agent-orchestrator.yaml" runtime: process ``` No plugin-level config. ## How it works - AO spawns the agent via Node's `child_process.spawn` with `shell: true`. - Stdout + stderr are captured in a rolling 1000-line buffer. - The dashboard reads from that buffer over the same WebSocket the tmux runtime uses — you won't notice a difference in the UI. - `isProcessRunning` uses a PID-based signal-0 check. ## What you lose vs tmux - **No tmux attach.** `ao session attach` doesn't work. Use the dashboard terminal instead. - **No reconnecting to the agent's TTY.** If you `ao stop` the orchestrator, the child process goes with it. The agent's own session-resume features (Claude `--resume`, Codex `resume`, etc.) still work — that's a different layer. ## When to pick it - **Windows** — this is the only runtime that works. - **Docker / CI-like environments** — fewer moving parts, no tmux install. - **You never attach interactively** — the dashboard terminal covers all your attach needs anyway.