Agent skill

Orchestration Graph Runner

by Yeachan-Heo in Yeachan-Heo/oh-my-claudecode

Runs deterministic DAG pipelines from a JSON descriptor with journal-based crash recovery, so an interrupted run resumes without repeating finished nodes.

MITAuto-check passedAgent Workflows

Install Orchestration Graph Runner

skills CLI
$ npx skills add Yeachan-Heo/oh-my-claudecode --skill graph -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Yeachan-Heo/oh-my-claudecode graph --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/Yeachan-Heo/oh-my-claudecode.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/graph .claude/skills/graph && rm -rf skills-src

Use ~/.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/

Facts

Skill name
graph
GitHub stars
40k
Token cost
~1.3k tokens
SKILL.md length
615 words
Files
1
Skills in repo
47
Repo updated
First seen
Licence
MIT

At a glance

Runs deterministic DAG pipelines from a JSON descriptor with journal-based crash recovery, so an interrupted run resumes without repeating finished nodes.

  • Works in 5 steps: Descriptor given -> go to step 3. → Pipeline described -> author the… → Approval nodes: if the descriptor… → …
  • Running a repeatable multi-step pipeline with explicit dependencies
  • SKILL.md covers Usage, When To Use, Workflow and Descriptor Schema (minimal), plus 1 more section
  • Needs GRAPH_IDEMPOTENCY_KEY

What it does

The graph runtime executes through a separate OS process with the omc graph run command, so killing a run midway and rerunning it really resumes from the journal. You give it a descriptor file, or describe a pipeline in words and the agent writes the descriptor, saves it such as under .omc/graphs and shows it to you before running. A run_id identifies a logical pipeline, and rerunning with the same one resumes instead of restarting. Progress lines are tagged run, node, ok, fail, join and done.

Nodes of kind human-approval cannot run through the Bash tool, whose stdin is not interactive and fails closed to denied, so you are told to run the command yourself with the exclamation prefix. Exit codes are 0 for success, 1 for terminal failure, 19 when another writer owns the run, 20 for a corrupt journal, 21 for descriptor drift on resume and 70 for a runtime crash. Journals and snapshots sit under .omc/graph-runs. It suits repeatable pipelines, not exploratory work or adaptive re-planning.

When your agent uses it

  • Running a repeatable multi-step pipeline with explicit dependencies
  • Needing a long job to resume after a crash or kill
  • Keeping an auditable journal of a pipeline run
  • Adding a human approval step before a deploy node

Example prompts

  • “Run .omc/graphs/release.json and stream the node progress.”
  • “Build a graph that builds, then tests, then asks me before deploying.”
  • “The last run was killed halfway; resume it from the journal.”

Requirements

  • The `omc` CLI from oh-my-claudecode

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Descriptor given -> go to step 3.
  2. Pipeline described -> author the descriptor JSON (schema below), write
  3. Approval nodes: if the descriptor contains any "kind": "human-approval"
  4. Run and relay progress. Exit codes (normative)
  5. Resume: rerunning the same command after a crash replays committed

What it can do on your machine

Read from SKILL.md and the folder at commit 454bae0. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • GRAPH_IDEMPOTENCY_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Orchestration Graph Runner loads about 1.3k tokens when it runs. Until then it costs about 27 tokens; SKILL.md has 615 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~27
When it runs · the whole SKILL.md, loaded when a task matches
~1.3k

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.

Safety

Auto-check passed

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.

SKILL.md

The full file from Yeachan-Heo/oh-my-claudecode at commit 454bae0, republished under its MIT licence (© Yeachan-Heo). 615 words, ~1,345 tokens.

Download SKILL.mdSave it as .claude/skills/graph/SKILL.md (or your agent's skills folder).
name
graph
description
Deterministic orchestration graph runtime - declarative DAG pipelines with journal-based crash recovery
argument-hint
<descriptor.json | describe the pipeline> [--runs-root <dir>]
level
4

Graph Skill

Run a deterministic orchestration graph from a declarative JSON descriptor. The runtime consumes the sealed-descriptor and pure-scheduler contracts in src/graph/* and executes through an independent OS process (omc graph run), so crash recovery (kill mid-run, rerun, resume from journal) works for real.

Usage

/oh-my-claudecode:graph <descriptor.json>
/oh-my-claudecode:graph "build then test then ask me before deploy"   (author the descriptor first)

The execution surface is always the CLI subcommand:

omc graph run <descriptor.json> [--runs-root <dir>]

Run it via the Bash tool for non-interactive graphs. Progress lines stream as [run], [node], [ok], [fail], [join], [done].

When To Use

  • Repeatable multi-step pipelines with explicit dependencies (DAG)
  • Work that must survive interruption: kill/restart resumes from journal
  • Auditable runs: OCC journal + projection snapshots under .omc/graph-runs/<run_id>/

When NOT to use: exploratory one-off work (use conversation or /team); anything needing adaptive re-planning mid-run (graphs are deterministic).

Workflow

  1. Descriptor given -> go to step 3.

  2. Pipeline described -> author the descriptor JSON (schema below), write it next to the project (suggest .omc/graphs/<name>.json) and show it to the user before running. run_id must be unique per logical pipeline; rerunning with the same run_id RESUMES, not restarts.

  3. Approval nodes: if the descriptor contains any "kind": "human-approval" node, do NOT run it through the Bash tool (stdin is not interactive there; EOF fails closed to denied). Tell the user to run interactively instead:

    ! omc graph run <file>

    The ! prefix runs it inside this session with live stdin so y/n works.

  4. Run and relay progress. Exit codes (normative): 0 succeeded | 1 terminal failed | 19 another writer owns this run (busy) 20 corrupt/tampered journal (fail-closed) | 21 descriptor drift on resume | 70 runtime crash (unmapped error)

  5. Resume: rerunning the same command after a crash replays committed transitions and continues. Completed nodes never re-execute.

Descriptor Schema (minimal)

{ "descriptor_version": 1, "run_id": "unique-pipeline-id", "revision_id": "rev-1", "goal": "one line", "nodes": [ { "id": "n1", "kind": "command", "title": "...", "timeout_ms": 60000, "max_attempts": 2, "effect_policy": { "policy": "side_effect_free" }, "command": "npm test" }, { "id": "a1", "kind": "agent", "title": "...", "timeout_ms": 300000, "max_attempts": 1, "effect_policy": { "policy": "side_effect_free" }, "instructions": "..." }, { "id": "gate", "kind": "human-approval", "title": "...", "prompt": "Proceed?" } ], "edges": [ { "id": "e1", "kind": "fixed", "from": "n1", "to": "a1" } ], "entry_node_ids": ["n1"], "concurrency_limit": 2, "terminal_verification_node_id": "a1" }

Edge kinds: fixed | conditional | fan_out/join pairs | back_edge (bounded retries via max_traversals). See src/graph/schema.ts for the authoritative Zod schema — and read the Capability Boundary section above for what built-in executors actually execute today.

Show full SKILL.md (243 more words)Show less

Capability Boundary & Semantics (read before authoring)

  • Edge support: built-in command/agent executors cover fixed edges and fan_out/join pairs. conditional and back_edge routes are fully supported by the runtime and scheduler contracts but require a custom NodeExecutor that emits route on its results — built-in executors never produce routes, so graphs relying on them fail fast with route_required rather than guessing.
  • Crash-recovery guarantee is at-least-once for command nodes: a crash between an external side effect and its journal append re-executes that node on resume. For idempotent commands, the resolved key is available to the command as GRAPH_IDEMPOTENCY_KEY before it starts and is also recorded for downstream dedupe. Built-in executors reject reconcile; reconciliation requires a custom executor with an actual external reconciliation authority. Exactly-once for external side effects is out of scope for v1.
  • Command trust boundary: command nodes are arbitrary shell lines with process authority in the current working directory. Only run descriptors you wrote or trust. Command children receive an allowlisted environment (PATH, HOME/USERPROFILE, TEMP/TMP, locale/timezone, USER identity, GRAPH_*, and the optional idempotency key), not the host's full secrets. Commands are not filesystem/process sandboxed.
  • Agent authority boundary: built-in agent nodes are explicitly read-only. They run in the current working directory with no additional directories, only Read, Glob, and Grep, permissionMode: dontAsk, session persistence disabled, and a provider-specific environment allowlist. Agent timeouts abort and interrupt the SDK query. Use a custom executor for any agent that needs mutation or external effects. Treat .omc/graph-runs/<run_id>/descriptor.json as executable content.

© Yeachan-Heo, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/graph of Yeachan-Heo/oh-my-claudecode.

Open the folder on GitHubat commit 454bae0

Compare with similar skills

Orchestration Graph Runner 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.

Orchestration Graph Runner compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Orchestration Graph Runner this skillYeachan-Heo/oh-my-claudecode40k—~1.3kAutomated safety check: PassMIT
Agency Orchestrator Workflow RunnerjnMetaCode/superpowers-zh8.3k—~885Automated safety check: PassMIT
Prowl Agent Workflowsonevcat/Prowl640—~2.7kAutomated safety check: PassCustom licence
cmux Agent Surface Controldisler/learning-cmux-with-agents115—~2.6kAutomated safety check: NotesMIT
Parallel Batch OperationsQwenLM/qwen-code28k—~2.3kAutomated safety check: PassApache-2.0
Agentic Workflow Designerdotnet/Open-XML-SDK4.6k2 repos~3.5kAutomated safety check: PassMIT

Similar skills

  • Agency Orchestrator Workflow Runner

    jnMetaCode/superpowers-zh

    Runs agency-orchestrator YAML workflows inside the current agent session, with the session's own model playing each role in turn and no API key needed.

    8.3k GitHub stars~885 tokensUpdated yesterday
    Agent WorkflowsAuto-check passed
  • Authors, validates, runs and participates in Prowl Agent Workflows, bundles that orchestrate several live coding agents inside the Prowl macOS app.

    640 GitHub stars~2.7k tokensUpdated today
    Agent WorkflowsAuto-check passed
  • cmux Agent Surface Control

    disler/learning-cmux-with-agents

    Drives the cmux terminal multiplexer from natural language to open, inspect, prompt, read and close windows, workspaces, panes, surfaces and agent sessions.

    115 GitHub stars~2.6k tokensUpdated 3 mo ago
    Productivity & AutomationAuto-check: notes
  • Runs one operation across many files with parallel worker agents: finds files by glob pattern, splits them into chunks, launches workers and summarizes the results.

    28k GitHub stars~2.3k tokensUpdated today
    DevelopmentAuto-check passed
  • Agentic Workflow Designer

    dotnet/Open-XML-SDK

    Official

    Interviews you one question at a time about goal, trigger, permissions and data needs, then drafts a single agentic workflow markdown file.

    4.6k GitHub starsUsed in 2 repos~3.5k tokens
    Agent WorkflowsAuto-check passed
  • Mission Control Agent API

    builderz-labs/mission-control

    Teaches an agent to use the Mission Control dashboard API: register, send heartbeats, fetch assigned tasks, report progress and disconnect, with API key auth.

    6.3k GitHub stars~2.1k tokensUpdated 11 days ago
    Agent WorkflowsAuto-check passed

More from Yeachan-Heo/oh-my-claudecode

All 47 skills in this repo
  • Ask Advisor Routing

    Yeachan-Heo/oh-my-claudecode

    Sends a question or task to another locally installed agent CLI, such as Codex or Gemini, through omc ask and saves the answer as a file.

    40k GitHub stars~572 tokensUpdated yesterday
    Auto-check passed
  • Ask Navigator

    Yeachan-Heo/oh-my-claudecode

    Charts a foggy effort into a map of decision tickets on the repo's issue tracker and works through them one per session, producing decisions rather than deliverables.

    40k GitHub stars~4.1k tokensUpdated yesterday
    Auto-check passed
  • Self-Improve Evolutionary Loop

    Yeachan-Heo/oh-my-claudecode

    Runs an autonomous improvement loop on a repository: agents propose and execute plans, a tournament picks the winner by benchmark, and each round is recorded and plotted.

    40k GitHub stars~5.3k tokensUpdated yesterday
    Auto-check: warnings
  • Autopilot

    Yeachan-Heo/oh-my-claudecode

    Takes a short product idea through requirements, design, planning, parallel implementation, QA cycles and multi-reviewer validation to produce working code.

    40k GitHub stars~4.4k tokensUpdated yesterday
    Auto-check passed
  • OMC Mode Cancellation

    Yeachan-Heo/oh-my-claudecode

    Detects and gracefully cancels whichever OMC mode, autopilot, ralph, swarm, pipeline, or team, is currently active, then clears its state.

    40k GitHub stars~4.6k tokensUpdated yesterday
    Auto-check passed
  • Hierarchical AGENTS.md Generator

    Yeachan-Heo/oh-my-claudecode

    Maps a codebase directory by directory and writes linked AGENTS.md files, each pointing to its parent, to document what each area contains.

    40k GitHub stars~2.3k tokensUpdated yesterday
    Auto-check passed

Questions about Orchestration Graph Runner

What does Orchestration Graph Runner do?

Runs deterministic DAG pipelines from a JSON descriptor with journal-based crash recovery, so an interrupted run resumes without repeating finished nodes. The graph runtime executes through a separate OS process with the omc graph run command, so killing a run midway and rerunning it really resumes from the journal.omc/graphs and shows it to you before running.

When should I use Orchestration Graph Runner?

Orchestration Graph Runner fits situations like: running a repeatable multi-step pipeline with explicit dependencies; needing a long job to resume after a crash or kill; keeping an auditable journal of a pipeline run; adding a human approval step before a deploy node.

How do I install Orchestration Graph Runner in Claude Code?

Run `npx skills add Yeachan-Heo/oh-my-claudecode --skill graph -a claude-code`. Or copy the skill folder (skills/graph in Yeachan-Heo/oh-my-claudecode) into .claude/skills/graph in your project. Claude Code loads it when a task matches its description.

How do I install Orchestration Graph Runner in Codex?

Run `npx skills add Yeachan-Heo/oh-my-claudecode --skill graph -a codex`. Or copy the skill folder (skills/graph in Yeachan-Heo/oh-my-claudecode) into .agents/skills/graph in your project. Codex loads it when a task matches its description.

Can I use Orchestration Graph Runner in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Yeachan-Heo/oh-my-claudecode --skill graph -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/graph, .gemini/skills/graph, .github/skills/graph and .opencode/skills/graph in your project.

What does Orchestration Graph Runner need to run?

Going by SKILL.md and its folder, Orchestration Graph Runner needs credentials named GRAPH_IDEMPOTENCY_KEY. Our summary lists: The `omc` CLI from oh-my-claudecode.

Does Orchestration Graph Runner access the network?

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.

Is Orchestration Graph Runner safe to install?

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.

What licence does Orchestration Graph Runner use?

Orchestration Graph Runner is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Orchestration Graph Runner use?

About 1.3k tokens (SKILL.md is roughly 5.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Orchestration Graph Runner?

Skills that share tags, products or a category with Orchestration Graph Runner: Agency Orchestrator Workflow Runner (jnMetaCode/superpowers-zh, 8.3k stars), Prowl Agent Workflows (onevcat/Prowl, 640 stars), cmux Agent Surface Control (disler/learning-cmux-with-agents, 115 stars) and Parallel Batch Operations (QwenLM/qwen-code, 28k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Orchestration Graph Runner?

Yeachan-Heo (a GitHub user) maintains it in Yeachan-Heo/oh-my-claudecode, which has 39,720 GitHub stars. The repository holds 47 skills in this directory. The repository was last updated on October 8, 2026.

Source: Yeachan-Heo/oh-my-claudecode on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.