Files
enclava/backend/modules/workflow/module.yaml
2025-08-20 20:39:20 +02:00

145 lines
3.5 KiB
YAML

name: workflow
version: 1.0.0
description: "Multi-step automation processes"
author: "Enclava Team"
category: "automation"
# Module lifecycle
enabled: true
auto_start: true
dependencies: []
optional_dependencies:
- rag
- chatbot
- cache
# Module capabilities
provides:
- "workflow_execution"
- "step_orchestration"
- "automation_triggers"
- "workflow_templates"
consumes:
- "llm_completion"
- "rag_search"
- "chatbot_response"
- "external_apis"
# API endpoints
endpoints:
- path: "/workflow/templates"
method: "GET"
description: "List available workflow templates"
- path: "/workflow/create"
method: "POST"
description: "Create new workflow"
- path: "/workflow/execute"
method: "POST"
description: "Execute workflow"
- path: "/workflow/status/{workflow_id}"
method: "GET"
description: "Get workflow execution status"
- path: "/workflow/history"
method: "GET"
description: "Get workflow execution history"
# Workflow integration
workflow_steps:
- name: "conditional_branch"
description: "Conditional logic branching"
inputs:
- name: "condition"
type: "string"
required: true
description: "Condition to evaluate"
- name: "true_path"
type: "object"
required: true
description: "Steps to execute if condition is true"
- name: "false_path"
type: "object"
required: false
description: "Steps to execute if condition is false"
outputs:
- name: "result"
type: "object"
description: "Result from executed branch"
- name: "loop_iteration"
description: "Iterative processing loop"
inputs:
- name: "items"
type: "array"
required: true
description: "Items to iterate over"
- name: "steps"
type: "object"
required: true
description: "Steps to execute for each item"
outputs:
- name: "results"
type: "array"
description: "Results from each iteration"
# UI Configuration
ui_config:
icon: "workflow"
color: "#06B6D4"
category: "Automation"
forms:
- name: "workflow_config"
title: "Workflow Settings"
fields: ["name", "description", "trigger_type"]
- name: "step_config"
title: "Step Configuration"
fields: ["step_type", "parameters", "retry_attempts"]
- name: "scheduling"
title: "Scheduling & Triggers"
fields: ["schedule", "webhook_triggers", "event_triggers"]
# Permissions
permissions:
- name: "workflow.create"
description: "Create new workflows"
- name: "workflow.execute"
description: "Execute workflows"
- name: "workflow.configure"
description: "Configure workflow settings"
- name: "workflow.manage"
description: "Manage all workflows (admin)"
# Analytics events
analytics_events:
- name: "workflow_created"
description: "New workflow template created"
- name: "workflow_executed"
description: "Workflow execution started"
- name: "workflow_completed"
description: "Workflow execution completed"
- name: "workflow_failed"
description: "Workflow execution failed"
# Health checks
health_checks:
- name: "execution_engine"
description: "Check workflow execution engine"
- name: "step_dependencies"
description: "Check availability of workflow step dependencies"
- name: "template_validation"
description: "Validate workflow templates"