What an automation can do
You never write these building blocks yourself — you describe an outcome and the assistant assembles the right ones. But it helps to know the full range of what an automation is capable of, because it tells you what you can ask for. This is the complete palette: bringing information in, making a judgment, reshaping data, doing something with the result, and controlling how it all flows.
You describe, it assembles
These are the parts the assistant reaches for — not a syntax you have to learn.
When you say “watch this page, and if the price drops more than 10% below its weekly average, text me,” the assistant translates that into a recipe: fetch the page, record the price to a time series, compare it against the seven-day average, and deliver a message only if the condition holds. You never assemble that yourself. This page exists so you know the vocabulary of the possible — the more you know an automation can do, the more precisely you can ask.
Bringing information in
Every automation starts by getting something to work with.
| Capability | What it does | Spends AI? |
|---|---|---|
| Fetch a page or API | Pulls a web page or a JSON API. It can be made incremental: it remembers what it has already seen and hands the recipe only genuinely new entries, so re-ordered or re-published items don’t trigger anything. The first run quietly establishes a baseline and delivers nothing. | No |
| Read an image | Reads a receipt, invoice, screenshot, or photo with a vision model and lifts exactly the fields you named — vendor, date, total, anything. Fields it can’t find come back empty rather than guessed. | Yes |
| Transcribe audio | Turns a voice note or recording into text you can then summarize, route, or file. | Yes |
Fetching is the workhorse. Because it can be incremental, “tell me about new postings on this job board” delivers each new posting once and never repeats itself, even though the page changes constantly.
Making a decision
The steps where a model earns its keep — and the only routine place AI is spent.
| Capability | What it does | Spends AI? |
|---|---|---|
| Classify | Sorts the input into categories you define — “serious lead” vs “junk,” “urgent” vs “can wait” — and returns the category with a confidence score and a short reason. A single bounded call. | Yes |
| Filter | Stops the run when a condition isn’t met, so nothing downstream happens. Inside a loop it skips just that one item. This is how “only if it actually changed” is enforced. | No |
| Summarize | One bounded call that writes a digest, a summary, or a short piece of prose from what the earlier steps gathered. | Yes |
| Branch | Real if / else-if / else paths — the first matching case runs its own steps. Route a support email one way and a sales email another, in a single automation. | No |
Reshaping data
Turning what came in into what you want out — all deterministic, all free.
| Capability | What it does | Spends AI? |
|---|---|---|
| Compute | Deterministic math over your data: sum, count, average, min, max, first, last, pluck a field, de-duplicate, sort, take the top N, round, differences and percentage changes, date arithmetic. “Add up the totals” is this, not a model call. | No |
| Template | Composes a piece of text from earlier results — the body of the email, the message you’ll receive, the row you’ll file. | No |
| Transform | Reshapes or parses data into a cleaner form — turning a raw payload into just the fields you care about. | No |
| Remember | Cross-run memory: save a value on one run and read it back on the next. Crucially, it also hands back the previous value, which is what makes “did this change since last time?” and threshold alerts possible. | No |
| Record a series | Appends a number — a price, a follower count, a ranking — to a named time series. Later steps can read its latest value, its previous value, its seven-day average, its percentage change, and its count. This turns any-change alerts into trend alerts. | No |
Trends instead of tripwires
The record and remember capabilities are what let an automation reason about movement rather than just difference. “Alert me when this metric drops 12% below its weekly average” records the value each run, then compares it to the seven-day average — a real trend threshold, not a naive “it changed.” The recorded history also feeds a small chart on the automation’s board so you can see the line over time.
Doing something with it
Where the result goes — a message, a tool, a file, or generated media.
| Capability | What it does | Spends AI? |
|---|---|---|
| Deliver | Sends the result by chat, email, or Slack. Chat always lands in the automation’s own home conversation; email and Slack go where you connected them. Delivery is confirmed — a failed send is recorded as a failure, never silently swallowed. | No |
| Run a connected tool | Automatically runs any of the platform’s tools on your behalf: save a lead to your CRM, open a task, advance a pipeline, post outreach, write a row to a sheet, and more. This is how an automation writes into the product and into the tools you’ve connected. | No |
| Store a file | Saves text or a fetched file and returns a private link that expires — safe to drop into an email or a sheet. | No |
| Generate speech | Turns text into an audio file — a spoken briefing, for instance — and returns a link. | Yes |
| Generate an image | Creates an image from a description and returns a link. | Yes |
Controlling the flow
How steps repeat, branch across contacts, and pause for time or for you.
| Capability | What it does | Spends AI? |
|---|---|---|
| Loop over a list | Runs a set of nested steps once per item in a list — each new posting, each row, each lead. Bounded to keep cost predictable, and because paid steps inside a loop multiply per item, the assistant tells you when a loop will cost more. | Only if a step inside does |
| Enroll in a sequence | Places a contact into a multi-step, multi-day sequence. Each contact moves through it on its own independent clock, so a hundred people can be at a hundred different stages at once. | Only if a step inside does |
| Wait | Inside a sequence, pauses a single contact for a set time — a minute, three days, a month — then resumes them automatically. This is the drip between messages. | No |
| Pause for your approval | Inside a sequence, parks a contact until you approve or reject it in chat. Nothing sends without your yes, and an unanswered gate expires on its own so nothing goes out by default. | No |
Sequences, waits, and approvals together are the drip-campaign primitive — covered in full on Approvals and sequences. The important idea here is that time is a first-class part of an automation: “wait three days, then follow up” is a normal thing to ask for, and each contact’s clock runs independently.
Conditions and fail-closed gates
Every step can be told to run only when something is true — and the default is caution.
Any step can carry a condition: run this only if the lead was classified serious, only if the price actually moved, only if the feed had new items. Conditions compare values the earlier steps produced against numbers, text, or each other, and can be combined with and / or / not.
The safety rule is that gates fail closed. If a condition can’t be evaluated for any reason — a missing value, a malformed comparison — it is treated as false, and the guarded step does not run. An automation will never send, write, or spend because a check was ambiguous; ambiguity always means “don’t.”