Workflow Schema

JSON Schema for workflow configuration

Workflow Configuration Schema
Config represents a workflow configuration in Compozy.
agents
array

AI agents with specific instructions and capabilities Configure LLM-powered agents with custom prompts, tools access, and behavior Agents can be referenced by tasks using $use: agent(...) syntax

Schema Reference: agents.json

author
object

Author information for workflow attribution Helps track ownership and responsibility for workflow maintenance

config
object

Configuration options including input schema and environment variables Controls workflow behavior, validation, and runtime environment

description
string

Human-readable description of the workflow's purpose Should clearly explain what the workflow does and when to use it

id
string

Unique identifier for the workflow (required) Must be unique within the project scope. Used for referencing and execution.

  • Example: "customer-support", "data-processing", "content-generation"
mcps
array

Model Context Protocol servers for extending AI capabilities MCP servers provide specialized tools and knowledge to agents Enable integration with external services and domain-specific functionality

Schema Reference: mcp.json

outputs
object

Output mappings to structure the final workflow results Use template expressions to extract and transform task outputs

  • Example: ticket_id: "{{ .tasks.create-ticket.output.id }}"
resource
string

Resource reference for external workflow definitions Format: "compozy:workflow:<name>" - allows referencing pre-built workflows

schedule
object

Schedule configuration for automated workflow execution Enable cron-based scheduling with timezone support and overlap policies

schemas
array

JSON schemas for validating data structures used in the workflow Define reusable schemas that can be referenced throughout the workflow using $ref syntax (e.g., $ref: local::schemas.#(id="user_schema"))

tasks
array

Sequential tasks that define the workflow execution plan (required) Tasks are the core execution units, processed in order with conditional branching Each task uses either an agent or tool to perform its operation

Schema Reference: tasks.json

tools
array

External tools that can be invoked by agents or tasks Define executable scripts or programs that perform specific operations Tools provide deterministic, non-AI functionality like API calls or data processing

Schema Reference: tools.json

triggers
array

Event triggers that can initiate workflow execution Define external events (webhooks, signals) that can start the workflow Each trigger can have its own input schema for validation

version
string

Version of the workflow for tracking changes Follows semantic versioning (e.g., "1.0.0", "2.1.3") Useful for managing workflow evolution and backwards compatibility

Resources

On this page