Callbacks, not prompts
on_question and on_intent fire when the caller needs something outside the checklist. You return the answer — Guava keeps the conversation alive.
Production-grade SDK. Deterministic + agentic hybrid runtime. Sub-1s end-to-end. SOC 2 II · HITRUST i1 · PCI DSS L1 certified. Designed for engineers who’ve shipped voice before.
from guava import Agent, Field, Sayagent = Agent( name="bright-smile", organization="Bright Smile Dental", purpose="appointment scheduling",)@agent.on_call_startdef greet(call): return Say("Hi, this is Gaby with Bright Smile.")@agent.on_question("appointment_time")def schedule(call, value): return Field("appointment_time", validate=lookup)agent.listen_phone()# sub-1s end-to-end · audit log streaming
Define an Agent, set a task, and Guava handles voice synthesis, turn-taking, and context management automatically.
import guava, schedulingagent = guava.Agent( organization="Bright Smile Dental", purpose="Help patients schedule dental appointments.",)@agent.on_call_startdef on_call_start(call: guava.Call): call.set_task( "schedule_appointment", checklist=[ guava.Field( key="appointment_time", field_type="calendar_slot", searchable=True, ), "Confirm the appointment, thank the patient, and end the call.", ], )@agent.on_search_query("appointment_time")def search_appointments(call: guava.Call, query: str): return scheduling.filter(query, max_results=3)if __name__ == "__main__": agent.listen_phone("+1...")
on_question and on_intent fire when the caller needs something outside the checklist. You return the answer — Guava keeps the conversation alive.
RAG and Intent Recognition in Guava are fully pluggable. Bring your own system, or use our provided helper libraries.
Compose calls from Field, Say, and plain-string instructions. Guava works through them one at a time, naturally.
Guava is a vertically-integrated voice platform — proprietary models, production telephony, and a Python SDK designed for deterministic, auditable call behavior.
ASR, TTS, and language models built together — not stitched from third-party APIs. Multilingual out of the box, with tight orchestration that means fewer failure modes and lower tail latency.
Structured checklists replace open-ended prompts. Your agent follows the script, collects every field, and behaves predictably across millions of calls.
Guava doesn’t just respond — it follows through. Cross-session context, re-contact strategies, and multi-channel handoffs that complete the mission.
Cloud, on-prem, embedded, or at the edge. Guava runs where your workload lives — contact centers, hospital systems, vehicles, or robotics platforms.
Subclass CallController and define behavior in Python. Callbacks fire for intents and questions. You handle the logic — Guava handles the voice.
Inbound and outbound calls, number provisioning, SMS, call transfer, and DTMF — all built in. No Twilio glue code required.
Unlike demo-grade voice bots, Guava is engineered for real environments — call centers running 10,000 concurrent sessions, hospital systems that can’t afford a dropped call, and embedded platforms that demand sub-1s response times.
Voice, SMS, email, and web forms — in one continuous flow.
Carries state across sessions without dropping intent.
Voicemail, callback, escalation — handled automatically.
Every call follows the checklist. No prompt drift.
Voice that behaves less like a chatbot — and more like a competent operator.
From terminal to a live call — without trading away compliance.
One command gets you the guava CLI and Python SDK installed globally.
/usr/local/bin/guava.Scaffold a new agent project with starter code, dependencies, and a config file.
Push your agent to Guava’s cloud. It answers calls and streams conversations here.
Free Guava account. No card. No sales call. Open the docs — SDK reference, every event, every helper, with a plaintext corpus for your coding agent.