create-workflow
SkillDev toolsCreate and run user-triggered workflows with declared steps. Use when the user asks about a workflow or wants a verifiable recipe (fetch, compare, summarize) they can run on demand from chat or the dashboard.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the create-workflow skill
What this skill tells your AI
The instructions your AI receives, as published by ahmadrosid/nakama in packages/plugins/workflows/skills/create-workflow/SKILL.md and read by ahel’s review.
When the user wants a workflow they can run on demand (for example "morning brief"), explain the step recipe clearly before saving.
Use plugin_workflows__create_workflow with kind (never type). Last step must be summarize with prompt (never instruction).
[
{ "id": "news", "kind": "tool", "tool": "web_fetch", "input": { "url": "https://news.ycombinator.com" } },
{ "id": "summary", "kind": "summarize", "prompt": "Write a brief from the receipts only." }
]
tool— assigned profile or MCP tool that can run locally;inputmust match that tool's schema. Useweb_fetchfor URLs. Do not useweb_search— it only runs inside a provider chat turn.template— substitutes values into text only. Writing “extract stories” in a template returns those instructions; it does not call AI, parse content, or produce structured JSON.compare/assert— deterministic checks on prior receipts.compare.opiseq|near|contains. Do not use compare as free-text analysis- exactly one final
summarize— turns the receipt bag into prose (no tools). It cannot be an intermediate extraction step or feed a later database step.
For extraction or analysis before a write, use an available tool that actually performs that work. Verify its input and output schema; do not invent a tool or output field. If no suitable tool is assigned, explain the missing capability instead of saving a recipe that cannot fulfill the request.
References use the tool's actual output shape: {{steps.fetch.content}}, not an assumed .output wrapper. Missing references stop the run. Explicit null values are allowed, so check required data with assert/compare steps before writes when applicable.
For a requested quantity such as five saved stories, check the extraction count and the database result with an assert/compare step. Inspect receipts before claiming success: a completed SQL call with changes: 0 does not prove stories were saved. Do not blindly rerun writes after a failure; inspect which writes already completed.
When the user names a profile to run as, confirm that profile and pass its agentId. Omit agentId to use the current chat profile.
When the user asks to run a saved workflow, use plugin_workflows__list_workflows to find it, then plugin_workflows__run_workflow. Pass input when the recipe uses {{input.*}} bindings.
When the user wants to change an existing workflow, use plugin_workflows__update_workflow.
Do not use workflows for clock-driven jobs — use create_automation for schedules.
Signals
- GitHub stars
- 372
- Forks
- 66
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
create-workflow- Source
- github.com/ahmadrosid/nakama