System Requirements
- Python: 3.9 or higher
- Operating System: Linux, macOS, or Windows (WSL recommended)
- Terminal: Bash-compatible shell for running scripts
- Network: Outbound HTTPS access for API calls
Python Dependencies
CareSupport uses a minimal set of production-grade Python libraries:Core Dependencies
| Package | Purpose | Version |
|---|---|---|
openai | OpenRouter API client | Latest |
anthropic | Direct Anthropic API access | Latest |
python-dotenv | Environment variable management | Latest |
The
openai package is used for OpenRouter API access (not OpenAI directly). CareSupport routes through OpenRouter to access Claude Haiku and other models.API Keys and Accounts
CareSupport requires three types of API credentials:1. AI Provider (Required)
Choose one of the following:- OpenRouter (Recommended)
- Anthropic Direct
OpenRouter provides access to multiple AI models including Claude, with usage-based pricing.Setup:Default Model:
- Create an account at openrouter.ai
- Generate an API key from your dashboard
- Add to your
.envfile:
anthropic/claude-haiku-4-52. Linq API (Required for iMessage/SMS)
Linq provides the messaging infrastructure for iMessage-first communication.Create Linq Account
Sign up at linqapp.com and request a Partner API account.
Provision a Linq Blue Line
Get a dedicated phone number for CareSupport. This will be your primary messaging number.
Generate API Token
In the Linq dashboard:
- Click the code icon (
</>) in the left toolbar - Generate a new API token
- Copy the token (you won’t see it again)
3. Webhook Secret (Optional, for Real-Time)
If you want real-time message delivery instead of polling:Environment Configuration
Create a.env file in your project root:
.env
Security Best Practices
Add to.gitignore:
.gitignore
Verify Installation
Test each component:- Python test:
✓ All packages installed - Linq test: List of phone numbers with status
- AI test: JSON response with
reply_textfield
Directory Structure
After installation, your directory structure should look like:Next Steps
Configuration
Configure runtime paths and behavior
Create First Family
Set up your first family directory
Troubleshooting
ModuleNotFoundError: No module named 'openai'
ModuleNotFoundError: No module named 'openai'
You need to install the Python dependencies:If using a virtual environment, ensure it’s activated before installing.
Linq API returns 401 Unauthorized
Linq API returns 401 Unauthorized
ImportError: cannot import name 'paths' from 'config'
ImportError: cannot import name 'paths' from 'config'
The Or add to your
runtime/config.py file needs the CARESUPPORT_ROOT environment variable:.env file and ensure it’s loaded.Which AI backend should I use?
Which AI backend should I use?
Use OpenRouter if:
- You want access to multiple models
- You prefer usage-based pricing
- You’re just getting started
- You only use Claude models
- You have existing Anthropic credits
- You want to minimize API hops
Do I need both OPENROUTER_API_KEY and ANTHROPIC_API_KEY?
Do I need both OPENROUTER_API_KEY and ANTHROPIC_API_KEY?
No. Set only the one you’re using: