Prompts

Write the text each step hands to the model, using patterns that hold up in real conversations.

The Start, Agent, Global and End steps each carry a Prompt: the instructions the model follows on that step. Three terms this page uses:

  • Step prompt: the instructions for one step.
  • Persona: tone and standing rules, written once in the Persona card's Global Prompt and added to every Agent and Global step.
  • Variable: a {{...}} placeholder filled in from the conversation's own data. Type {{ in a prompt to pick one.

Scope one prompt to one job

A step's prompt covers one exchange. When the job changes, add a step.

Less effective

You are a booking agent. Greet the caller, find out what they need, check whether
we cover their postcode, collect their name and number, offer three slots, take a
card deposit if the job is over two hours, and confirm everything back to them.
Find out what the caller needs doing and where they are.

Ask what the job is, then ask for their postcode. Do not discuss slots, prices or
payment. A later step handles those. Once you have both, you are done.

Why this matters. A prompt with four goals gives an agent that drifts between them. Split into steps, the shape of the conversation is visible on the canvas, and when something goes wrong you have one step to fix.

End each turn with a handoff

Finish the prompt with something that hands the turn back: ask, confirm, find out. A turn that ends without one leaves both sides waiting in silence. On an End step, do the opposite: say what happens next, say goodbye, and do not ask a new question.

Name steps for the person reading the transcript

Step names show up in call logs, not just on the canvas. Confirm slot and read back details tells you where a conversation went wrong; Agent 4 does not.

Use data from earlier in the conversation

VariableFilled with
{{initial_context.X}}A value known before the conversation started, such as a column from a campaign list
{{gathered_context.X}}A value written earlier in the conversation, such as digits from a Collect Digits step
{{gathered_context.extracted_variables.X}}A value the model took from what the person said at an earlier step
{{gathered_context.tool_outputs.TOOL.X}}A field from a contact lookup's reply (see Steps)
{{current_time_Europe/London}}The current time in that time zone
{{current_weekday_Europe/London}}Today's day name in that time zone

Paths nest, so {{gathered_context.customer.address.city}} works the way you would expect.

Give every variable a fallback

A variable with no value is replaced by nothing at all, leaving a gap in the sentence.

Less effective

Thanks {{initial_context.first_name}}, I'll get that booked for you.
Thanks {{initial_context.first_name | there}}, I'll get that booked for you.

Why this matters. Without the fallback, a contact with no first name hears "Thanks , I'll get that booked for you." Add the | fallback when you write the variable.

Check the value is set earlier on the path

A variable only has a value if something earlier in the conversation writes it. An extraction that runs on one branch is empty on every other branch.

Put persona in one place

Tone, register and standing rules, such as never quote a price, belong in the Persona, written once. So do facts any step may need: opening hours, fees, the address. An agent has at most one Persona.

Why this matters. A persona copied into nine prompts drifts the nine times someone edits one of them. Written once, it cannot.

Next steps

GoalGuide
Choose which step carries the promptSteps
Join steps into a conversationBuilder
Let a prompt trigger an actionTools
Answer from your own documentsKnowledge

Common questions

What is Woise?

Woise lets you build AI agents that answer and make phone calls and chat on your website. You lay out the conversation on a visual canvas, try it in your browser, then connect it to a phone number.

Do I need a phone number to start?

No. You can build and test an agent in the browser without one. When you are ready, connect a phone number and choose which agent answers it.

How does billing work?

You pay for the minutes your agents use, from your credit balance. There are no seat fees and no per-agent fees, so an agent that is not taking calls costs nothing.

Which languages can an agent speak?

Agents can listen and speak in more than 40 languages, including English, Spanish, Hindi, Tamil and Arabic. You pick the language and the voice for each agent.

Can an agent connect to my CRM or calendar?

Yes. An agent can look things up and make changes in 26 apps, such as Salesforce, HubSpot, Google Calendar, Slack and WhatsApp, during the call. You connect each app once.

Do I need engineers to build an agent?

No. Everything is built in a visual editor, so you can create and change an agent without writing code. If your team prefers code, there is also a REST API and an MCP server.

What happens to call recordings and transcripts?

Every call keeps a transcript and its outcome, and audio is only recorded if you turn it on. Only people in your account can see your calls, and your account lives in the region you chose when you signed up.

What do I have to set up or run?

None. We run the speech, the language models, the recordings and the phone connections, and scale them with your call volume. There is nothing for you to set up or keep running.

How do I reach the team?

Email contact@woise.ai, call or WhatsApp +91 83412 34080, or use the form on our contact page. A person reads every message.

Still stuck? Talk to our team.