Your agent.
Your config.
Live in 10 minutes.
KAL (Kailash Agent Language) is a simple YAML format for defining voice agents. Write what the agent should say, what it should collect, and when to hand off to a human. No ML. No black boxes. No waiting.
KAL Reference
One file. Full control.
Every configurable aspect of your agent lives in a single YAML file. Here's a full example — with every block explained.
agent:
name: Priya
language: hi-IN # hi-IN, en-IN, ta-IN, te-IN, mr-IN, bn-IN…
voice: warm # warm | crisp | professional
persona: |
You are Priya, a friendly hiring assistant for TrueHire.
Be concise. Ask one question at a time. Never guess.
objective: screen_candidates
knowledge:
- source: jd.pdf
- source: faq.txt
- source: https://yourdomain.com/hr-policy
call:
max_duration: 8m
collect:
- notice_period
- salary_expectation
- current_location
escalate_on:
- keyword: legal
to: human
- sentiment: negative
threshold: 0.7
to: human
integrations:
crm:
provider: hubspot
on_end: sync_call_summary
sms:
on_end: send_confirmationagent:Name, language, voice style, and persona instructions. This is what the caller hears and talks to.
knowledge:Upload PDFs, plain text, or point to a URL. The agent retrieves and answers from these — with source citations, never hallucinations.
call:Max duration, what data to collect per call (notice period, budget, address…), and how to handle interruptions.
escalate_on:Trigger a live human handoff on specific keywords, negative sentiment above a threshold, or explicit caller requests.
integrations:Push call summaries to HubSpot, Zoho, or Lever. Fire a webhook on call end. Send SMS or WhatsApp confirmations automatically.
How it works
From zero to live calls in 10 minutes
No ML team. No months of training. Just YAML, a phone number, and your knowledge base.
Write your agent.kal.yaml
Define the agent's name, language, persona, knowledge sources, and escalation rules. Plain YAML — no ML expertise required. You can start from the example on this page.
agent:
name: Priya
language: hi-IN
persona: warm, professional
objective: screen candidates for
software roles
knowledge:
- jd.pdf
- faq.txt
escalate_on:
- salary_negotiation
- technical_assessmentConnect your phone line
Link your Exotel or Vobiz number in one click. Configure inbound IVR menus or outbound campaign lists. True Network handles all telephony — you keep your existing numbers.
Phone Channels
Deploy and monitor live
Push to production instantly. Your dashboard streams live transcripts, sentiment scores, per-call AI summaries, and escalation alerts in real time.
Live Call — AI Summary
“Candidate confirmed 3-week notice. Open to ₹18–22 LPA band. Strong in React + Node, weaker on system design. Recommend technical round.”
Integrations
Connects to everything you already use
Telephony, CRM, messaging, and webhooks — all configured directly in your KAL file. No third-party iPaaS required.
FAQ
Common questions
Do I need to know machine learning or Python?
No. KAL is plain YAML — if you can write a config file, you can build an agent. The only required fields are name, language, and objective.
What languages are supported?
Hindi (hi-IN), English (en-IN), Tamil (ta-IN), Telugu (te-IN), Marathi (mr-IN), Bengali (bn-IN), Kannada (kn-IN), Gujarati (gu-IN), and Hinglish. More being added.
Can the agent handle interruptions or off-script questions?
Yes. The underlying LLM handles natural conversation, interruptions, and follow-up questions. Your YAML defines the objective and guardrails — the agent handles the rest.
What happens when the agent doesn't know the answer?
It says so honestly and, if configured, offers to escalate to a human or send a follow-up. It never fabricates an answer — the knowledge base is citation-guarded.
How do I handle sensitive calls — legal, disputes, negotiations?
Use escalate_on rules. You can trigger a live handoff on specific keywords (e.g. 'legal', 'complaint'), negative sentiment above a threshold, or any structured condition.
Can I use my existing Exotel or Vobiz number?
Yes. You keep your existing number. True Network connects to it — your callers see no change. You can also provision a new number directly from the dashboard.
Get started
Ready to ship your
first agent?
Tell us your use case. We'll help you write your first KAL file and get a number connected in your first session — usually under an hour.