skill
workflows-plugin
Claude Code plugin: consistent orchestration patterns for the Workflow tool (dynamic workflows), vendoring Anthropic's own docs and the zircote Dynamic Workflow Design Patterns field note
Set up
Skills are installed by placing their folder where your agent loads skills.
Install instructions come from the README
README
synced Oct 14, 2026dynamic-workflows
A standalone Claude Code plugin that ships one skill,
dynamic-workflows, teaching a
consistent set of orchestration patterns for Claude Code's Workflow
tool — the primitive that lets Claude write and run a JavaScript script
coordinating dozens to hundreds of subagents in the background
(agent() / parallel() / pipeline() / phase() / log() /
workflow(), plus the args / budget globals).
Two sources, two jobs
The skill deliberately separates what the tool does from what to call the shapes you build with it:
| Layer | Source | Role |
|---|---|---|
Mechanics (reference/api.md) | Anthropic's own dynamic-workflows docs and the Workflow tool's own spec | Authoritative. Runtime limits, option shapes, approval/cost/resume behavior. When anything conflicts with the pattern catalog, this wins. |
Vocabulary (reference/patterns.md) | zircote field note, Dynamic Workflow Design Patterns (July 2026) | A semantic framework, not a second spec: 20 named orchestration patterns across four families (Structural, Behavioral, Verification, Contract) plus 8 named anti-patterns, GoF-style. Gives shapes names so they can be discussed and reused instead of reinvented per task. |
Both are vendored verbatim under vendor/, with
vendor/VENDOR.lock recording the source URL, sha256,
and fetch timestamp for each — the same cache-never-authority pattern
mif-docs-plugin
uses for its schema.
Install
From this repo's self-hosting marketplace:
claude plugin marketplace add zircote/workflows-plugin
claude plugin install dynamic-workflows@dynamic-workflows
Keeping the vendored sources current
Two of the three vendored files are fetched from stable public doc URLs and
can be refreshed automatically; the third — the Workflow tool's own option
spec — is runtime-injected tool metadata with no stable public URL as of this
writing, so it's refreshed by hand.
npm ci
npm run hydrate-vendor # re-fetch refreshable sources, update vendor/VENDOR.lock
npm run hydrate-vendor:check # report drift only, exit 1 if stale, write nothing (CI-friendly)
npm run validate-plugin # plugin.json + marketplace.json + SKILL.md + evals + VENDOR.lock shape
npm test # node --test over tests/
When hydrate-vendor reports drift, read the diff before deciding whether
skills/dynamic-workflows/reference/api.md or reference/patterns.md (the
curated distillations the skill actually reads) need updating too — the raw
vendor files are a cache of the source, not the skill's own content.
To refresh the manual vendor/anthropic-workflow-tool-spec.md: open a live
Claude Code session, find the Workflow tool's description field in its
system tool list, and paste the current text back into that file, updating
its capture-date header and the fetchedAt field for that source in
vendor/VENDOR.lock.
What's inside
| Path | Purpose |
|---|---|
skills/dynamic-workflows/SKILL.md | The skill itself: an opt-in checklist for authoring a workflow script, a checklist for reviewing an existing one, and a quick pattern index |
skills/dynamic-workflows/reference/api.md | Distilled, authoritative mechanics — constraints, the seven core constructs, pipeline() vs parallel(), approval/cost/resume |
skills/dynamic-workflows/reference/patterns.md | Distilled pattern catalog — 20 patterns in 4 families, 8 anti-patterns, a decision guide |
skills/dynamic-workflows/evals/evals.json | 6 eval cases checking the skill picks the right pattern (pipeline over parallel, schema binding, adversarial verify, loop-until-dry, phase-gated staging, anti-pattern review) |
vendor/ | Raw vendored copies of both source documents + VENDOR.lock |
scripts/hydrate-vendor.mjs | Refreshes vendor sources / detects drift |
scripts/validate-plugin.mjs | Structural validation gate |
License
MIT — see LICENSE.