Open Dynamic Workflows CLI

A runtime for JavaScript workflows that hand work to dozens of Codex, Gemini, Qwen, Kimi and Claude Code agents.

  • 115 ★ on the repository
  • Last commit
  • MIT
CLI

Broad access

Why this level

  • Workflows launch dozens of agent processes that read and write project files and spend model quota and money.
  • The installer downloads a binary through `curl | sh` and writes into agent skill folders.
All reasons and checks

xz1220/open-dynamic-workflows

Install

Manual install

curl -fsSL https://raw.githubusercontent.com/xz1220/open-dynamic-workflows/main/scripts/install.sh | sh

One command from the README Install section installs the `odw` binary and the skill. The first variant there asks your agent to run the same command. A manual route without `curl | sh` exists.

Access and checks

How we review

Broad accessThe tool can change data, run commands or handle secrets.

  • Workflows launch dozens of agent processes that read and write project files and spend model quota and money.
  • The installer downloads a binary through `curl | sh` and writes into agent skill folders.

This is third-party code. Review the repository files before installing.

What it does

Open Dynamic Workflows (`odw`) runs JavaScript workflows whose plan is ordinary code built from `agent()`, `parallel()` and `pipeline()` calls. A workflow runs as a background process outside the host agent's context and only the final result returns to the chat. The same script runs on Codex, Claude Code, Gemini, Qwen, Kimi, Oh My Pi, Kilo Code, OpenCode, Cursor or a custom CLI agent, and different steps can use different ones. Each run is stored in a run directory, so `odw status`, `odw logs --follow`, `odw result`, `odw pause` and `odw stop` work. A `checkpoint()` halts the workflow until `odw approve` or `odw reject`. A browser dashboard draws the run as a graph. The skills `open-dynamic-workflows` and `ultra-mode` ship with it, and `examples/` holds templates for a tournament, cross-review and parallel processing.

Who it is for. Engineers whose task is too big for a single agent: reviewing a hundred files, migrating module by module, or pitting several solutions against each other.

Good fit when

  • The agent that wrote the code also reviews it and an adversarial check by another agent is wanted.
  • Dozens of independent subtasks should run in parallel under a shared process limit.
  • N approaches should compete and pairwise judging picks the winner.
  • A long run should be watched as a live graph and paused at a manual approval point.
  • One agent ran out of quota and the next step should go to another.

Not a fit when

  • The task fits a single request and a workflow would only add a management layer.
  • Model limits are tight and dozens of agent processes burn quota fast.
  • A ready cloud platform is wanted without installing a binary.

Example request

Write an `odw` workflow where Codex implements a function and Claude Code tries to refute it, then run it with a pause for approval.

Limitations

The README installer downloads a binary (about 35 MB gzipped, about 110 MB on disk) and places a skill in `~/.claude/skills/` or `~/.codex/skills/`; read the script before piping it to `sh`, while the installer itself verifies checksums. There is no npm package yet and version 0.5.0 is early. The agents themselves (`claude`, `codex` and others) install separately and each run spends their quota. Workflows ported from Claude Code's built-in Workflow tool need checking against the compatibility list.

How to disable. Delete the binary `~/.local/bin/odw` and the `open-dynamic-workflows` skill folder in `~/.claude/skills/` or `~/.codex/skills/`. Stop background runs with `odw stop`.

FAQ

How does `odw` differ from Claude Code's built-in Workflow tool?

A workflow is not tied to Claude Code: the same scripts run on Codex, Gemini, Qwen, Kimi and other agents. Runs are background jobs with logs, pausing and a browser dashboard.

Is Node.js required?

Not for the prebuilt binary, which embeds the runtime. Building from source needs Node 20 or newer.

How do I follow a run?

`odw logs --follow` streams the log, `odw status` reports state, and the browser dashboard draws the step graph with node logs.

How do I stop a workflow for approval?

Add `checkpoint()` to the script. The run halts and waits for `odw approve` or `odw reject`.

Do agents return structured output?

Yes. Outputs are validated against a JSON Schema and retried on mismatch, so pipeline steps hand data to each other instead of free text.

Discussion

No questions or reviews yet.

CLI tools

Orchestrator plugin for OpenCode and Codex CLI: multiple agents, hooks, built-in MCPs, ultrawork mode and hash-anchored edits

PluginBroad access70.9KRepository stars
Needs a VPN

The /codex-workflows skill: Claude Code writes a script, dozens of Codex agents run it, and the run shows on a map

SkillBroad access330Repository stars

An OpenCode plugin that runs a team of parallel agents with separate sessions, a shared task board and messaging

PluginExtended access259Repository stars

A planner for Claude Code, Codex and OpenCode: one goal becomes a task plan and independent tasks run in parallel

CLIExtended access210Repository stars

Agents, skills and templates for structured AI development in OpenCode, Codex and Claude Code: docs, plans, review, checkpoints

WorkflowExtended access61Repository stars

A terminal AI coding agent built on opencode: any model with your own keys, subagent swarms, goals and output compression.

CLIBroad access78Repository stars

README in short

A zero-dependency TypeScript runtime with the primitives `agent`, `parallel`, `pipeline`, `phase` and `budget`, adapters for nine agents, a live dashboard and an examples folder of orchestration patterns.

README badge

Report a problem