Clinic AI Receptionist — Data skill for Claude Code
WhatsApp AI receptionist for clinics — FastAPI + Postgres/pgvector + Claude.
How to install Clinic AI Receptionist
This entry records only its repository, not the path inside it, so there is no
exact command to give. Open sachinndhimann/clinic-ai-receptionist and copy the folder into
~/.claude/skills/, or the file into ~/.claude/agents/.
What Clinic AI Receptionist does
WhatsApp AI receptionist for clinics — FastAPI + Postgres/pgvector + Claude. Answers FAQs via RAG, books appointments through a multi-turn agentic flow, and escalates emergencies/complaints to human staff. Multi-tenant SaaS architecture, starting with the dental/hospital vertical.
Alternatives in Data
- Private GPT — Complete API layer for private AI applications on local models: RAG, skills, tools, MCP, text-to-sql, and more 57.5k ★
- OpenViking — Self-evolving Context Database for AI Agents 33.3k ★
- Book Translation Skill — You are a book translation assistant 489 ★
README
Clinic AI Receptionist
WhatsApp-based AI receptionist for clinics: FAQ answering (RAG), appointment booking (agentic tool-calling), and safe escalation to human staff.
Architecture
WhatsApp --> webhooks/whatsapp.py
|
|-- conversation lookup (state/conversation.py)
|-- escalated? --> stop, staff handles it
|-- emergency keyword filter (core/emergency_filter.py) --> escalate immediately
|-- mid-booking-flow? --> state/flow_state.py narrow handler
|-- else: intent_router.py --> FAQ | BOOKING | COMPLAINT | UNCLEAR
|
|-- FAQ --> rag/retrieve.py (pgvector) --> core/agent.py (grounded answer)
|-- BOOKING --> core/agent.py (tool-calling loop) --> tools/booking.py
|-- COMPLAINT/UNCLEAR --> tools/escalation.py
Key design decisions
- pgvector, not a standalone vector DB — one Postgres instance serves both structured data (appointments, conversations) and RAG embeddings. Simpler ops for a multi-tenant SaaS at this scale.
- Tools, never freehand writes — the LLM can only change state (book,
cancel, escalate) through typed functions in
tools/, each of which re-validates against the DB before committing. - Structured flow state, not chat-history replay — multi-turn booking
uses
booking_flow_state(slot-filling) instead of re-feeding growing transcripts to the LLM. Flat token cost, no drift on remembered details. - Two-layer emergency detection — a deterministic keyword filter runs before any LLM call; the system prompt carries a backstop instruction for phrasing the filter misses. Life-safety checks should not depend solely on probabilistic model behavior.
- Escalation is a hard stop — once
conversation.status == "escalated", the webhook handler skips the agent entirely until a staff member explicitly resolves it. No parallel bot/human replies. - **Multi-tenant via
Related Skills
Docwise Agentic
Full agentic RAG pipeline: adaptive chunking → Qdrant hybrid search (semantic + BM25 + RRF) → LangGraph ReAct
Realtime Agent Backend
Production-style backend for real-time AI chat agents: FastAPI, WebSocket token streaming, Redis + PostgreSQL
Building Online RAG Pipelines For Semantic Search
Build a production retrieval-augmented generation pipeline in plain JavaScript: ingest, chunk, embed, store in
HyperMnesia
Self-hosted long-term memory for AI coding agents: Postgres+pgvector doc-RAG (component/constraint map + hybri
Myrag
Free, local RAG over messy government PDFs and Word docs (NIST AI RMF, CSF 2.0, FedRAMP): hybrid search in Pos
Symptomsync Agentic AI Change
Use when tasks touch agentic_ai/, including the FastAPI service, LangGraph flow, agents, chains, settings, tes
Related Agents
Agentic AI Dev
Expert Agentic AI developer with Python 3.14, LangChain v1.2.8, LangGraph v1.0.7, and FastAPI 0.135.2. Use for
Supabase Substrate Explorer
Specialist research agent for discovering creative, non-obvious applications of the Supabase SUBSTRATE dimensi
AI Specialist
Expert in integrating LLMs, building RAG systems (pgvector), and creating MCP servers.