Generate Text and Values With AI
Add an AI step to an automation that turns an instruction into a value — then reuse that value in later actions like a Slack message, email, or field update.
The Generate with AI action runs a mini AI step in the middle of an automation. You give it an instruction, it produces a value, and that value becomes a token later actions can drop into a Slack message, an email, or a record field.
Think of it as a composable building block: it doesn't send anything on its own — it produces something for the next steps to use. New to automations? Start with Automations Overview.
How It Works
You configure four things:
- Instruction — what you want, in plain language. This is the prompt. It can reference the trigger with
{{ row.* }}tokens, e.g. "Write a 2-sentence, upbeat post announcing that{{ row.title }}is live. No hashtags." - Output name — a short name (letters, numbers, underscores) for the result. Later actions reference it as
{{ ai.<name> }}. - Output type — Text, Number, Date, or Yes/no. This both cleans up the result and tells the AI what shape to return, so a free-text instruction still yields a tidy typed value.
- Format hint & max length (optional) — extra guidance like "max 200 characters, no emoji."
The record that triggered the automation is handed to the AI as context automatically, so your instruction can say "this idea" and reference its fields without you spelling out every detail.

Using the Result
Once the step runs, its value is available to every action after it as {{ ai.<name> }}. Two common patterns:
- AI content in a message
Add a Generate with AI step named
announcement, then a Send a Slack message (or email) action whose body is{{ ai.announcement }}. - AI-fill a field
Add a Generate with AI step, then a Create / update a record action and set a field's value to
{{ ai.<name> }}. The output type keeps the value in the right shape for the field.
Tips
- Steer with the instruction. The prompt is your control knob — be specific about tone, length, and what to avoid.
- Match the output type to how you'll use it. Choosing Number or Date makes the value drop cleanly into a numeric or date field; Yes/no is handy for conditions in follow-up automations.
- Keep it short when you can. A max length keeps messages tidy and runs cheap.