Orchestrator Lanes
VKirill/claude-lane-stack
Terminal Lane Stack Claude Code dev-orchestrator only (run-controller harness: score, DAG, run-supervisor, L0/L1/L2, wt-merge-main).
Write and run dynamic workflows: short JavaScript scripts in Claude Code's workflow dialect, run with the odw CLI outside the host agent's context, fanning subtasks out to coding-agent CLIs (Codex…
$ npx skills add xz1220/open-dynamic-workflows --skill open-dynamic-workflows -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install xz1220/open-dynamic-workflows open-dynamic-workflows --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/xz1220/open-dynamic-workflows.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/open-dynamic-workflows .claude/skills/open-dynamic-workflows && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "open-dynamic-workflows" agent skill from https://github.com/xz1220/open-dynamic-workflows/tree/main/skills/open-dynamic-workflows into .claude/skills/open-dynamic-workflows/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "open-dynamic-workflows", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/xz1220/open-dynamic-workflows/tree/main/skills/open-dynamic-workflowsType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add xz1220/open-dynamic-workflows --skill open-dynamic-workflows -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install xz1220/open-dynamic-workflows open-dynamic-workflows --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/xz1220/open-dynamic-workflows.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/open-dynamic-workflows .agents/skills/open-dynamic-workflows && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "open-dynamic-workflows" agent skill from https://github.com/xz1220/open-dynamic-workflows/tree/main/skills/open-dynamic-workflows into .agents/skills/open-dynamic-workflows/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "open-dynamic-workflows", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add xz1220/open-dynamic-workflows --skill open-dynamic-workflows -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install xz1220/open-dynamic-workflows open-dynamic-workflows --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/xz1220/open-dynamic-workflows.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/open-dynamic-workflows .cursor/skills/open-dynamic-workflows && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "open-dynamic-workflows" agent skill from https://github.com/xz1220/open-dynamic-workflows/tree/main/skills/open-dynamic-workflows into .cursor/skills/open-dynamic-workflows/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "open-dynamic-workflows", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/xz1220/open-dynamic-workflows.git --path skills/open-dynamic-workflows--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add xz1220/open-dynamic-workflows --skill open-dynamic-workflows -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install xz1220/open-dynamic-workflows open-dynamic-workflows --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/xz1220/open-dynamic-workflows.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/open-dynamic-workflows .gemini/skills/open-dynamic-workflows && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "open-dynamic-workflows" agent skill from https://github.com/xz1220/open-dynamic-workflows/tree/main/skills/open-dynamic-workflows into .gemini/skills/open-dynamic-workflows/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "open-dynamic-workflows", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install xz1220/open-dynamic-workflows open-dynamic-workflowsInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add xz1220/open-dynamic-workflows --skill open-dynamic-workflows -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/xz1220/open-dynamic-workflows.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/open-dynamic-workflows .github/skills/open-dynamic-workflows && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "open-dynamic-workflows" agent skill from https://github.com/xz1220/open-dynamic-workflows/tree/main/skills/open-dynamic-workflows into .github/skills/open-dynamic-workflows/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "open-dynamic-workflows", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add xz1220/open-dynamic-workflows --skill open-dynamic-workflows -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install xz1220/open-dynamic-workflows open-dynamic-workflows --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/xz1220/open-dynamic-workflows.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/open-dynamic-workflows .opencode/skills/open-dynamic-workflows && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "open-dynamic-workflows" agent skill from https://github.com/xz1220/open-dynamic-workflows/tree/main/skills/open-dynamic-workflows into .opencode/skills/open-dynamic-workflows/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "open-dynamic-workflows", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
open-dynamic-workflowsWrite and run dynamic workflows: short JavaScript scripts in Claude Code's workflow dialect, run with the odw CLI outside the host agent's context, fanning subtasks out to coding-agent CLIs (Codex…
Open Dynamic Workflows is an agent skill from xz1220/open-dynamic-workflows. Write and run dynamic workflows: short JavaScript scripts in Claude Code's workflow dialect, run with the odw CLI outside the host agent's context, fanning subtasks out to coding-agent CLIs (Codex, Claude Code, Gemini, Qwen, Kimi, or your own) in a background process and handing back only the final result. Use this skill when a task is bigger than a single call — parallel draft fan-out, multi-stage review pipelines, adversarial verification of findings, or discovery loops that run until nothing new turns up — or…
Its SKILL.md is about 2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files, including reference files (for example `references/adapters.md` and `references/primitives.md`).
It sits in Agent Workflows, covering Multi-agent orchestration and Task breakdown. It works with JavaScript, Kimi and Qwen. The repository describes itself as: Open Dynamic Workflows: TypeScript CLI runtime for Claude Code-style dynamic workflows across Codex, Claude Code, Gemini, Qwen, Kimi, and custom coding-agent CLIs. The licence is MIT.
Read from SKILL.md and the folder at commit 16f57ee. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are bash and javascript).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Open Dynamic Workflows loads about 2k tokens when it runs, and up to ~5.9k if it reads all its reference files. Until then it costs about 161 tokens; SKILL.md has 904 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from xz1220/open-dynamic-workflows at commit 16f57ee, republished under its MIT licence (© xz1220). 904 words, ~2,026 tokens.
.claude/skills/open-dynamic-workflows/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.A dynamic workflow is a short JavaScript script: the orchestration plan is
ordinary code, executed by odw in a detached background process, dispatching
each subtask to a real coding-agent CLI process. Intermediate output never
enters your context; all that comes back is the script's final return value.
The flow is always three steps: write the script → odw run → inspect the
result, then act. Don't use this for work that fits in a single call — just
do it directly.
export const meta = {…} — a pure literal (no
variables, function calls, or template interpolation). meta.name and
meta.description are required; whenToUse, phases, and model are
optional.await directly; the
top-level return value is the workflow's result.import / export other than export const meta is rejected by the
loader.if, dedup) lives in the script. The
primitives only dispatch and wait; what to do with results is the
script's decision.// fan-out-reduce.js
export const meta = {
name: 'fan-out-reduce',
description: 'Draft in parallel, then synthesize.',
phases: [{ title: 'Draft' }, { title: 'Synthesize' }],
}
const question = (args && args.question) || 'Design a cache.'
phase('Draft')
const drafts = await parallel(
[1, 2, 3].map((i) => () => agent(`Draft #${i}: ${question}`, { phase: 'Draft' })),
)
phase('Synthesize')
return await agent(
'Synthesize the best answer from:\n' + drafts.filter(Boolean).join('\n---\n'),
{ phase: 'Synthesize' },
)Input passed with --args is injected as the global args (parsed JSON, or a
raw string — input that looks like JSON but fails to parse is rejected
outright, never silently passed through as a string).
| Primitive | What it does |
|---|---|
agent(prompt, opts?) | Run one coding agent on a subtask; returns its reply text, or a validated object when opts.schema is set. The only verb that does real work. |
parallel(thunks) | Run zero-arg thunks concurrently and wait for all (barrier). Order preserved; a failed slot is null. |
pipeline(items, ...stages) | Stream each item through the stages independently (no barrier). Each stage receives (prev, item, index). |
phase(title) / log(msg) | Label the following work for progress / emit one progress line. |
args | The workflow input (injected). |
budget | { total, spent(), remaining() } — scale depth to a token target. |
workflow(ref, args?) | Run another workflow inline (one level deep). ref is a managed-directory name or { scriptPath }; the child shares this run's concurrency cap, agent counter, and budget. |
validate(source) | Parse and compile-check trusted source without running its workflow body; metadata is evaluated. Returns { ok, meta?, errors, warnings }. ODW extension — not part of Claude Code's dialect. |
opts for agent: { adapter?, schema?, label?, phase?, model?, agentType?, isolation? }.
adapter picks the CLI; schema is a raw JSON Schema object (an option, not
a global); agentType is a persona injected into the prompt — not an
adapter name.
Rule of thumb: use parallel when the next step needs the whole batch
at once (dedup, tally, synthesis); default to pipeline for multi-stage work.
Before writing complex compositions — nested workflows, schema retries,
budget-scaled depth — read
references/primitives.md.
odw run wf.js --wait --args '{"question": "Design a cache."}' # block and print the resultFor long runs, fire-and-poll instead of blocking yourself:
RUN=$(odw run wf.js) # prints a run id and returns immediately
odw status $RUN # state + agent count
odw logs $RUN --follow # stream progress events
odw result $RUN # print the final value when done
odw pause $RUN / resume $RUN / stop $RUN
odw list # all runsBoth patterns above behave exactly like this for you: your shell is not a
terminal, so odw run detaches and prints the run id. Only a bare invocation
in a human's interactive terminal attaches a live progress view instead
(Ctrl-C there detaches; the run keeps going; odw attach <run_id> re-attaches).
Force either way with -d/--detach or --fg, or ODW_DETACH=1.
Saved workflows run by name (odw run <name>); lookup order:
.odw/workflows, .claude/workflows, ~/.odw/workflows,
~/.claude/workflows.
Codex, Claude Code, Gemini, Qwen, and Kimi work out of the box with no
configuration. To change the default CLI, tune flags, or plug in a custom CLI,
read references/adapters.md and write an
odw.config.json (at the project root or ~/.config/odw/config.json, or pass
--config).
If a run fails with AdapterNotFound (several agent CLIs installed, no
default picked): run odw init --check to see which CLIs are installed — in
your non-interactive shell it only reports, never prompts. Then ask your
user which CLI to default to and persist their answer with
odw init --adapter <name>. Do not pick for them silently; the default decides
which vendor's CLI (and whose quota/permissions) every bare agent() call uses.
--source,
default the current directory) — the same semantics as Claude Code's own
Workflow tool. For isolation, ask per agent with isolation: "worktree": the
agent gets a throwaway git worktree (needs the source to be a git repo
with at least one commit; the agent sees HEAD, not uncommitted edits).
The temporary worktree is removed afterward and changes are not merged.
agent() returns the reply, not a diff; include required deliverables in the
reply or persist them explicitly before cleanup.min(16, cpus - 2)) and total
dispatches per run have a hard guard; use odw pause / odw stop when a
run exceeds expectations.return value first, then decide the next step.| Mistake | Correction |
|---|---|
| Importing primitives or other modules in the script | Primitives are injected globals; any extra top-level import/export is rejected by the loader. |
Variables, spreads, or function calls inside meta | meta must be a pure literal. |
Treating all failures in parallel/pipeline alike | Recoverable failures become null; stop, budget and dispatch-limit errors abort. Retry missing results or fail when every item is required; filter only when partial output is acceptable. |
| Branching on which agent finished first | Breaks reproducibility; keep reductions order-independent. |
Using validate() and expecting the script to run on Claude Code | validate is an ODW extension and runs on odw only. |
© xz1220, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 2 other files (references) in skills/open-dynamic-workflows of xz1220/open-dynamic-workflows.
Open the folder on GitHubat commit 16f57ee
Open Dynamic Workflows next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Open Dynamic Workflows this skillxz1220/open-dynamic-workflows | 104 | — | ~2k | Automated safety check: Pass | MIT | |
| Orchestrator LanesVKirill/claude-lane-stack | 122 | — | ~4.6k | Automated safety check: Notes | MIT | |
| LLM Council on Fireworks AIdair-ai/dair-academy-plugins | 614 | — | ~5k | Automated safety check: Notes | MIT | |
| Kimi Code DelegationCherryHQ/cherry-studio | 52k | 1 repos | ~504 | Automated safety check: Pass | AGPL-3.0 | |
| MemPalace Task HandoffMemPalace/mempalace | 59k | — | ~1.9k | Automated safety check: Pass | MIT | |
| agtx One-Shot Project Runnerfynnfluegge/agtx | 1.7k | — | ~3.8k | Automated safety check: Pass | Apache-2.0 |
VKirill/claude-lane-stack
Terminal Lane Stack Claude Code dev-orchestrator only (run-controller harness: score, DAG, run-supervisor, L0/L1/L2, wt-merge-main).
dair-ai/dair-academy-plugins
Has several open-weight models answer a question, rank each other's anonymized answers, then lets a chairman model write the final response through Fireworks AI.
CherryHQ/cherry-studio
Delegates one bounded repository task to Kimi Code in non-interactive prompt mode and reads back the final result from its JSON event stream.
MemPalace/mempalace
Creates, hands off, claims, executes and closes agent tasks through the MemPalace logstream, with approval of the exact task before it is recorded.
fynnfluegge/agtx
Runs a whole project unattended on an agtx kanban board, decomposing the goal, starting tasks, unblocking workers and merging each result.
fynnfluegge/agtx
Breaks a conversation's results into feature-level tasks and pushes them to the agtx kanban board, where each task gets its own worktree and agent session.
xz1220/open-dynamic-workflows
Execute explicitly authorized Ultracode / Ultra Mode requests: optimize for exhaustive, correct answers within the user's stated scope by using any available independent-work mechanism (ODW…
xz1220/open-dynamic-workflows
编写并运行 dynamic workflow:用 Claude Code 的 workflow 方言写一段简短的 JavaScript 脚本,再用 odw CLI 在宿主 agent 的上下文之外,把子任务扇出给 coding-agent CLI (Codex、Claude Code、Gemini、Qwen、Kimi 或自定义),后台跑完后只取回最终结果。
xz1220/open-dynamic-workflows
执行被显式授权的 Ultracode / Ultra Mode 请求:在用户给定范围内,把优化目标设为尽可能 详尽和正确,使用当前环境提供的任何独立工作机制(ODW workflow、子智能体、派发 worker、 并行工具任务)进行覆盖、验证和综合;只有完全没有这类机制时才使用串行多趟退化方案。
Works with
Categories
Write and run dynamic workflows: short JavaScript scripts in Claude Code's workflow dialect, run with the odw CLI outside the host agent's context, fanning subtasks out to coding-agent CLIs (Codex…. Open Dynamic Workflows is an agent skill from xz1220/open-dynamic-workflows. Write and run dynamic workflows: short JavaScript scripts in Claude Code's workflow dialect, run with the odw CLI outside the host agent's context, fanning subtasks out to coding-agent CLIs (Codex, Claude Code, Gemini, Qwen, Kimi, or your own) in a background process and handing back only the final result.
Open Dynamic Workflows fits situations like: A task is bigger than a single call — parallel draft fan-out; multi-stage review pipelines; adversarial verification of findings; discovery loops that run until nothing new turns up —.
Run `npx skills add xz1220/open-dynamic-workflows --skill open-dynamic-workflows -a claude-code`. Or copy the skill folder (skills/open-dynamic-workflows in xz1220/open-dynamic-workflows) into .claude/skills/open-dynamic-workflows in your project. Claude Code loads it when a task matches its description.
Run `npx skills add xz1220/open-dynamic-workflows --skill open-dynamic-workflows -a codex`. Or copy the skill folder (skills/open-dynamic-workflows in xz1220/open-dynamic-workflows) into .agents/skills/open-dynamic-workflows in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add xz1220/open-dynamic-workflows --skill open-dynamic-workflows -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/open-dynamic-workflows, .gemini/skills/open-dynamic-workflows, .github/skills/open-dynamic-workflows and .opencode/skills/open-dynamic-workflows in your project.
SKILL.md names no scripts, command-line tools or credentials: Open Dynamic Workflows is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Open Dynamic Workflows is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 2k tokens (SKILL.md is roughly 8.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 3.9k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Open Dynamic Workflows: Orchestrator Lanes (VKirill/claude-lane-stack, 122 stars), LLM Council on Fireworks AI (dair-ai/dair-academy-plugins, 614 stars), Kimi Code Delegation (CherryHQ/cherry-studio, 52k stars) and MemPalace Task Handoff (MemPalace/mempalace, 59k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
xz1220 (a GitHub user) maintains it in xz1220/open-dynamic-workflows, which has 104 GitHub stars. The repository holds 4 skills in this directory. The repository was last updated on September 7, 2026.
Source: xz1220/open-dynamic-workflows on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.