Bot Tasks

How to structure a bot's work as tasks with tools, in stages that run in the right order.

Overview

A bot’s work is a series of tasks. You create as many tasks as the job needs, give each task the tools it needs, and define the order they run in. The platform handles the rest: parallel execution where it can, outputs flowing from one stage to the next, and a clean history of every step.

Tasks

A task is one step in the work. Each task has:

  • Name. A short label that shows up on the canvas.
  • Prompt. The instruction for this step. The soul sits above the prompt at runtime, so you do not need to repeat general rules here.
  • Tools. Any tools this task can use. Different tasks can have different tools.
  • Position. The stage this task belongs to. Tasks at the same position run in parallel.

Stages

A stage is a horizontal row on the canvas. All tasks at the same position are part of the same stage.

  • Tasks in the same stage run in parallel. They do not see each other’s output.
  • Tasks in a later stage can read the output of any task in earlier stages they depend on.

This is what turns the bot’s work into a DAG (directed acyclic graph) rather than a simple list. Parallel work finishes faster, and downstream tasks get the inputs they need.

Dependencies

When a task in a later stage reads from tasks in earlier stages, those are its inputs. On the canvas, dependencies are computed automatically from the task’s position: a task pulls input from the tasks it is visually wired up to in the previous stage. You do not have to declare dependencies by hand; moving a task to a later stage rewires the graph for you.

A concrete example

A bot that produces a daily AI briefing might look like this:

Stage 1 (parallel)

  • Task A: “Search the web for the top AI product launches in the past 24 hours.”
  • Task B: “Search the web for the top AI research papers in the past 24 hours.”
  • Task C: “Search the web for the top AI policy news in the past 24 hours.”

Stage 2

  • Task D: “Given the product launches, research papers, and policy news from stage 1, write a five-item daily briefing in the voice from the soul.”

Stage 3

  • Task E: “Email the briefing from stage 2 to the subscriber list.”

Stages 1, 2, and 3 run one after another. The three tasks in stage 1 all run at the same time, which is faster than running them one at a time.

When to split work across tasks

Split work when:

  • Two parts can run in parallel. Two searches are a good fit for a single stage.
  • One part has a different tool than another. A search task and an email task should be separate.
  • One part is easier to reason about on its own. A short focused prompt beats a long one that tries to do everything.

When to keep work in a single task

Keep it in one task when:

  • The steps are tightly coupled and the output of one feeds directly into the next with no branching.
  • You want the bot to “think out loud” through the whole thing in a single pass.

See Writing Task Prompts for guidance on the prompt itself.