Elizon Docs
Workflows

Manual trigger

Start a workflow by hand — from Studio's Run button or the node's own Run.

The Manual Trigger (trigger_manual) starts a run when a person asks for one: the Run button in Studio's top bar, or Run on the node itself. It is the trigger to build and test with, and the one an operator uses to run a Package on demand.

A published workflow can also be started through the API whether or not it has a Manual trigger.

Configuration

FieldTypeDefaultDescription
descriptionstring''A note for whoever runs it — what the workflow does and what input, if any, it expects. Shown on the node.

Output

The node's output is the run's input, which a Manual run sends flat (no body envelope):

ReferenceValue
{{ trigger.<field> }}A value from the input the run was started with. A Run from the node itself sends an empty input ({}).
{{ run.trigger.type }}manual.
{{ run.trigger.id }}This node's id.
{{ run.startedAt }}When the run started, ISO 8601 UTC.

When the same workflow also has a Webhook or Form trigger, Studio's Run dialog prompts for that trigger's fields and wraps them under body, so a test run resolves {{ trigger.body.* }} the way a live one does. With several triggers, pick the one to Start from in that dialog — see Several triggers on one workflow.

Limits and errors

  • A workflow can hold more than one Manual trigger. A manual run starts all of them.
  • A run started from Studio counts against the same concurrency ceiling as any other run.

Example

A workflow an operator runs on demand to summarise the day so far:

workflows/daily-summary.yaml
name: Daily summary
description: Summarises today's tickets on demand.
graph:
  nodes:
    - id: start
      type: trigger_manual
      position: { x: 0, y: 0 }
      data:
        description: Run it whenever you want today's summary.
    - id: summarise
      type: ai_agent
      position: { x: 280, y: 0 }
      data:
        mode: existing
        agent: agents.summariser
        agentName: Summariser
        inputMappings: []
  edges:
    - { id: start-to-summarise, source: start, target: summarise }

In a Package

Declare the trigger in the manifest:

elizon.yaml
triggers:
  - id: run-manually
    type: manual
    description: Run it from Studio.

On the node itself:

  • Travels: description
  • Converted: none
  • Never carried: none

manual needs no entry in compatibility.requiredCapabilities. Check the Package with npx @elizon/cli validate, then npx @elizon/cli build.