Documentation
Agentic communication infrastructure.
Everything to build agents and agentic SaaS that talk to people: channels, phone numbers, voice and text agents, serverless functions and memory. One API.
import { defineAgent, defineTool } from "@zavudev/functions"
defineAgent({
senderId: process.env.SENDER_ID!,
name: "Bella",
provider: "zavu",
model: "openai/gpt-5.6-luna",
prompt: "You are Bella, host at the pizzeria. Keep it short.",
channels: ["whatsapp"],
})
defineTool({
name: "check_availability",
description: "Free reservation slots for a date and party size.",
parameters: {
type: "object",
properties: { date: { type: "string" }, partySize: { type: "number" } },
required: ["date", "partySize"],
},
handler: async ({ date, partySize }) => {
return { available: true, slots: ["19:00", "21:00"] }
},
})Start here
Deploy an agent
Declare it and its tools in TypeScript, run one command, and it answers on every channel, by text or by phone.
Run your code on ZavuServerless TypeScript functions on messaging events, on a schedule, or behind a URL. Deploy from the CLI or from GitHub.
Send and receiveOne request on any channel, one webhook contract for everything that comes back.
The platform
Reference
- API v1 referenceEvery endpoint, with a request you can send from the page.
- API v2Send from an address instead of a sender. One webhook per project.
- TypeScript SDK@zavudev/sdk, generated from the same spec.
- CLIThe API resource by resource, plus deploys.
- Webhook eventsEvery event Zavu sends, and its payload.
- Agent skillsTeach Claude Code, Cursor and Codex the API.