# Agent Workflow

> Call workflows explicitly bound to the current Agent as structured process tools.

- Skill: `zgiai/agent-workflow` (Agent Skill)
- Install (CLI): `npx skillmds@latest add zgiai/agent-workflow`
- Raw SKILL.md: https://api.skillmd.com/api/skills/zgiai/agent-workflow/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: zgiai (https://skillmd.com/u/zgiai)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/zgiai/agent-workflow

---


Use this skill only for workflows that are already bound to the current Agent.

Workflow calls are tool-mode calls. They do not take over the conversation stream. Return the tool result to the skill loop and continue from the structured status:

- `succeeded`: use `primary_output` first, then `outputs`, to answer or continue. Do not claim that the workflow produced content that is not present in `primary_output` or `outputs`. If the workflow succeeded but returned no displayable output, tell the user the workflow ran but returned no displayable output and include `workflow_run_id`.
- `pending_approval`: tell the user approval is waiting and include the safe approval entry details from the tool result when useful.
- `failed`: summarize the error and decide whether to retry or ask for corrected input.

Do not invent workflow IDs. The Agent runtime injects an `available_workflows` JSON list when workflows are bound. Use that injected list first to choose a binding. Call `list_agent_workflows` only if the injected list is missing, ambiguous, or stale.

Call `run_agent_workflow` only with a `binding_id` from `available_workflows` or the fallback list result. For task workflows, follow the binding's `input_schema` and `required_inputs` exactly; when the workflow declares no start inputs, pass an empty `inputs` object. Only conversational workflows use `inputs.query` for the user's current request. After approval resumes, use `get_workflow_run_status` with the returned `workflow_run_id` to query the result.

