Quick Start
Get Chat-in-Bio running on your machine in under 5 minutes.
Prerequisites
- Python 3.10+
- uv (recommended) or pip
- Node.js 18+ (for the frontend)
- An API key for at least one LLM provider (Anthropic, OpenAI, or Google AI)
1. Clone and install
git clone https://github.com/chtbio/a2ui.git
cd a2ui
uv sync
2. Configure environment
cp .env.example .env
Open .env and set these required values:
# Generate a random secret (or use any long random string)
CHATINBIO_SECRET_KEY=your-random-secret-key-here
CHATINBIO_ADMIN_API_KEY=your-admin-api-key-here
# Set at least one LLM provider key
CHATINBIO_ANTHROPIC_API_KEY=sk-ant-...
See Configuration Reference for all options.
3. Initialize the database
uv run alembic upgrade head
This creates a chatinbio.db SQLite file in your project root.
4. Start the backend
uv run litestar run --reload
The API is now live at http://localhost:8000. Verify with:
curl http://localhost:8000/health
# {"status": "ok"}
5. Set up your profile
Use the Admin API to create your owner profile and bot config:
# Create owner profile
curl -X PUT http://localhost:8000/api/admin/owner \
-H "Authorization: Bearer your-admin-api-key-here" \
-H "Content-Type: application/json" \
-d '{
"display_name": "Your Name",
"slug": "yourname",
"bio": "A short bio about you.",
"tagline": "Your tagline",
"social_links": [{"platform": "twitter", "url": "https://x.com/you"}]
}'
# Configure the bot
curl -X PUT http://localhost:8000/api/admin/bot \
-H "Authorization: Bearer your-admin-api-key-here" \
-H "Content-Type: application/json" \
-d '{
"system_prompt": "You are a helpful assistant for my personal page.",
"greeting_message": "Hey! How can I help you today?",
"model_provider": "anthropic",
"model_name": "claude-sonnet-4-20250514",
"enabled_tools": ["links", "faq"],
"quick_actions": [{"label": "About me", "action": "about"}]
}'
6. Start the frontend
In a second terminal:
cd frontend
npm install
npm run dev
Open http://localhost:5173 — you should see your bio page with a chat widget.
Next steps
- Configure your bot — fine-tune the AI personality and enable more tools
- Add content — populate links, products, events, and FAQ entries