workflow-chaining

workflow-chaining is a skill for Claude Code from Viindoo/odoo-mcp-client. It costs 13 tokens per session (2,913 once invoked), scanned C, original, MIT.

A workflow runner that reads a YAML file and carries out a declared sequence of specialist steps. YAML is a plain-text format often used for configuration, and the workflow can pause for approval between phases.

In plain words
What is it for?
Running pipelines, fan-out and fan-in tasks, review flows, supervisor workflows, and other staged processes defined in YAML.
Why use it?
It coordinates multi-step work while recording progress and enforcing checkpoints. This makes longer agent workflows easier to control and resume.

Skill for Claude Code

Written for Claude Code: user-invocable in frontmatter. Also seen: model in frontmatter; mentions subagents; names the ExitPlanMode tool.

Runs only inside its plugin — its command needs a path that Claude Code sets for a plugin’s own hooks and for nothing else. Install the plugin, not this.

Part of the odoo-ai-agents plugin — 50 skills, 8 commands, 23 agents, 8 hooks, 3 MCP servers shipped together

Good fit Running pipelines, fan-out and fan-in tasks, review flows, supervisor workflows, and other staged processes defined in YAML.

Compare 6 skills from other repositories ↓
Install

Getting it into your agent

This one installs as part of its plugin. Adding the marketplace and installing the plugin brings it with everything else the plugin ships.

Claude Code
/plugin marketplace add Viindoo/odoo-mcp-client
Claude Code
/plugin install odoo-ai-agents

Made for: Claude Code.

Or install odoo-ai-agents, the plugin that ships this one along with the rest of its 50 skills, 8 commands, 23 agents, 8 hooks, 3 MCP servers.

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 workflow-chaining

README.md
[![agentmods](https://agentmods.dev/badge/skills/viindoo/odoo-mcp-client/workflow-chaining/github.svg)](https://agentmods.dev/skills/viindoo/odoo-mcp-client/workflow-chaining)
Your own site
<a href="https://agentmods.dev/skills/viindoo/odoo-mcp-client/workflow-chaining"><img src="https://agentmods.dev/badge/skills/viindoo/odoo-mcp-client/workflow-chaining/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for workflow-chaining

Your own site · 80×15
<a href="https://agentmods.dev/skills/viindoo/odoo-mcp-client/workflow-chaining"><img src="https://agentmods.dev/badge/skills/viindoo/odoo-mcp-client/workflow-chaining.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 13 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,913 The whole file, excluding the scripts and references it only reads on demand.
Security scan C 1 finding. A grade says what 26 rules found in the file — not that it is safe.
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.1 $0.00013 $0.02913
Opus 5.5 $0.00005 $0.01165
Sonnet 5.5 $0.00003 $0.00583
Haiku 4.5 $0.00001 $0.00291

Measured 9d ago against content hash 0b6c4eb42bc1, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade C, and why

workflow-chaining scanned grade C with 1 finding 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 9d 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.

Recursive force deletehighDestructive command

rm -rf with a variable or a broad path is one typo away from removing the wrong tree.

ISOLATE output_dir>/ -mindepth 1 -maxdepth 1 -type d -mmin +43200 -exec rm -rf {} +` (it removes
plugins/odoo-ai-agents/skills/workflow-chaining/SKILL.md · 231 lines

How it starts

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

workflow-chaining - Generic Declarative Workflow Runner

Role

Read the YAML, decide the workflow plan once, announce each phase, dispatch specialists via the Skill tool (NL description-match as fallback), write checkpoints. Invoked by odoo-intake, a workflow command, or a plan's workflow node.

Hard rules

  1. Prefer the Skill tool for phase dispatch. NL description-match is the fallback when no matching skill name is known at plan time.
  2. NEVER spawn a sub-agent directly (no agent launch, no context: fork) except fan-out (≤3 workers, mandatory worker-brief preamble) and an agent: phase: launch that agent at the phase's model_tier; a later phase resumes it by the returned id.
  3. No recursion. Fork workers are leaf agents and carry: "Do NOT invoke spawner skills via the Skill tool. Do NOT spawn sub-agents. You MAY use the Skill tool for read-only leaf skills (e.g. odoo-feature-check, odoo-override-finding). Only Read/Grep/Glob/Write/Bash."
  4. One plan decision, then no stops. No phase runs before the workflow plan is decided (Phase 0 step 6). Phases then run without stopping; a phase gate is a text confirmation before that phase's outward or irreversible action, and the only one.
  5. Resume from checkpoint. If resume: true and <output_dir>/<slug>-state.json exists (output_dir resolves per Phase 0 step 2), load it and skip done phases.
  6. Schema → workflows/_schema.md.
  7. on_complete EMITs, never dispatches. Matched transitions go to Continuation Contract next[] for the plan runner (the main agent) - this skill never fires a spawner itself.

Phase 0 - Load and validate

  1. Read the referenced workflows/<name>.workflow.yaml file.
  2. Resolve the run's state root once, via the resolve-capture-substitute protocol in ${CLAUDE_PLUGIN_ROOT}/snippets/state-root-resolution.md: output_dir: from the YAML is a relative .odoo-ai/<name> literal that this skill resolves against the Tier-2 ISOLATE dir (call mcp__plugin_odoo-ai-agents_odoo-local__project_dir with axis isolate, cwd = the run's target root) at RUNTIME - never write to the bare project-relative .odoo-ai/<name> path. Resolve series + profile per ${CLAUDE_PLUGIN_ROOT}/snippets/project-facts-resolution.md.
  3. Orphan sweep (do this every invocation, before the resume check below). Run find <resolved ISOLATE output_dir>/ -mindepth 1 -maxdepth 1 -type d -mmin +43200 -exec rm -rf {} + (it removes whatever output_dir THIS workflow declares that was untouched for over 30 days). Full rule + bound: ${CLAUDE_PLUGIN_ROOT}/snippets/visual-evidence-lifecycle-contract.md § Clause 3. Run it unconditionally, every run.
  4. If resume: true, check for <output_dir>/<slug>-state.json under the resolved ISOLATE dir; if found, load it and determine the last completed phase.
  5. Collect any missing inputs[] from the user (one question per missing input).
  6. Decide the workflow plan (${CLAUDE_PLUGIN_ROOT}/snippets/planning-gate-contract.md § One Plan-Mode gate per request):
    • A phase with plan: true computes the plan: run the phases up to and including it first (they write only under the state root), and present its output as the plan.
    • The workflow owns the request (invoked by odoo-intake, a command, or the user): call EnterPlanMode, present the block below, ExitPlanMode on approve; refine: [feedback] re-plans, cancel stops.
    • Every on_complete entry of the workflow hands the request to odoo-solution-design or odoo-planning (the workflow only scopes): that skill holds the request's Plan-Mode gate. State the chain in one line and run.
    • A node of an approved plan: present nothing and run.

Read the full file on GitHub · 231 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. 9d ago Changed · +1 lines 0b6c4eb42bc1
  2. 20d ago Changed · +2 lines 9839a7d74cd9
  3. 24d ago Changed 39dd421b2883
  4. 1mo ago Changed 183f4531098e
  5. 1mo ago Changed · -6 lines · -117 tokens per session 9fa95915c7f9
  6. 1mo ago Changed · -1 lines d555f5657f37
  7. 1mo ago Changed fc03994d690a
  8. 2mo ago First seen · 235 lines · 130 tokens per session scan C c8853ef89015

Subscribe to this mod's changes

workflow-chaining is a skill published in the GitHub repository Viindoo/odoo-mcp-client (9 stars, last pushed 2d ago), licensed MIT. It adds 13 tokens to every session and 2,913 once invoked, about $0.0001 per session on Opus 5.5. A static security scan graded it C with 1 finding (recursive force delete). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.

Related

workflow-chaining compared with skills from other repositories

workflow-chaining next to 6 skills from other repositories
ModTypeStarsLast pushLicenceScanTokensWorks with
workflow-chainingViindoo/odoo-mcp-clientSkill92d agoMITC13Claude Code
imagegenopenai/codexSkill134ktodayApache-2.0A113Codex
playwright-climicrosoft/playwrightSkill100ktodayApache-2.0A19Claude Code
local-ai-agentsmicrosoft/ai-agents-for-beginnersSkill79k3d agoMITA200Claude Code, Codex
browser-automationopenclaw/openclawSkill394ktodayMITA36Claude Code
systematic-debuggingobra/superpowersSkill315k6d agoMITA21Claude Code
next-cache-components-adoptionvercel/next.jsSkill143ktodayMITA95Claude Code