Prefer to send messages from your own backend instead of deploying code here?
Start with the messaging quickstart.
1. Install the CLI
2. Log in
~/.zavu/credentials.json with mode
0600.
Confirm which project you are pointed at:
3. Scaffold an agent
agents init is the guided path. It picks a factory agent, finds or creates the
sender it runs on, writes the files, and registers the function.
Pull a specific agent
Pull a specific agent
./fermi, registers the function, and sets the SENDER_ID
secret from the sender you passed. Use --dir to scaffold elsewhere.Start from an empty function instead
Start from an empty function instead
index.ts to write defineAgent yourself. The
Functions quickstart walks that path in
full.I have no sender yet
I have no sender yet
An agent answers on a sender, and a sender needs at least one channel.
The fastest channel to turn on needs no phone number and no external
account:Recipients cannot reply on one-way SMS, so use it to verify the deploy
works, then add a real channel.
npx zavudev agents init --buy-number buys a number and creates the
sender for you instead.4. Install dependencies
fn invoke,
tsc --noEmit, and your editor all need the dev dependencies installed.
5. Look at what you got
The scaffold is one file, and it is the whole agent. (You can split it up later — imports between your files are resolved on deploy.)index.ts
SENDER_ID is listed by agents pull when it
finishes. Set each one before deploying:
6. Try a tool without deploying
7. Deploy
defineAgent you delete deletes the agent.
8. Talk to it
Message the sender’s number from your phone, or call it if the agent has voice enabled. To check the reply without touching a real channel:A dry run never executes tools, because a test must not cause real side
effects. It tells you so in its warnings. Live conversations on every channel
do call them.
9. Watch it run
Next steps
How agents work
What a deploy actually does, and what happens when a message arrives
Defining agents
Every field of
defineAgent, including voiceDefining tools
Give the agent access to your systems
Knowledge bases
Ground the answers in your own documents
Voice agents
Answer and place phone calls with the same agent
Bring your framework
Deploy an eve project without restructuring it
