Simple Health Services (SHS) – AI-Powered Housing Stabilization Intake
<-------------------------------------->
The SHS Intake Agent is an AI-powered, agentic screener designed for Simple Health Services, a Minnesota nonprofit helping adults with disabilities and seniors access housing support. This tool automates the intake process, evaluates eligibility for housing programs, and delivers professional eligibility reports to staff—all with a friendly, conversational interface.
- Conversational Intake: Natural, step-by-step chat with clients
- Eligibility Assessment: Automated scoring based on Minnesota Medicaid rules
- PDF Report Generation: Clean, printable eligibility reports
- Email Delivery: Securely emails reports to staff (no unreliable webhooks)
- Multiple Interfaces:
- Terminal CLI
- Modern Gradio web UI
- Professional Streamlit dashboard
- Prebuilt Test Data: For instant demos
- Configurable & Secure: Uses
.envfor all secrets and settings
- Python 3.10+
- LangChain (ReAct agent, Google Gemini LLM)
- Gradio (web UI)
- Streamlit (dashboard UI)
- ReportLab (PDF generation)
- SMTP (Gmail or custom) for email
.envfor configuration
shs_intake_agent/
├── agent/
│ ├── intake_chain.py # Agent logic (ReAct, tools, eligibility)
│ ├── intake_prompt.py # System prompt & questions
│ ├── output_schema.py # Pydantic schema
│ ├── generate_report.py # PDF report generation
│ ├── send_email.py # Email sending logic
├── main.py # CLI runner
├── gradio_ui.py # Gradio web UI
├── streamlit_ui.py # Streamlit dashboard UI
├── requirements.txt # All dependencies
├── .env # Secrets & config (not tracked)
├── results/ # Generated PDF reports
└── README.md # This file
- Clone the repo & enter the directory:
git clone <your-repo-url> cd shs_intake_agent
- Create and activate a virtual environment:
python -m venv venv venv\Scripts\activate # On Windows # or source venv/bin/activate # On Mac/Linux
- Install dependencies:
pip install -r requirements.txt
- Set up your
.envfile:# .env example GOOGLE_API_KEY=your_google_gemini_api_key SMTP_EMAIL=your_email@gmail.com SMTP_PASSWORD=your_app_password EMAIL_TO=recipient@example.com
python main.py- Follow the prompts, answer questions, or use natural language.
- After eligibility is scored, the agent automatically generates a PDF and emails it to staff.
python gradio_ui.py- Open http://localhost:7860
- Chat with the agent, use quick actions, download reports, and see email status.
streamlit run streamlit_ui.py- Open http://localhost:8501
- Enjoy a modern, step-by-step agentic experience with visual feedback and PDF download.
- Start a new intake:
- "Start intake for John Smith, age 45, with Medicaid, physical disability, at risk of homelessness"
- Answer questions or use prebuilt data
- Agent scores eligibility, generates PDF, and emails staff
- Download the PDF from the UI or check your email
- All secrets are stored in
.env(never commit this file!) - Emails are sent securely via SMTP (Gmail or custom)
- No sensitive data is logged or exposed
<------------------------------------------------------------------------->
<------------------------------------------------------------------------->
Pull requests and suggestions are welcome! Please open an issue first to discuss changes.
For questions or support, contact the SHS tech team or open an issue on GitHub.
Built with ❤️ for Simple Health Services
