Complete guide for launching AI Studio Proxy API with different modes and configurations.
# Make script executable (first time only)
chmod +x start.sh
# Start server (auto mode)
./start.sh
# Or specify mode
./start.sh headless # Production mode
./start.sh debug # Development mode
./start.sh auth # Authentication setup
./start.sh test # API testingLinux/macOS (Recommended):
./start.sh [mode] [options]Windows/Cross-platform:
python3 start.py [mode] [options]| Mode | Command | Description |
|---|---|---|
| Auto | ./start.sh |
Smart mode selection (recommended) |
| Headless | ./start.sh headless |
Production mode (no browser window) |
| Debug | ./start.sh debug |
Development mode (browser visible) |
| Auth | ./start.sh auth |
Authentication setup only |
| Test | ./start.sh test |
API endpoint testing |
Custom Ports:
./start.sh headless --server-port 8080 --stream-port 3121Environment Variables:
export SERVER_PORT=8080
export STREAM_PORT=3121
export DEBUG_LOGS_ENABLED=true
./start.shHelp:
./start.sh --helpFirst time setup:
./start.sh auth- Complete Google login in browser
- Navigate to AI Studio chat interface
- Authentication files saved automatically
When authentication expires:
rm auth_profiles/active/*.json
./start.sh authBase URL: http://127.0.0.1:2048/v1
Test endpoints:
# Health check
curl http://127.0.0.1:2048/health
# List models
curl http://127.0.0.1:2048/v1/models
# Chat completion
curl -X POST http://127.0.0.1:2048/v1/chat/completions \
-H 'Content-Type: application/json' \
-d '{
"model": "gemini-2.5-pro-preview-06-05",
"messages": [{"role": "user", "content": "Hello!"}],
"stream": false
}'Virtual environment issues:
uv venv .venv
source .venv/bin/activate
uv install -r requirements.txtAuthentication problems:
./start.sh authPort conflicts:
./start.sh headless --server-port 8080API not responding:
./start.sh testSystemd service:
[Unit]
Description=AI Studio Proxy API
After=network.target
[Service]
Type=simple
User=aistudio
WorkingDirectory=/opt/aistudio-proxy
ExecStart=/opt/aistudio-proxy/start.sh headless
Restart=always
[Install]
WantedBy=multi-user.target📚 For complete documentation, see README.md