View Agent
Open in Wonderful Platform
Overview
| Field | Value |
|---|---|
| Market | Israel - Insurance |
| Vertical | Insurance |
| Company | Libra (ליברה) |
| Model | GPT-4o Realtime (2025-06-03) |
| Language | Hebrew |
| Channel | Voice |
Skills
- Customer Verification — Mandatory identity verification using Israeli ID numbers and vehicle license plates\
- Accident vs. Theft Triage — Classifies the caller’s intent as accident or vehicle theft\
- Open Accident Claim — Collects timestamps, location, and initial accident context\
- Fill Theft Claim — Manages stolen vehicle flows, including protection systems and police reports\
- Finalize Accident Claim — Gathers third-party details and determines claim action type\
- Garage & Appraiser Selection — Guides customers through authorized repair shops and appraisers
Key Tools
| Tool | Purpose |
|---|---|
| decide_fault() | Determines accident fault using strict regulatory rule mapping |
| damage_handler() | Routes the flow based on whether vehicle damage occurred |
| is_hit_and_run() | Identifies hit-and-run scenarios using KV-store state |
| match_insurance_company_name() | Phonetically matches spoken insurance company names |
Prompting Techniques
Tool-first deterministic control — Decision-making logic is extracted from the LLM and implemented in low-code tools to ensure predictable behavior:- The agent must NOT infer fault independently
- All accident responsibility decisions must come from decide_fault()
- Legal instructions must be read verbatim
- No paraphrasing or summarization is allowed
- Every confirmed value is written to context.kv
- Downstream tools may only rely on KV data, not conversation memory
Lessons Learned
What worked- Deterministic if-else logic reduced ambiguity in edge cases\
- Tool-generated system instructions improved flow discipline\
- Hard-coded Hebrew responses avoided pronunciation and phrasing errors\
- KV-store persistence ensured consistency across long claim sessions
- Objective fault assessment from biased user narratives\
- Enforcing verbatim legal disclosures without LLM drift\
- Maintaining regulatory compliance across dynamic conversational flow
Deep Dive
1. decide_fault(description) - Regulatory Fault Engine
Purpose: Objectively determine accident responsibility using predefined regulatory sections provided by Libra, removing subjective interpretation from the LLM. What it does:- Accepts a free-text accident description
- Maps the description to structured accident patterns
- Matches patterns against explicit regulatory clauses
- Returns a deterministic fault outcome and justification
- Generates system instructions guiding the next agent step
- No probabilistic reasoning
- No “best guess” outcomes
- Full alignment with insurer-approved legal definitions
2. damage_handler() — Flow Router
Purpose: Controls claim branching based on whether the vehicle sustained damage. What it does:- Reads damage indicators from KV-store
- Routes to:
- Damage collection flow
- No-damage declaration flow
- Prevents invalid transitions between claim states
3. is_hit_and_run() — Incident Classification Tool
Purpose: Identify hit-and-run scenarios using structured session data rather than conversational inference. What it does:- Reads parked-state and involved-vehicle flags from KV
- Determines hit-and-run eligibility
- Locks the flow into the correct legal and reporting path
- Eliminates ambiguity caused by partial or emotional user descriptions\
- Ensures consistent regulatory handling across cases
How They Work Together
User: “מישהו פגע לי ברכב בזמן שהוא היה חונה וברח”- Accident description collected
- is_hit_and_run() → true ↓
- decide_fault() → No driver present, third-party fault ↓
- set_action_type(“claim_on_behalf”) ↓
- damage_handler() → Routes to damage assessment ↓
- Agent continues with legally compliant claim completion