Getting Started
Welcome to BobaMixer! This guide will help you get started with BobaMixer, a comprehensive CLI tool for managing multiple AI providers, tracking costs, and optimizing your AI workload routing.
What is BobaMixer?
BobaMixer is a smart AI adapter router that helps you:
- Track Usage: Monitor tokens, costs, and latency across multiple AI providers
- Route Intelligently: Automatically select the best model based on context and task type
- Manage Budgets: Set spending limits and receive proactive alerts
- Optimize Costs: Get AI-powered suggestions to reduce spending
- Analyze Patterns: Understand your AI usage with comprehensive analytics
Quick Start
1. Install BobaMixer
Choose your preferred installation method:
Using Go:
go install github.com/royisme/bobamixer/cmd/boba@latestUsing Homebrew (macOS/Linux):
brew tap royisme/tap
brew install bobamixerDownload Binary: Download the latest release from GitHub Releases.
For detailed installation instructions, see the Installation Guide.
2. Initialize Configuration
Run the doctor command to create default configurations:
boba doctorThis creates the ~/.boba/ directory with example configuration files:
profiles.yaml- Profile definitionsroutes.yaml- Routing rulespricing.yaml- Model pricingsecrets.yaml- API keys (0600 permissions)usage.db- SQLite database for tracking
3. Configure Your First Profile
Edit ~/.boba/profiles.yaml and add your first profile:
default:
adapter: http
provider: anthropic
endpoint: https://api.anthropic.com/v1/messages
model: claude-3-5-sonnet-20241022
headers:
anthropic-version: "2023-06-01"
x-api-key: "secret://anthropic_key"4. Add Your API Key
Edit ~/.boba/secrets.yaml and add your API key:
anthropic_key: sk-ant-your-actual-key-hereMake sure the secrets file has correct permissions:
chmod 600 ~/.boba/secrets.yaml5. Activate the Profile
Set the default profile as active:
boba use default6. Verify Setup
Check that everything is configured correctly:
boba doctorYou should see green checkmarks for all configuration items.
7. Launch the TUI Dashboard
Start the interactive dashboard:
bobaThe dashboard shows:
- Current active profile
- Today's usage statistics
- Budget status
- Recent notifications
- Quick actions
Basic Usage
View All Profiles
List all configured profiles:
boba ls --profilesSwitch Profiles
Activate a different profile:
boba use <profile-name>Check Usage Statistics
View today's statistics:
boba stats --todayView last 7 days:
boba stats --7dView breakdown by profile:
boba stats --7d --by-profileTest Routing Rules
Test which profile would be selected for a given input:
boba route test "Write a function to sort an array"Test with file content:
boba route test @path/to/file.txtCheck Budget Status
View budget status and alerts:
boba budget --statusView pending actions and suggestions:
boba actionNext Steps
Now that you have BobaMixer up and running, explore these topics:
- Configuration Guide - Learn about all configuration options
- Adapters - Understand different adapter types (HTTP, Tool, MCP)
- Intelligent Routing - Set up smart routing rules
- Budget Management - Configure budgets and alerts
- Analytics - Analyze your usage patterns
Getting Help
If you run into any issues:
- Run
boba doctorto check configuration health - Check the Troubleshooting Guide
- Review the FAQ
- Open an issue on GitHub
Example Workflow
Here's a typical workflow using BobaMixer:
# Morning: Check yesterday's stats
boba stats --yesterday
# Set up for work session
boba use work-heavy
# Work on your project...
# BobaMixer tracks usage automatically via adapters
# Check current session
boba stats --today
# Review suggestions
boba action
# Apply a suggested optimization
boba action apply suggestion-id
# End of day: Generate report
boba report --format json --output daily-report.jsonCommunity and Support
- Documentation: https://royisme.github.io/BobaMixer/
- GitHub: https://github.com/royisme/BobaMixer
- Issues: GitHub Issues
- Discussions: GitHub Discussions
Welcome to the BobaMixer community!