Рабочие процессы (Workflows)¶
Раздел Workflows (/workflows) — создание и запуск цепочек агентов.
Создание сценария¶
- Откройте Workflows.
- Выберите шаблон (Templates: data analysis, documents, monitoring, support) или нажмите New workflow.
- В конструкторе добавьте шаги:
- выберите агента;
- задайте input (JSON);
- при необходимости включите Require approval (пауза HITL на шаге).
- Используйте подстановки:
{{today}}— текущая дата;{{step1.output}},{{step2.output}}— выход предыдущих шагов;{{input.field}}— поля входных данных запуска.- При необходимости укажите schedule (cron), например
0 9 * * *— ежедневно в 09:00. - Нажмите Save, затем Run / Execute.
Редактирование: /workflows/:id.
Статусы выполнения¶
| Статус | Значение | Действие оператора |
|---|---|---|
running |
Идёт выполнение | Наблюдать / при необходимости Cancel |
completed |
Успех | Готово |
failed |
Ошибка | Смотреть лог/причину → Retry или исправить шаги |
awaiting_approval |
Ждёт HITL | Перейти в HITL → Approve / Reject |
Отмена и повтор¶
- Cancel — остановить текущий run.
- Retry — повторить после сбоя (если доступно для run).
- История: блок Recent runs / API
GET /api/v1/workflows/{id}/runs.
Триггеры¶
| Тип | Как работает |
|---|---|
| Ручной запуск | Кнопка Execute в UI или POST .../execute |
| Cron | Поле schedule в определении workflow |
| Webhook | POST /api/v1/workflows/{id}/webhook (с проверками SSRF/секрета) |
Безопасность и бюджеты¶
- Политики применяются fail-closed: при недоступности OPA/критичном отказе сценарий не «проскакивает» без проверки.
- Мягкий/жёсткий бюджет в Cost может остановить следующие шаги.
- Шаг с Require approval переводит run в
awaiting_approvalдо решения в HITL.
Пример через API¶
curl -X POST http://localhost:8001/api/v1/workflows \
-H "Authorization: Bearer $JWT" \
-H "X-API-Key: $TENANT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Daily Sales Report",
"steps": [
{"agent": "sales-fetcher", "input": {"date": "{{today}}"}},
{"agent": "report-generator", "input": {"data": "{{step1.output}}"}},
{"agent": "email-sender", "input": {"report": "{{step2.output}}", "to": "ceo@company.com"}}
],
"schedule": "0 9 * * *"
}'
Подробнее (EN): Workflows.