No tool schemas.
One line of prompt.
Your agent can already transfer a caller, text them mid-call, hold the line while they find something, and end gracefully. You do not register a tools array or define a function schema. You write one line telling it when, and the engine handles the rest.
A Nixflex agent triggers built-in actions by emitting a tag inside its reply. The engine strips the tag before anything is spoken and performs the action, so transferring a caller, sending a text, holding the line or ending the call each take a single line in your prompt rather than a registered tool definition.
HOW IT WORKS
How do you give an agent an action?
Add an actions block
Put a short ACTIONS section in your system prompt with one line per action you want available, written the way you would brief a receptionist on their first day.
The agent decides the moment
When the conversation calls for it the agent emits the tag inside its reply. You do not script branches, and you do not register a schema for any of it.
The engine strips and runs it
The tag is removed before anything is spoken, so the caller hears only your sentence, and the engine performs the action. Several tags in one reply run in order.
THE BUILT-IN ACTIONS
What each action does
| Action | What happens | A prompt line that uses it |
|---|---|---|
Transfer | Hands the caller to a human, cold or warm | Transfer to the manager if the caller asks for a refund |
Send SMS | Texts the caller while still on the call | Text the details once a booking is confirmed |
Wait | Holds the line instead of treating silence as a dropped call | If the caller needs a moment, say you are happy to wait |
End call | Ends gracefully, for when you want tighter control than the natural ending | End the call once the booking is confirmed |
The agent already ends a call when the conversation finishes naturally, so the end-call action is about control rather than necessity.
BEYOND THE FOUR
What else is already in the toolbox?
Keypad input, for the things speech gets wrong
Reading a card number aloud is where recognition fails worst. Callers can type instead, and the digits arrive marked as typed rather than spoken. An entry ends on hash or a three second pause that restarts with every press, so a slow typer is never cut in half. Off by default, switched on per agent or per number.
Booking, finished before they hang up
Connect a calendar and the agent checks real availability, books, reschedules or cancels while the caller is still on the line. The time and reference come from the calendar, not from the model, so what it confirms is real.
Your own API
Custom functions let it reach your systems mid-call.
Voicemail detection
It knows a machine answered and follows your instruction.
Fifteen languages
It answers in the language the caller uses.
Post-call analysis
Summary, sentiment and extracted fields, every call.
WHY IT IS A TAG AND NOT A SCHEMA
The action fires. You still write the words.
A tag only triggers the action; the sentence around it is whatever your prompt tells the agent to say. That keeps the wording yours rather than a vendor default, and it keeps setup to a single readable line instead of a JSON definition per capability. It also means an agent can do two things in one breath, texting a confirmation and then closing the call, without you orchestrating anything.
QUESTIONS
Agent tools, answered
What tools can a Nixflex voice agent use?+
Out of the box it can transfer a caller to a human, send them a text mid-call, hold the line when they step away, and end the call gracefully. It can also take keypad input, book live in a connected calendar, and call your own API through a custom function.
How are built-in actions triggered?+
The agent emits a tag inside its reply, such as a transfer tag or an SMS tag, and the engine intercepts it. There is no tools array to populate and no function schema to define; a line in your prompt describing when to use the action is the whole setup.
Does the caller ever hear the tag?+
No. The engine strips the tag out of the reply before the text is spoken, so the caller hears only the sentence you told the agent to say. The tag exists purely as a signal between the model and the engine.
Can the agent use more than one action in a single reply?+
Yes, and the engine runs them in order. A common pattern after a booking is to text the confirmation and then end the call, which is one reply containing two tags and reads perfectly naturally to the caller.
Do I have to tell it to end the call?+
No. The agent ends a call on its own when the conversation naturally finishes. The end-call tag is there for when you want tighter control, such as ending immediately once a booking is confirmed rather than letting the chat drift.
What happens if a caller needs a minute?+
The wait action covers that. A long silence normally looks like a dropped line, so the agent emits a wait tag when the caller asks for a moment and the engine holds instead of hanging up. If the wait runs out it checks whether they are still there before ending politely, and you set the length in the agent Call Ending settings, which default to thirty seconds.
Can callers type instead of speak?+
Yes. Keypad input is off by default and switched on per agent or per number. Digits arrive as a caller turn marked as typed rather than spoken, and an entry finishes when the caller presses hash or pauses for three seconds, with that pause restarting on every press so long numbers are never cut in half.
When do I need a custom function instead?+
When the answer lives in your systems. Built-in actions cover what happens to the call itself; a custom function is how the agent looks something up, writes to your CRM, or checks an order while the caller waits on the line.
Give your agent its first action.
Add one line to the prompt and the next caller can be transferred, texted or held.
Last updated August 2026