Skip to main content
Every task declares a type that selects the tool it runs. This page covers the core task types; iteration lives on the Loops page.

type: agent

Runs an agent with a prompt.

Agent task consistency runs

You can enable consistency checking on agent tasks by setting consistency_run to a value greater than 1. This runs the agent multiple times with the same prompt and selects the most consistent output:
This is particularly useful for:
  • Critical calculations where consistency is important
  • Data analysis tasks that may have slight variations in output
  • Queries involving complex logic where you want to verify the agent’s reasoning
Consistency prompt configuration:
  • Automation-level: Add consistency_prompt at the root to apply to all agent tasks
  • Task-level: Add consistency_prompt to a specific task to override the Automation prompt
  • Default: If not specified, uses the built-in evaluation prompt optimized for data analysis (view the default prompt source)
Available template variables:
  • {{ submission_1 }} - First output
  • {{ submission_2 }} - Second output
  • {{ task_description }} - The task prompt
Note: Custom prompts completely replace the default. To adapt the default for your domain, copy the source and modify the specific rules you need. See the Testing documentation for more details on consistency checking.

type: execute_sql

Executes a SQL query either referenced by filename or provided inline. You can use either sql_file to reference a SQL file, or sql_query to provide the SQL inline. Note: These options are mutually exclusive—only one should be used at a time. Specifying both in a single task is not allowed.

type: formatter

Formats the provided template using the outputs of other tasks, then passes the rendered template as output.

type: workflow

Runs another Automation as a sub-step. Use this to break up complex Automations into smaller, easily testable chunks. The variables key allows parameterization by overriding the sub-Automation’s Automation-level variables. This is particularly useful when embedding an Automation task into a loop:

Next steps

Loops

Iterate over values with loop_sequential

Variables

Parameterize tasks with typed inputs