Skip to content

Workflows

A workflow is a guided, step-by-step procedure: a fixed sequence of steps, each one either a plain conversational turn or a call to a single tool, that you launch and fill in a short starting form for. Once it's running, Stoa drives it forward step by step on its own, each step's result feeding into what happens next, rather than you having to prompt it forward turn by turn.

Think of it as the difference between chatting your way through a routine request and clicking a button that carries out a procedure someone has already worked out for you: file this ticket, set up this new starter, raise this request, in the same order and the same way every time.

Where to find them

Open Workflows from the main navigation. There are three tabs:

  • Catalog. Every workflow you can see: yours, and any that have been made public.
  • My runs. Every run you've launched, with its status and progress.
  • Approvals. Only shown if you're allowed to approve gated steps. Every run currently parked waiting on you.

A small badge next to Workflows in the sidebar, and on the Approvals tab, shows how many approvals are waiting on you right now.

What a workflow looks like

Each entry in the catalog shows its name, category, and description, a row of dots, one per step (a plain dot for an ordinary step, a ringed dot for one that stops to ask someone first), and whether it's Public (shared with everyone signed in) or Private (yours alone). A workflow that can no longer run as authored, because a tool it names has left the catalog, shows a warning icon explaining why.

Launching a run

Click Run on a workflow's card. You'll see:

  • The launch form. Whatever starting fields the workflow declares: short text, a number, yes/no, or a choice from a fixed list, each marked if it's required. This is the only chance to answer them, since nobody is prompted for more once the run is underway.
  • The plan. Every step, in order, with the tool it calls (if any) and whether it stops to ask someone before it goes ahead.

Click Launch and the run starts inside a normal chat conversation.

An example

A five-step "New starter IT setup" workflow, say, asks for the new starter's name and the team they're joining, then works through: stamping the request with a timestamp, checking the staff portal is reachable, issuing a temporary password, filing the IT ticket, and notifying the IT team. Steps that just call a simple tool like this typically finish in a few seconds each, so a run like that is often done well within a minute of being launched.

Watching a run

A run lives inside its own chat conversation, with a header at the top showing the workflow's name, its status, which step it's on ("Step 3 of 5"), how long it's been running, and what you answered on the launch form.

Below that, the steps show as a checklist: a box for each one, ticked once it's done. Each row shows:

  • Its state: to do, running, waiting for approval, done, failed, or stopped.
  • How long it took, or how long it's been going if it's still running.

The step currently underway, or the one it's stuck on, opens automatically so you can read what's happening; finished steps collapse, and you can click any row to open or close it yourself. What each step actually said or did sits inside its row once you open it, the same conversation you'd see in an ordinary chat, just grouped by which step it belongs to.

You don't need to keep the tab open. A run keeps going in the background, and you can come back to the conversation later to see where it's got to.

Gates: steps that stop to ask

A step can be set up to stop and ask before its tool call actually runs. There are two kinds:

  • Confirm. The call pops up right there in the chat for you, the person who launched the run, to approve or deny before it goes ahead. Answer it and the run carries straight on.
  • Approve. The whole run parks and waits for someone else, never the person who launched it, to sign off. You'll see "Waiting for an approver" in the conversation, with what it's asking to do.

Answering an approval

If you're allowed to approve, open Workflows > Approvals (or the badge next to Workflows) to see every run currently parked on you. Each one shows which workflow, which step, how long it's been waiting, and the exact tool and arguments it wants to call, byte for byte what would actually run. From there you can:

  • Approve and execute. The call runs immediately, and the run carries on to its next step.
  • Refuse. Optionally leave a note explaining why; the requester sees it. Refusing ends the run.

The same review and buttons also show inline, right where the run is parked, if you open its conversation directly.

A workflow's steps can name specific people as its approvers, in which case only they can answer that step; leave that blank and anyone with permission to approve can. Either way, you can never approve your own run, someone else always has to say yes. If your organization has outgoing mail set up, eligible approvers get an email when a run parks waiting on them; either way, the badge and the Approvals tab always show it.

Stopping a run

A run that's running or waiting for approval can be stopped from wherever you're looking at it: the stop button in the run's own header inside the chat, or from its row under My runs. You'll be asked to confirm. The run stops exactly where it stands, whatever it already did stays on record, and it can't be resumed.

Building your own

Click New Workflow to build one. Anyone can create a workflow; it stays private to you until you make it public, and administrators can additionally manage anyone's. The editor covers:

  • Identity. Name, category, and the description shown in the catalog.
  • Who runs it, and who may. Which agent answers each step, and the Public switch.
  • Launch form. The fields collected before a run starts, each with a name, a label, a type (text, number, yes/no, or a fixed list of choices), and whether it's required. Never put a password or any other credential here, what's entered is kept on the run's own record.
  • Steps. Each one has a title, an instruction (what the assistant is told while that step is current), and at most one tool, or none for a purely conversational step. Gate a step that changes something: choose Confirm to ask the requester, or Approve to require someone else, and optionally name exactly who.

Editing a workflow only affects runs launched after the change; a run already underway keeps the steps it was launched with. Deleting a workflow leaves its past runs and their conversations exactly as they were.

Scheduling a workflow

A workflow where every step calls a tool, and none require the requester's own confirmation, can be put on a recurring schedule instead of launched by hand each time. See Schedules.

Where to next

  • Schedules for running a workflow on a recurring cadence.
  • Chats for how a run's conversation works day to day.
  • Agents for the assistant that answers each step.
  • Tools for what a step's tool call actually does.

Stoa, a MicroApps product.