{"repo": "alexandrebanhos/faceglow-project", "files": {"customize/skills/ruflo/v2/examples/litellm/README.md": {"2e014665e91c49052d12f7b9f7e3186f0acc3110": {"t": 1785747250.4343941, "n": 7578, "h": "1929d4cd500ce935", "c": "# LiteLLM Multi-Tenant Gateway for Claude Code\n\nA production-ready, multi-tenant LiteLLM proxy that enables Claude Code to seamlessly route requests across multiple LLM providers (OpenAI, Azure, OpenRouter, Bedrock, Ollama, etc.) with enterprise features.\n\n## πŸš€ Quick Start\n\n### 1. Prerequisites\n\n- Docker 20.10+\n- Docker Compose 2.0+\n- 8GB RAM minimum\n- Valid API keys for desired LLM providers\n\n### 2. Installation\n\n```bash\n# Clone the repository\ngit clone https://github.com/ruvnet/claude-flow.git\ncd claude-flow/examples/litellm\n\n# Copy environment template\ncp .env.example .env\n\n# Edit .env with your API keys\nnano .env\n\n# Deploy the stack\n./scripts/deploy.sh start\n```\n\n### 3. Configure Claude Code\n\n```bash\n# Set environment variables\nexport ANTHROPIC_BASE_URL=http://localhost:4000\nexport ANTHROPIC_AUTH_TOKEN=\n\n# Use Claude Code with different models\nclaude --model codex-mini \"Write a Python function\"\nclaude --model o3-pro \"Explain quantum computing\"\nclaude --model deepseek-coder \"Refactor this code\"\n```\n\n## πŸ“Š Architecture\n\n```\nβ”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”\nβ”‚ Claude Code │────▢│ Load Balancer│────▢│ LiteLLM β”‚\nβ””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ Proxies β”‚\n β””β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜\n β”‚\n β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”\n β”‚ β”‚ β”‚\n β”Œβ”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”\n β”‚ OpenAI β”‚ β”‚ OpenRouter β”‚ β”‚ Azure β”‚\n β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜\n```\n\n## 🎯 Features\n\n### Multi-Provider Support\n- **OpenAI**: GPT-4, GPT-4o, o3 models\n- **OpenRouter**: Qwen3-Coder, DeepSeek, 100+ models\n- **Azure OpenAI**: Enterprise Azure deployments\n- **Amazon Bedrock**: Claude models via AWS\n- **Ollama**: Local models (CodeLlama, Mixtral)\n- **Anthropic**: Direct Claude access\n\n### Enterprise Features\n- πŸ” **Multi-Tenancy**: Isolated configurations per team\n- πŸ’° **Cost Tracking**: Real-time usage and budget alerts\n- πŸ“Š **Monitoring**: Prometheus + Grafana dashboards\n- πŸ”„ **High Availability**: Load-balanced proxy instances\n- πŸ›‘οΈ **Security**: API key management, rate limiting\n- πŸ“ **Audit Logging**: Complete request/response tracking\n\n## πŸ”§ Configuration\n\n### Model Aliases\n\nEdit `config/config.yaml` to customize model routing:\n\n```yaml\nmodel_list:\n - model_name: \"fast-code\"\n litellm_params:\n model: \"openrouter/qwen/qwen-3-coder\"\n max_tokens: 8192\n temperature: 0.2\n \n - model_name: \"reasoning\"\n litellm_params:\n model: \"openai/o3-pro\"\n max_tokens: 4096\n temperature: 0.7\n```\n\n### Tenant Management\n\nCreate and manage tenants:\n\n```bash\n# Create a new tenant\n./scripts/manage-tenants.sh create engineering\n\n# List all tenants\n./scripts/manage-tenants.sh list\n\n# Update tenant budget\n./scripts/manage-tenants.sh update engineering budget 200\n\n# View usage statistics\n./scripts/manage-tenants.sh usage engineering\n```\n\n### Fallback Chains\n\nConfigure automatic fallbacks in `config/config.yaml`:\n\n```yaml\nfallback_models:\n code_chain:\n - codex-mini # Primary (fast, cheap)\n - deepseek-coder # Secondary\n - local-codellama # Tertiary (free, local)\n```\n\n## πŸ“ˆ Monitoring\n\n### Access Dashboards\n\n- **Grafana**: http://localhost:3000\n- **Prometheus**: http://localhost:9090\n- **PgAdmin**: http://localhost:5050\n\n### Key Metrics\n\n- Request latency (p50, p95, p99)\n- Token usage per model/tenant\n- Cost tracking and projections\n- Error rates and fallback triggers\n- Model availability status\n\n## πŸ› οΈ Operations\n\n### Service Management\n\n```bash\n# Start services\n./scripts/deploy.sh start\n\n# Stop services\n./scripts/deploy.sh stop\n\n# View logs\n./scripts/deploy.sh logs\n\n# Check status\n./scripts/deploy.sh status\n\n# Clean everything\n./scripts/deploy.sh clean\n```\n\n### Scaling\n\nAdjust replica count in `docker-compose.yml`:\n\n```yaml\nservices:\n litellm:\n deploy:\n replicas: 5 # Increase for higher load\n```\n\n### Backup & Restore\n\n```bash\n# Backup database\ndocker-compose exec postgres pg_dump -U litellm > backup.sql\n\n# Restore database\ndocker-compose exec -T postgres psql -U litellm < backup.sql\n```\n\n## πŸ” Security\n\n### API Key Rotation\n\n```bash\n# Generate new master key\nexport NEW_KEY=$(openssl rand -hex 32)\necho \"LITELLM_MASTER_KEY=sk-litellm-$NEW_KEY\" >> .env\n\n# Restart services\ndocker-compose restart\n```\n\n### Network Security\n\n- All services run in isolated Docker network\n- PostgreSQL and Redis not exposed externally\n- SSL/TLS support for production deployments\n- Rate limiting per tenant\n\n## πŸ“š Examples\n\n### Basic Usage\n\n```bash\n# Fast code generation\nclaude --model codex-mini \"Write a REST API endpoint\"\n\n# Complex reasoning\nclaude --model o3-pro \"Design a distributed system\"\n\n# Local processing (no cloud)\nclaude --model local-codellama \"Refactor this function\"\n```\n\n### Cost-Optimized Routing\n\n```bash\n# Use cheapest model for simple tasks\nexport ANTHROPIC_MODEL=claude-3-haiku\nclaude \"Format this JSON\"\n\n# Use powerful model for complex tasks\nexport ANTHROPIC_MODEL=o3-pro\nclaude \"Solve this algorithm problem\"\n```\n\n### Multi-Tenant Usage\n\n```bash\n# Engineering team\nexport ANTHROPIC_AUTH_TOKEN=$TENANT_ENGINEERING_KEY\nclaude --model codex-mini \"Build feature\"\n\n# Research team\nexport ANTHROPIC_AUTH_TOKEN=$TENANT_RESEARCH_KEY\nclaude --model o3-pro \"Analyze dataset\"\n```\n\n## πŸ› Troubleshooting\n\n### Common Issues\n\n1. **Connection Refused**\n ```bash\n # Check if services are running\n docker-compose ps\n \n # Check LiteLLM logs\n docker-compose logs litellm-1\n ```\n\n2. **Authentication Failed**\n ```bash\n # Verify master key in .env\n grep LITELLM_MASTER_KEY .env\n \n # Test connection\n curl http://localhost:4000/health\n ```\n\n3. **Model Not Found**\n ```bash\n # Check available models\n curl -H \"Authorization: Bearer $LITELLM_MASTER_KEY\" \\\n http://localhost:4000/models\n ```\n\n### Debug Mode\n\nEnable debug logging:\n\n```yaml\n# In docker-compose.yml\nenvironment:\n - LITELLM_LOG_LEVEL=DEBUG\n - DEBUG=true\n```\n\n## πŸ“– Advanced Topics\n\n### Custom Model Providers\n\nAdd custom providers in `config/config.yaml`:\n\n```yaml\nmodel_list:\n - model_name: \"custom-model\"\n litellm_params:\n model: \"custom_provider/model_name\"\n api_base: \"https://api.custom.com/v1\"\n api_key: ${CUSTOM_API_KEY}\n custom_llm_provider: \"custom\"\n```\n\n### Performance Tuning\n\n```yaml\n# Optimize for high throughput\nrouter_settings:\n max_parallel_requests: 100\n request_timeout: 30\n enable_caching: true\n cache_ttl: 3600\n```\n\n### Cost Optimization\n\n```yaml\n# Implement cost controls\ncost_tracking:\n alert_thresholds:\n - threshold: 80\n action: notify\n - threshold: 100\n action: block\n```\n\n## 🀝 Contributing\n\nSee [CONTRIBUTING.md](../../CONTRIBUTING.md) for guidelines.\n\n## πŸ“„ License\n\nMIT License - see [LICENSE](../../LICENSE) for details.\n\n## πŸ”— Resources\n\n- [LiteLLM Documentation](https://docs.litellm.ai)\n- [Claude Code Guide](https://docs.anthropic.com/en/docs/claude-code)\n- [OpenRouter Models](https://openrouter.ai/models)\n- [Docker Compose Reference](https://docs.docker.com/compose/)\n\n## πŸ’¬ Support\n\n- GitHub Issues: [Report bugs](https://github.com/ruvnet/claude-flow/issues)\n- Discussions: [Ask questions](https://github.com/ruvnet/claude-flow/discussions)\n- Wiki: [Documentation](https://github.com/ruvnet/claude-flow/wiki)\n\n---\n\nBuilt with ❀️ by the Claude Flow team"}, "05137be78421e116ee5fec42d8270e2ba716ac9f": {"t": 1785771778.640916, "n": 7578, "h": "1929d4cd500ce935", "c": "# LiteLLM Multi-Tenant Gateway for Claude Code\n\nA production-ready, multi-tenant LiteLLM proxy that enables Claude Code to seamlessly route requests across multiple LLM providers (OpenAI, Azure, OpenRouter, Bedrock, Ollama, etc.) with enterprise features.\n\n## πŸš€ Quick Start\n\n### 1. Prerequisites\n\n- Docker 20.10+\n- Docker Compose 2.0+\n- 8GB RAM minimum\n- Valid API keys for desired LLM providers\n\n### 2. Installation\n\n```bash\n# Clone the repository\ngit clone https://github.com/ruvnet/claude-flow.git\ncd claude-flow/examples/litellm\n\n# Copy environment template\ncp .env.example .env\n\n# Edit .env with your API keys\nnano .env\n\n# Deploy the stack\n./scripts/deploy.sh start\n```\n\n### 3. Configure Claude Code\n\n```bash\n# Set environment variables\nexport ANTHROPIC_BASE_URL=http://localhost:4000\nexport ANTHROPIC_AUTH_TOKEN=\n\n# Use Claude Code with different models\nclaude --model codex-mini \"Write a Python function\"\nclaude --model o3-pro \"Explain quantum computing\"\nclaude --model deepseek-coder \"Refactor this code\"\n```\n\n## πŸ“Š Architecture\n\n```\nβ”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”\nβ”‚ Claude Code │────▢│ Load Balancer│────▢│ LiteLLM β”‚\nβ””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ Proxies β”‚\n β””β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜\n β”‚\n β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”\n β”‚ β”‚ β”‚\n β”Œβ”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”\n β”‚ OpenAI β”‚ β”‚ OpenRouter β”‚ β”‚ Azure β”‚\n β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜\n```\n\n## 🎯 Features\n\n### Multi-Provider Support\n- **OpenAI**: GPT-4, GPT-4o, o3 models\n- **OpenRouter**: Qwen3-Coder, DeepSeek, 100+ models\n- **Azure OpenAI**: Enterprise Azure deployments\n- **Amazon Bedrock**: Claude models via AWS\n- **Ollama**: Local models (CodeLlama, Mixtral)\n- **Anthropic**: Direct Claude access\n\n### Enterprise Features\n- πŸ” **Multi-Tenancy**: Isolated configurations per team\n- πŸ’° **Cost Tracking**: Real-time usage and budget alerts\n- πŸ“Š **Monitoring**: Prometheus + Grafana dashboards\n- πŸ”„ **High Availability**: Load-balanced proxy instances\n- πŸ›‘οΈ **Security**: API key management, rate limiting\n- πŸ“ **Audit Logging**: Complete request/response tracking\n\n## πŸ”§ Configuration\n\n### Model Aliases\n\nEdit `config/config.yaml` to customize model routing:\n\n```yaml\nmodel_list:\n - model_name: \"fast-code\"\n litellm_params:\n model: \"openrouter/qwen/qwen-3-coder\"\n max_tokens: 8192\n temperature: 0.2\n \n - model_name: \"reasoning\"\n litellm_params:\n model: \"openai/o3-pro\"\n max_tokens: 4096\n temperature: 0.7\n```\n\n### Tenant Management\n\nCreate and manage tenants:\n\n```bash\n# Create a new tenant\n./scripts/manage-tenants.sh create engineering\n\n# List all tenants\n./scripts/manage-tenants.sh list\n\n# Update tenant budget\n./scripts/manage-tenants.sh update engineering budget 200\n\n# View usage statistics\n./scripts/manage-tenants.sh usage engineering\n```\n\n### Fallback Chains\n\nConfigure automatic fallbacks in `config/config.yaml`:\n\n```yaml\nfallback_models:\n code_chain:\n - codex-mini # Primary (fast, cheap)\n - deepseek-coder # Secondary\n - local-codellama # Tertiary (free, local)\n```\n\n## πŸ“ˆ Monitoring\n\n### Access Dashboards\n\n- **Grafana**: http://localhost:3000\n- **Prometheus**: http://localhost:9090\n- **PgAdmin**: http://localhost:5050\n\n### Key Metrics\n\n- Request latency (p50, p95, p99)\n- Token usage per model/tenant\n- Cost tracking and projections\n- Error rates and fallback triggers\n- Model availability status\n\n## πŸ› οΈ Operations\n\n### Service Management\n\n```bash\n# Start services\n./scripts/deploy.sh start\n\n# Stop services\n./scripts/deploy.sh stop\n\n# View logs\n./scripts/deploy.sh logs\n\n# Check status\n./scripts/deploy.sh status\n\n# Clean everything\n./scripts/deploy.sh clean\n```\n\n### Scaling\n\nAdjust replica count in `docker-compose.yml`:\n\n```yaml\nservices:\n litellm:\n deploy:\n replicas: 5 # Increase for higher load\n```\n\n### Backup & Restore\n\n```bash\n# Backup database\ndocker-compose exec postgres pg_dump -U litellm > backup.sql\n\n# Restore database\ndocker-compose exec -T postgres psql -U litellm < backup.sql\n```\n\n## πŸ” Security\n\n### API Key Rotation\n\n```bash\n# Generate new master key\nexport NEW_KEY=$(openssl rand -hex 32)\necho \"LITELLM_MASTER_KEY=sk-litellm-$NEW_KEY\" >> .env\n\n# Restart services\ndocker-compose restart\n```\n\n### Network Security\n\n- All services run in isolated Docker network\n- PostgreSQL and Redis not exposed externally\n- SSL/TLS support for production deployments\n- Rate limiting per tenant\n\n## πŸ“š Examples\n\n### Basic Usage\n\n```bash\n# Fast code generation\nclaude --model codex-mini \"Write a REST API endpoint\"\n\n# Complex reasoning\nclaude --model o3-pro \"Design a distributed system\"\n\n# Local processing (no cloud)\nclaude --model local-codellama \"Refactor this function\"\n```\n\n### Cost-Optimized Routing\n\n```bash\n# Use cheapest model for simple tasks\nexport ANTHROPIC_MODEL=claude-3-haiku\nclaude \"Format this JSON\"\n\n# Use powerful model for complex tasks\nexport ANTHROPIC_MODEL=o3-pro\nclaude \"Solve this algorithm problem\"\n```\n\n### Multi-Tenant Usage\n\n```bash\n# Engineering team\nexport ANTHROPIC_AUTH_TOKEN=$TENANT_ENGINEERING_KEY\nclaude --model codex-mini \"Build feature\"\n\n# Research team\nexport ANTHROPIC_AUTH_TOKEN=$TENANT_RESEARCH_KEY\nclaude --model o3-pro \"Analyze dataset\"\n```\n\n## πŸ› Troubleshooting\n\n### Common Issues\n\n1. **Connection Refused**\n ```bash\n # Check if services are running\n docker-compose ps\n \n # Check LiteLLM logs\n docker-compose logs litellm-1\n ```\n\n2. **Authentication Failed**\n ```bash\n # Verify master key in .env\n grep LITELLM_MASTER_KEY .env\n \n # Test connection\n curl http://localhost:4000/health\n ```\n\n3. **Model Not Found**\n ```bash\n # Check available models\n curl -H \"Authorization: Bearer $LITELLM_MASTER_KEY\" \\\n http://localhost:4000/models\n ```\n\n### Debug Mode\n\nEnable debug logging:\n\n```yaml\n# In docker-compose.yml\nenvironment:\n - LITELLM_LOG_LEVEL=DEBUG\n - DEBUG=true\n```\n\n## πŸ“– Advanced Topics\n\n### Custom Model Providers\n\nAdd custom providers in `config/config.yaml`:\n\n```yaml\nmodel_list:\n - model_name: \"custom-model\"\n litellm_params:\n model: \"custom_provider/model_name\"\n api_base: \"https://api.custom.com/v1\"\n api_key: ${CUSTOM_API_KEY}\n custom_llm_provider: \"custom\"\n```\n\n### Performance Tuning\n\n```yaml\n# Optimize for high throughput\nrouter_settings:\n max_parallel_requests: 100\n request_timeout: 30\n enable_caching: true\n cache_ttl: 3600\n```\n\n### Cost Optimization\n\n```yaml\n# Implement cost controls\ncost_tracking:\n alert_thresholds:\n - threshold: 80\n action: notify\n - threshold: 100\n action: block\n```\n\n## 🀝 Contributing\n\nSee [CONTRIBUTING.md](../../CONTRIBUTING.md) for guidelines.\n\n## πŸ“„ License\n\nMIT License - see [LICENSE](../../LICENSE) for details.\n\n## πŸ”— Resources\n\n- [LiteLLM Documentation](https://docs.litellm.ai)\n- [Claude Code Guide](https://docs.anthropic.com/en/docs/claude-code)\n- [OpenRouter Models](https://openrouter.ai/models)\n- [Docker Compose Reference](https://docs.docker.com/compose/)\n\n## πŸ’¬ Support\n\n- GitHub Issues: [Report bugs](https://github.com/ruvnet/claude-flow/issues)\n- Discussions: [Ask questions](https://github.com/ruvnet/claude-flow/discussions)\n- Wiki: [Documentation](https://github.com/ruvnet/claude-flow/wiki)\n\n---\n\nBuilt with ❀️ by the Claude Flow team"}}}}