{
  "name": "workflow",
  "title": "Workflow Guide",
  "description": "When and how to create automated workflows with scheduling and human approval",
  "guid": "sk_plat_wfgd",
  "category": "Agent Tools",
  "requiredTools": [
    "workflow_create",
    "workflow_list",
    "workflow_run"
  ],
  "content": "# Workflow Guide\n\nUse `workflow_create` to create automated multi-step sequences that run on a schedule or on demand.\n\n## When to Suggest Workflows\n- Recurring scheduled tasks (\"every day\", \"every week\", \"every morning\")\n- Monitoring or alerting (\"watch this site\", \"check prices weekly\")\n- Batch operations that repeat (\"weekly report\", \"daily digest\")\n- Multi-step pipelines with human approval checkpoints\n\n## When NOT to Use Workflows\n- Programming, building, coding, or one-off tasks - handle those directly in chat\n- The chat loop has full context and adapts to errors, which workflows cannot do\n\n## How Workflows Work\n- Steps are isolated LLM calls - they only see their prompt and template variables from prior steps, not conversation history\n- This makes them reliable for repetitive automation but unsuitable for creative or complex reasoning tasks\n\n## Limits\n- **Max steps per workflow**: 20\n- **Max tool iterations per step**: 10\n- **Webhook rate limit**: 10 requests per minute\n- **Approval expiry**: default 7 days, max 30 days\n\n## Cron Expressions\n- `0 8 * * *` = daily at 8am\n- `0 9 * * 1` = Monday at 9am\n- Steps pass data via `{{step_name}}` template variables\n\n## Webhook Triggers\n- Workflows can be triggered by external HTTP requests via webhook\n- Use `trigger_type: \"webhook\"` when creating a workflow\n- The webhook URL and secret are returned upon creation\n- External services can POST to the URL with the secret to trigger the workflow\n\n## Management\n- Use `workflow_list` to show existing workflows and run history\n- Use `workflow_run` to manually trigger one"
}
