How navyachhoker/symptom-checker works
MedTriage is a conversational symptom-triage application. A patient sends symptoms through the chat UI; the API restores or creates a session and invokes the LangGraph workflow. The agent gathers and assesses symptom details, may ask follow-up questions or consult specialists and clinical tools, then produces an urgency and advice for a safety review. The API persists conversation and completed outcomes and returns them for display; the UI also supports session history. The README documents these capabilities, while several agent and frontend implementation details were not sampled, so uncertain internal wiring is omitted.
Main entry points: routes.py REST routes · orchestrator.py Assessment orchestrator · Chat.jsx Chat experience · api.js API client
Components 18
Patient interface
- Chat experience
frontend/src/pages/Chat.jsx - Session list
frontend/src/components/SessionList.jsx - Triage display
frontend/src/components/TriageResult.jsx - API client
frontend/src/api.js - App entry
frontend/src/App.jsx
API and persistence
- REST routes
backend/app/api/routes.py - Request schemas
backend/app/models/schemas.py - Database session
backend/app/db/database.py - Persistence models
backend/app/db/models.py
Triage workflow
- Compiled agent graph
backend/app/agent/graph.py - Assessment orchestrator
backend/app/agent/orchestrator.py - Triage state
backend/app/agent/state.py - Specialist agents
backend/app/agent/specialists.py - Clinical tools
backend/app/agent/tools.py - Safety review
backend/app/agent/safety.py
External systems
- PostgreSQL
- Groq LLM
Other components
- Patient
Connections 19
- Patient → Chat experience: enters symptoms
- App entry → Chat experience: renders
- Chat experience → API client: requests chat and history
- API client → REST routes: calls REST API
- REST routes → Request schemas: validates and responds
- REST routes → Database session: reads and writes
- Database session → PostgreSQL: persists records
- REST routes → Compiled agent graph: invokes triage
- Compiled agent graph → Assessment orchestrator: dispatches workflow
- Assessment orchestrator → Specialist agents: consults specialist
- Assessment orchestrator → Clinical tools: runs clinical checks
- Assessment orchestrator → Safety review: requests final review
- Assessment orchestrator → Groq LLM: requests reasoning
- Safety review → Groq LLM: requests review
- Specialist agents → Groq LLM: requests assessment
- REST routes → Session list: returns session data
- REST routes → Triage display: returns triage outcome
- Chat experience → Triage display: displays assessment
- Chat experience → Session list: loads and selects sessions