Tutorial 13
Run a workflow
Chain prompts, agents, and humans into ordered steps so repeat work always follows the same path — and watch each task move through the steps on a kanban board.
Plus: three prompts that turn the Admin Agent into your workflow design partner — sketching the right shape, debugging a stuck task, and converting a 'we always do this' pattern into a workflow you can hand off.
| Audience | Admins · Developers |
|---|---|
| Time | ~10 min |
| Prerequisites | An Auxot account on any tier. At least one custom agent (Tutorial 07). Helpful: a recurring multi-step process you'd like to automate — something like 'customer signs up → research them → draft a welcome email → human approves → send it'. |
| You'll end up with | One working workflow with at least two steps, plus a clear sense of when a workflow is the right tool versus when a single agent is. |
Why this matters
Custom agents are great at handling one kind of work. But a lot of business work isn’t one kind of work — it’s a sequence. Customer signs up: research them, draft a welcome message, have a human approve it, send it. Contract comes in: extract the key terms, run them past compliance rules, flag the deviations, route to a human for review. Same shape every time, several handoffs along the way.
That’s a workflow.
A workflow in Auxot is a sequence of ordered steps, each handled by either a prompt (a one-shot text request), an agent (one of your custom agents), or a human (someone you assign). Tasks enter the workflow at the entry step and travel through the steps in order, with handoffs routing them along (and sometimes branching based on the step’s output).
You watch tasks move through the workflow on a kanban board. Each step is a column. Tasks land in the right column when they’re being worked on, and move to the next when the step completes. Done tasks land in “Recently completed.”
Today, build one. Tomorrow, the work that’s been a sequence of manual steps starts running itself, with a human in the loop only where you decide one needs to be.
A workflow chains prompts, agents, and humans into ordered steps. Tasks enter via a manual button or a webhook (an “intake”), travel through the steps with handoffs routing them along, and you watch the whole thing move on a kanban board.
Quick start
- Sign in — open Auxot in your browser and log in.
- Open Workflows — click Workflows in the left menu.
- Click New workflow — name it (something like “Customer onboarding”), pick a team if prompted, save.
- Add a few steps — each step is either a prompt, an agent, or a human. Connect them with handoffs (the “Routes to: …” footer on each step card).
- Add a task — click New task to drop your first work item into the workflow’s entry step. Watch it move through the kanban board as each step completes.
Done? You’ve run your first workflow. The rest is figuring out which of your business processes deserve to become workflows next.
The agent can do that?
The Admin Agent can’t create workflows for you in the current version of Auxot — workflow CRUD isn’t in his tool set yet. But he can do the design and advisory work that makes workflow-building much faster. Three prompts.
1. Sketch the workflow shape from a description
Open chat with the Admin Agent and describe the process you want to automate, then ask:
I want to automate this process: [describe what happens today, step by step in plain English — e.g., "When a customer signs up, we research the company, draft a welcome email, have a manager approve it, then send it"]. Sketch this as an Auxot workflow — what should the steps be, which should be prompts vs agents vs humans, and what handoffs (with conditions) should connect them? List the steps in order.
Why it’s non-obvious: Designing a workflow is its own skill — knowing when to use a prompt vs an agent vs a human, where to put approvals, when to branch. The Admin Agent reads your plain-English process description, maps it onto Auxot’s primitives, and gives you a step-by-step sketch you can build directly. Saves the “wait, should this be a prompt or an agent?” loop most people get stuck in on their first workflow.
2. Debug a workflow that’s stuck
When a task is sitting in a step longer than you’d expect — or moved somewhere you didn’t want it to go — open the workflow’s audit logs (Tutorial 12) and copy a few recent rows, then ask:
My "[workflow name]" workflow has a task that's been stuck at the "[step name]" step for [how long]. Here's what I see in the audit logs: [paste 3-5 relevant rows]. What's most likely happening, and what should I check first? If a handoff condition is wrong, tell me how to rewrite it.
Why it’s non-obvious: Workflow debugging is part configuration, part agent behavior, part data-flow logic — three different kinds of detective work at once. The Admin Agent can read the audit log evidence, cross-reference your workflow’s step config and handoff conditions, and tell you whether the issue is in the workflow design, the agent’s behavior, or the input data the task is carrying. Fifteen seconds beats an hour of clicking around.
3. Convert a recurring manual pattern into a workflow
When you catch yourself doing the same multi-step thing in Auxot manually, ask:
I keep doing this same set of steps manually: [describe the steps you do, in order, every time it comes up — e.g., "Open the customer's email, ask my Research Agent for background, ask my Brand Voice Agent to draft a reply, copy it to my drafts, send it"]. Should this be a workflow? If yes, sketch the workflow shape — what steps, what handoffs, where should I put a human step. If no, tell me why a single agent (or another tool) would be better.
Why it’s non-obvious: The honest “or another tool” clause is the value. Not every recurring pattern deserves its own workflow — sometimes a sharper agent description (Tutorial 05) does the same job with less infrastructure. The Admin Agent will tell you which case you’re in instead of helping you build a workflow you didn’t need. “What’s the simplest tool that does this?” is a question most people don’t think to ask.
Go deeper
When a workflow is the right tool (and when a single agent is)
A single agent is the right tool when:
- The work fits in one back-and-forth: one input, one answer.
- The agent has all the context, tools, and voice it needs to do the work alone.
- There’s no human approval step that needs to interrupt.
A workflow is the right tool when:
- The work has multiple stages, each requiring different specialization (research → draft → review → send).
- Different agents handle different stages (your Research Agent, your Brand Voice Agent, your Compliance Agent).
- A human needs to approve or intervene at a specific point.
- The same shape repeats over and over with different input data — and you want every instance to follow the same path.
- You want to trigger the work from outside Auxot (a form, a webhook, a schedule).
If the answer to “can a sharper agent description do this?” is yes, do that first (Tutorial 05). If it’s no, build the workflow.
Step types — when to use prompt vs agent vs human
Prompt step:
- Self-contained transformation (translate, summarize, extract, classify).
- Doesn’t need business context, tools, or your specific voice.
- Cheap and fast — uses whichever model your workflow routes to, no agent overhead.
Agent step:
- Needs your business voice, context files, or a specialized capability.
- Should integrate with the rest of your agent system — same tools, same knowledge, same constraints.
- One agent might handle several steps in the same workflow if its job naturally spans them.
Human step:
- Requires judgment, approval, or accountability.
- Pauses the task until the assigned person marks it done — set expectations with whoever’s assigned (the workflow won’t progress until they act).
- Useful as a “safety valve” between two automated steps when the cost of a wrong answer is high.
Handoffs and branching
A handoff is “after this step completes, route the task to that step (or end the workflow), based on this condition.”
Conditions are how workflows branch:
- “approved” → route to the next step.
- “rejected” → route to a human-handles-the-rejection step (or back to the drafting step for another try).
- “default” → fallback when no other condition matches.
A single step can have multiple handoffs with different conditions. The output of the step (what the prompt/agent/human produced) determines which handoff fires.
For deterministic outputs, an output schema (JSON) makes branching reliable — the agent’s output is parsed, and conditions match against fields. For free-text outputs, the LLM that runs the next step infers the condition naturally.
Triggers — manual, webhook (intake), and via cron
Three ways tasks enter a workflow:
- Manual — the New task button. Useful for testing, for one-offs, and for processes where a human always kicks things off.
- Webhook (Intake) — an external service POSTs to the intake URL. Useful for integrations: a form submission, a Slack message, a CRM event, a Stripe webhook.
- Cron (via an Admin Agent action) — Auxot’s
create_cronlets you set up a scheduled prompt to an agent. That agent’s output can be configured to call into a workflow’s intake URL, effectively giving you scheduled workflow triggers. (Workflow-native scheduling isn’t yet in the UI; this is the workaround.)
Tutorial 11 covers Team API Keys, which is what you’d typically use to authenticate webhook calls into your intakes.
Troubleshooting
- A task arrives at the entry step but doesn’t move. Most likely no handoff is configured on that step. Click the step card, look for the “Routes to:” footer, add one.
- A task moves to the wrong next step. A handoff condition is matching when it shouldn’t. Check the conditions on the previous step — if you have multiple, the order they’re evaluated matters.
- A human step has been pending forever. Check who’s assigned. If they’re not in the system or didn’t get notified, no one’s going to act on it. Re-assign or follow up.
- An agent step keeps producing wrong-looking output. The issue is usually the agent’s Description (Tutorial 05) or its attached context files (Tutorial 04), not the workflow itself. Tighten the agent’s job description and try again.
- Intake POSTs return 401 Unauthorized. The Team API Key isn’t authenticating. Check the key is current (not revoked, not expired) and that it has access to the intake’s team.
- A task is stuck “running” with no progress. Check the workflow’s provider — if all routing options are over quota or offline, the task waits. Tutorial 03 (System Health) shows your providers’ status.
Variations & edge cases
- Free tier and Team tier support workflows the same way Business and Enterprise do — no tier-locking on the feature itself. Multi-team scoping (assigning workflows to specific teams) is Business and Enterprise only.
- Pausing a workflow. Use the Pause toggle on the detail page. The banner reads: “This workflow is paused. Tasks already running keep going, but new ones won’t start until you activate it.” Useful when you’re making changes and don’t want new tasks landing in a half-built shape.
- A workflow with no handoffs is a dead end. Tasks arriving at it sit forever. Auxot doesn’t auto-fail them. The workflow just stops.
- Step parallelism is per-provider, not per-workflow. If two tasks both hit the same step at the same time, they run in parallel up to the provider’s max-parallel limit. Beyond that, they queue. Auxot’s queue-don’t-fail design applies — tasks wait, they don’t error.
- There’s no built-in “retry on failure” at the workflow level. Failed tasks stay failed; you’d start a new task with the same input. (For agent-level retries within a step, the agent’s behavior or context files are the right fix.)
- No dedicated “Workflow Runs” page. Active tasks live on the kanban board; completed ones go to “Recently completed” (showing the 20 most recent). For older history, use Audit Logs (Tutorial 12) — every workflow task creates jobs and threads that show up there.
- Workflows aren’t currently visible to the Admin Agent. He can’t list them, edit them, or trigger them via tool calls — those tools aren’t in his set. He can advise on design (the Power Moves above), but the build and run happens in the UI.
Walkthrough
Step 1: Sign in
Open Auxot in your browser and sign in.
Step 2: Open Workflows
Click Workflows in the left menu. The page’s helper text frames the concept: “Run tasks through ordered steps — each handled by a prompt, an agent, or a person — so repeat work always follows the same path.”
If this is your first workflow, you’ll see an empty state: “No workflows yet. Create one to run tasks through a sequence of steps — each handled by a prompt, an agent, or a person.”
Step 3: Create a new workflow
Click New workflow. A modal opens. Fill in:
- Name — “What this workflow does — a short handle you’ll see in the workflow list.” Keep it descriptive: “Customer onboarding,” “Contract intake,” “Press mention triage.” Required.
- Description — optional notes. Skip on the first one; come back later if it gets ambiguous.
- Team — only appears if your account has more than one team. Pick which team owns this workflow.
Click Create. Auxot drops you into the workflow’s detail page — an empty kanban board waiting for steps.
Step 4: Add steps to your workflow
The detail page has a “How workflows work” toggle that’s worth opening on your first time. The explainer says it well:
“Each step is handled by either a prompt, an agent, or a human — pick one:
- prompt — a text request (no tools, no context)
- agent — one of your agents (has its own tools and context)
- human — a person you assign (work pauses until they act)
Tasks move through the steps in order. The badge on each step shows who does the work.“
Three handler types, three different behaviors:
a. Prompt step
A prompt step is the simplest: a text instruction sent to whichever AI model your workflow’s provider routes to. Use a prompt step for a self-contained transformation that doesn’t need your business knowledge — “Translate this text to Spanish” or “Extract the company name and contact email from the text below.”
b. Agent step
An agent step delegates the work to one of your custom agents. The agent uses its own context files, tools, and Description to handle the task. Use an agent step when the work needs your business voice, your context, or a specialized skill — “Draft a customer welcome email” (your Customer Support Agent), “Research this company” (your Research Agent), “Summarize this contract for compliance issues” (your Contract Reviewer).
c. Human step
A human step pauses the workflow and assigns the task to a person you specify. The task waits in that step’s column until the human marks it done. Use a human step when something requires judgment or approval — “Approve this draft before sending,” “Confirm the contact info is right,” “Pick the right escalation path.”
Click into each step card to configure it. Set the handler type, fill in the prompt/agent/instructions, and save. Steps default to position-ordered — drag to reorder if needed.
Step 5: Connect steps with handoffs
A workflow with steps but no handoffs doesn’t go anywhere — tasks would arrive at the entry step and just sit there. Handoffs are how a task moves from one step to the next.
On each step card, look for the “Routes to:” footer. Click Add next step (the dashed call-to-action when no handoff exists yet) and pick:
- Which step to route to — the next step in the sequence, or “complete” (which ends the workflow for this task).
- A condition name — like “approved,” “rejected,” “default” — describing when this handoff fires. The condition is the workflow’s branching mechanism: a single step can have multiple handoffs going to different next steps based on the output.
- (Optional) An output schema — JSON schema describing what data this step produces and passes forward. Skip on your first workflow; come back when you need structured outputs.
A workflow with steps + handoffs forms a sequence (or a branching decision tree) that tasks travel through.
Tip: Sketch the workflow on paper or a napkin first — boxes for steps, arrows for handoffs, labels for conditions. Building it in the UI is faster when you already know what shape you’re aiming for. Power Move 1 below has the Admin Agent help you with the sketch.
Step 6: Add a task and watch it run
Now the fun part. Click New task at the top of the workflow detail page. Tooltip: “Add a single task to this workflow by hand.” A small modal accepts the input — typically a piece of text, a name, a request — that the entry step will receive.
Submit. The task drops into the entry step’s kanban column. Within a few seconds (depending on whether the step is a prompt, an agent, or a human), the task starts processing.
You’ll see it move:
- Entry step → next step as the first step completes.
- Through each step as handoffs route it along.
- Into the “Recently completed” column at the bottom right when it reaches a “complete” handoff.
If a step fails or hits an error, the task pauses there — click into it to see the full execution log: which step handled it, the model used, tokens spent, the error message if any.
Step 7 (optional): Set up an intake for webhook triggers
Manual “New task” is fine for testing. For real automation, you want intakes.
An intake is a webhook URL that external services can POST to. When something arrives, Auxot creates a new task and drops it into the workflow’s entry step automatically. Use intakes to wire workflows up to:
- A form submission (someone signs up → start the onboarding workflow).
- A Slack message (someone posts a question → start the triage workflow).
- A scheduled job (every Monday at 9am → start the weekly summary workflow).
- An external service’s webhook (Stripe, GitHub, your CRM).
Click Intakes on the workflow detail page (tooltip: “Webhook URLs outside services can call to drop tasks into this workflow”) to see existing intakes or add a new one. Each intake gives you a URL to share with the external service plus authentication (typically a Team API Key — Tutorial 11).
Tip: Authenticate intakes with a Team API Key, not a personal one. The intake will outlive any one person’s account.
What’s next
- → Tutorial 12: View your audit logs — every task that runs through a workflow generates audit-log entries. Useful for monitoring and debugging.
- → Tutorial 11: Create a shared Team API Key — for authenticating external services that POST to your workflow intakes.
- → Tutorial 07: Create an agent from scratch — workflow agent steps are only as good as the agents they call. Sharper agents make better workflows.
Reference
- Pages in Auxot: Workflows (
/app/workflows), Workflow detail (/app/workflows/:id) - Three step handler types: prompt | agent | human
- Trigger paths: manual (New task button) | webhook (Intakes) | scheduled (via agent cron + intake URL)
- Branching mechanism: handoff conditions on each step (one step can have multiple handoffs)
- View modes: kanban board (active work) + Recently completed (last 20)
- Permissions: team-scoped — users see workflows on their teams; intake authentication via Team API Keys
- Tier: all tiers; multi-team scoping requires Business or Enterprise
- See also: Tutorial 11: Create a shared Team API Key, Tutorial 12: View your audit logs