wf-run-step

wf-run-step is a skill for Claude Code, Codex from dioptx/weft. It costs 46 tokens per session (730 once invoked), scanned A, original, MIT.

A Weft workflow-step runner that executes the current step when its template includes a Claude Code Workflow script, then records the result and moves the workflow forward.

In plain words
What is it for?
Use it for steps such as review fan-outs, checks across multiple targets, and regression sweeps; steps without an executor are handled with /wf-step.
Why use it?
It handles mechanical workflow steps consistently and can resume a recorded run after a crash.

Skill for Claude CodeCodex

Installs and runs on its own, but its text points at files inside its plugin — anything it tells you to read at a ${CLAUDE_PLUGIN_ROOT} path is only there once the plugin is installed. Installing the plugin gets both.

Part of the weft plugin — 13 skills, 4 hooks shipped together

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/dioptx/weft/wf-run-step
Any agent
npx skills add dioptx/weft --skill wf-run-step
Clone the repo
git clone --depth 1 https://github.com/dioptx/weft

Made for: Claude Code, Codex.

Or install weft, the plugin that ships this one along with the rest of its 13 skills, 4 hooks.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for wf-run-step

README.md
[![agentmods](https://agentmods.dev/badge/skills/dioptx/weft/wf-run-step.svg)](https://agentmods.dev/skills/dioptx/weft/wf-run-step)
Your own site
<a href="https://agentmods.dev/skills/dioptx/weft/wf-run-step"><img src="https://agentmods.dev/badge/skills/dioptx/weft/wf-run-step.svg" alt="Measured on agentmods" height="20"></a>
Per session 46 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 730 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00046 $0.00730
Opus 5 $0.00023 $0.00365
Sonnet 5 $0.00009 $0.00146
Haiku 4.5 $0.00005 $0.00073

Measured 4d ago against content hash aa1b8925dc41, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

wf-run-step scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/wf-run-step/SKILL.md · 70 lines

How it starts

The opening of the file, as written. The whole thing — 70 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Run a Weft Step as a Workflow

For steps whose template declares an executor (a Claude Code Workflow script), this runs the workflow, captures its structured verdict, and pipes the result to weft run-result — which records the Workflow runId on the step (for crash-resume) and auto-transitions: complete if the verdict is non-blocking, fail (per on_fail) if blocking.

Steps with no executor are not for this skill — drive them with /wf-step as normal. The executor is for mechanical steps (review fan-out, multi-target verification, regression sweeps); judgment gates stay human-driven.

1. Read the current step's executor

python3 "${CLAUDE_PLUGIN_ROOT}/core/cli.py" status --json

Find the current step (the one with status: running). Read its executor field:

  • executor.type — currently only "workflow" is supported.
  • executor.script — script name, resolved to ~/.claude/weft/workflows/<script>.js (or the project-local .claude/weft/workflows/<script>.js if present).
  • executor.args — JSON args passed to the workflow.

If executor is null: stop. Tell the user this step has no executor and should be advanced with /wf-step. Do not invent one.

2. Invoke the Workflow

If --resume was passed AND the step already has a non-null workflow_run_id, re-invoke with resumeFromRunId so completed sub-agents return cached (this is the crash-resume path):

Workflow({ scriptPath: "<resolved path>", args: <executor.args>, resumeFromRunId: "<workflow_run_id>" })

Otherwise invoke fresh:

Workflow({ scriptPath: "<resolved path>", args: <executor.args> })

The executor script must return an object that includes at least blocking (boolean) and a human-readable summary. Capture the Run ID from the tool result and the returned object.

3. Record the verdict and auto-transition

Build the payload and pipe it to run-result (it transitions the step — complete if not blocking, fail if blocking):

echo '{"run_id":"<RUN_ID>","blocking":<true|false>,"reason":"<one-line>","verdict":<the returned object>}' \
  | python3 "${CLAUDE_PLUGIN_ROOT}/core/cli.py" run-result

Read the full file on GitHub · 70 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 4d ago First seen · 70 lines · 46 tokens per session scan A aa1b8925dc41

Subscribe to this mod's changes

wf-run-step is a skill published in the GitHub repository dioptx/weft (23 stars, last pushed 19d ago), licensed MIT. It adds 46 tokens to every session and 730 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

superpowers-graph

Runs the Superpowers software-development methodology as a guarded state machine — brainstorm, spec, plan, isolated workspace, the per-task implement/review/fix loop, the whole-branch review, and the integration menu — with typed node contracts, total exit guards, bounded retry loops, and a ledger recording every step…

RonMizrahi/superpowers-graph · 134 tokens

html-ppt-hermes-cyber-terminal

OpenDesign + BYOK: choosing and wiring your own model, hands-on — cost, quality, and the routing decision. Built as a decision-grade AI literacy deck for engineers, IT, applied-AI teams.

nexu-io/open-design · 53 tokens

development

开发语言能力索引。Python、Go、Rust、TypeScript、Java、C++、Shell。当用户提到编程、开发、代码、语言时路由到此。.

fengshao1227/ccg-workflow · 41 tokens

post-build-flow

Handles workflow verification and setup after build-workflow succeeds, or when the message contains workflow-verification-follow-up or workflow-setup-required. Load after direct builds, when verificationReadiness requires action, or on orchestrator verify/setup follow-up turns.

n8n-io/n8n · 53 tokens

ideogram-ultra

Build Ideogram 4 (Ideogram Ultra) txt2img and img2img workflows with the local open-weights model, dual conditional/unconditional models with DualModelGuider, Qwen3-VL text encoder, and structured JSON ("compositional deconstruction") prompts for strong text rendering and layout control.

artokun/comfyui-mcp · 68 tokens

model-compatibility

Model family compatibility matrix covering loaders, resolutions, samplers, CFG, VAE, ControlNet, and LoRA compatibility for SD 1.5, SDXL, Flux, SD3, and video models.

artokun/comfyui-mcp · 47 tokens