Build an AI-powered healthcare intake assistant with a lip-synced Anam avatar, LiveKit voice pipeline, and real-time form updates via RPC
npx @senso-ai/shipables install gauravkesharwani/anam-healthcare-intakeA voice-driven healthcare intake assistant that uses a lip-synced Anam avatar to guide patients through a medical intake form. The agent collects patient information one field at a time, confirms answers, and updates the on-screen form in real time.
This skill uses a Python agent backend with a Next.js frontend:
agent-py/): LiveKit Agents voice pipeline with Deepgram STT, OpenAI LLM, ElevenLabs TTS, and Anam avatarfrontend/): Next.js app with real-time form, avatar video, and RPC communicationThe agent communicates with the frontend via LiveKit RPC using three function tools:
update_field — updates a specific intake form field on the patient's screenget_form_state — retrieves the current state of all form fieldssubmit_form — submits the completed intake formThe agent collects these fields in order:
uv package managerpnpm# Python backend
cd agent-py && uv sync && cd ..
# Frontend
cd frontend && pnpm install && cd ..
Create .env.local in both agent-py/ and frontend/ with:
LIVEKIT_URL=wss://your-project.livekit.cloud
LIVEKIT_API_KEY=your_livekit_api_key
LIVEKIT_API_SECRET=your_livekit_api_secret
ANAM_API_KEY=your_anam_api_key
Frontend also needs:
AGENT_NAME=Anam-Demo
cd agent-py
uv run python src/agent.py download-files
# Terminal 1: Start the agent
cd agent-py && uv run python src/agent.py dev
# Terminal 2: Start the frontend
cd frontend && pnpm dev
Open http://localhost:3000 to start the intake session.
The agent uses LiveKit RPC to send field updates to the frontend in real time. Each field update is sent individually as the patient provides information, creating a live-updating form experience.
The agent always confirms each answer before moving to the next field. This ensures accuracy and gives the patient control over their information.
Uses LiveKit Inference to serve Deepgram (STT), OpenAI (LLM), and ElevenLabs (TTS) through a unified voice pipeline with Silero VAD for voice activity detection and a multilingual turn detector.