Back to home
Self-serve platform · KAL

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.kal.yaml
Full example
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_confirmation
agent:
Identity & Voice

Name, language, voice style, and persona instructions. This is what the caller hears and talks to.

knowledge:
Knowledge Sources

Upload PDFs, plain text, or point to a URL. The agent retrieves and answers from these — with source citations, never hallucinations.

call:
Call Behaviour

Max duration, what data to collect per call (notice period, budget, address…), and how to handle interruptions.

escalate_on:
Escalation Rules

Trigger a live human handoff on specific keywords, negative sentiment above a threshold, or explicit caller requests.

integrations:
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.

01

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.kal.yaml
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_assessment
02

Connect 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

Exotel
IVR + Outbound
Connected
Vobiz
Inbound + Outbound
Connected
Custom SIP
Bring your own number
Soon
03

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

SentimentPositive
Topicssalary, notice period, location
Resolved3 of 4 questions
EscalateNone

“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.

Telephony
Exotel
IVR + outbound dialler
Live
Vobiz
Inbound + outbound
Live
Custom SIP
Bring your own number
Soon
CRM & ATS
HubSpot
Sync call summaries + outcomes
Live
Zoho CRM
Log calls, update lead stage
Live
Lever / Greenhouse
Push candidate notes to ATS
Live
Messaging
SMS
Post-call confirmations & summaries
Live
WhatsApp
Follow-up messages after the call
Live
Email
Send transcript + summary on call end
Soon
Webhooks & API
on_call_start
Fire when agent picks up
Live
on_call_end
Full transcript + collected data
Live
on_escalate
Triggered before human handoff
Live

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.