DuoX by AbteeX AI Labs

Claude · Codex · Ollama · OpenClaw
one terminal, one transcript.

DuoX is a drop-in CLI alternative to Claude Code and Codex CLI that runs them together — plus Ollama (local) and OpenClaw (inter-agent channels) — under a single supervisor loop with a shared transcript.

pip install duox MIT Python ≥ 3.10 Linux · macOS · Windows
$ pip install duox ▶ Live demo GitHub PyPI

Four peers, one loop

claude
Anthropic Claude Code CLI — planning & validation.
codex
OpenAI Codex CLI — execution & heavy edits.
ollama
Local fallback — runs offline, rate-limit safety net.
openclaw
Inter-agent channel — thinking-budget + swarm mode.
user promptsupervisor ──▶ JSON decision {action, to, instructions} │ ├── delegate ─▶ executor peer(s) ─▶ output │ │ │ └── (parallel) ─▶ merge ├── execute_self ├── validate └── done ─▶ final answer

What you get

Shared transcript

Every peer sees every message. No more copy-pasting between terminals — one scrolling interface for the whole swarm.

Cross-validation

The supervisor checks every delegated step before moving on. Catch wrong edits before they compound.

Parallel swarms

Fan the same task across peers and let the supervisor merge results — or run independent jobs in parallel.

Credit fallback

429 / rate-limit / out-of-credits auto-fails over to another peer. Local Ollama is the last-resort net.

@

@file mentions

Inline file, directory, and line-range excerpts in any prompt. @src/main.py:40-80 just works.

Headless mode

duox -p gives you plain-text or JSON output — drop it into CI, git hooks, or scripts.

MCP pass-through

Configure [mcp.servers.*] once; DuoX forwards them to Claude Code automatically.

Skills & hooks

Markdown prompts in ~/.duo/skills/ auto-inject by keyword. Pre/post hooks run your tests and linters.

HTTP API

duox serve exposes goals and sessions over JSON for remote control and automation.

Quick start

Interactive
# install + verify peers
$ pip install duox
$ duox init
$ duox doctor

# start the loop
$ duox
> refactor the auth module
> @src/api.py:1-60 add tests for the error paths
> /peers  /cost  /compact  /remember
Headless / scripting
# plain text out
$ duox -p "summarise the last 10 commits"

# JSON envelope with per-peer stats
$ duox -p "audit this PR" --output-format json

# pipe stdin
$ echo "review my changes" | duox -p

# specific peers + supervisor
$ duox --peers claude,codex,ollama \
       --supervisor claude --parallel

Try it live

A Gradio demo of the supervisor/executor loop, running on a Hugging Face-hosted model instead of real peer CLIs. Install duox locally for the real thing.