Skip to content

About

AI voice agent that finds top-rated local vendors via Google Maps and negotiates prices over real phone calls. Multi-agent (LangGraph) with HITL, learning loop, and 8 Indian languages. Live: negotiator-app-rho.vercel.app

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

Negotiator

Your personal AI agent that finds top-rated local vendors, calls them on your behalf, and negotiates the price down — in your language.

Live demo: https://negotiator-app-rho.vercel.app

Tell Negotiator what you need ("a cab to the airport at 6 AM tomorrow"). It discovers the highest-rated vendors nearby via Google Maps, researches fair market pricing via Perplexity, then places real outbound voice calls via Vapi. A multi-agent system (LangGraph) handles the conversation, escalates to you if it gets stuck, learns from every call, and verifies the final deal.

End-to-end flow

User intake (chat)
    ↓
Discover vendors  ──►  Research fair price  ──►  Outbound voice call
                                                       ↓
                              ┌──────────────  Negotiator agent  ──────────────┐
                              ↓                       ↓                        ↓
                       HITL escalation        Learning loop            Deal verification
                       (you approve)          (memory store)           (price + terms)

Multi-agent architecture (LangGraph)

Agent Responsibility
Research Pulls comparable prices, vendor reputation, and constraints (Perplexity + Google Maps)
Negotiator Drives the live voice conversation, anchors, counter-offers, closes
Learning Stores what worked / what didn't per vendor and category, feeds future calls
Verification Re-confirms final price, ETA, and terms before the call ends

State is orchestrated as a LangGraph StateGraph with a human-in-the-loop interrupt: if the agent's confidence drops below threshold, the call is paused and the user is pinged to approve / steer.

Tech stack

Layer Tech
Frontend Next.js 16, React 19, TailwindCSS
Agent runtime LangGraph (TypeScript), OpenAI GPT-4
Voice Vapi (outbound calls), Azure Neural TTS
Discovery Google Maps Places API
Pricing intel Perplexity API
DB Postgres (Neon)
Hosting Vercel

Languages

Hindi, Kannada, Telugu, Tamil, Bengali, Marathi, Gujarati, English — selected per call based on the vendor's region.

Local setup

cp .env.example .env.local      # add your keys
npm install
npm run dev                     # http://localhost:3000

Required env vars

Var Purpose
OPENAI_API_KEY LLM for all agents
GOOGLE_MAPS_API_KEY Vendor discovery
PERPLEXITY_API_KEY Price research
VAPI_API_KEY Outbound voice calls
VAPI_PHONE_NUMBER_ID Caller ID
VAPI_SERVER_URL Public URL for Vapi webhooks
DATABASE_URL Neon Postgres connection string

Project structure

negotiator-app/
├── app/                  # Next.js App Router (UI + API routes)
├── lib/
│   ├── agents/           # LangGraph nodes: research, negotiator, learning, verification
│   ├── vapi/             # Vapi client + webhook handlers
│   ├── maps/             # Google Maps wrappers
│   └── db/               # Neon + schema
└── docs/                 # User stories, call-history schema

See ARCHITECTURE.md (repo root) for the full state-graph and node contracts.

About

AI voice agent that finds top-rated local vendors via Google Maps and negotiates prices over real phone calls. Multi-agent (LangGraph) with HITL, learning loop, and 8 Indian languages. Live: negotiator-app-rho.vercel.app

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages