mirror of
https://github.com/ruvnet/ruflo.git
synced 2026-09-14 14:01:28 +08:00
29d52dfc22
Adds the complete RuFlo Chat UI system based on a SvelteKit fork (ruvocal) of HuggingFace Chat UI with custom branding, RVF document store replacing MongoDB, MCP bridge with 200+ tools, animated RuFloUniverse welcome screen, and Docker Compose orchestration. Key changes: - RVF JSON document store with ObjectId cross-package compatibility fix - MCP bridge proxy (Express) supporting Gemini, OpenAI, and tool execution - RuFlo branding: Logo, favicons, welcome animation, centered dot cluster - URL safety patch for Docker-internal HTTP service names - CORS fix via relative PUBLIC_ORIGIN asset paths Co-Authored-By: claude-flow <ruv@ruv.net>
1.6 KiB
1.6 KiB
Model Configuration
Adding Models
Models are configured in config/config.json under the models array. Each model needs:
{
"name": "model-id",
"displayName": "Friendly Name",
"description": "Short description shown in model picker",
"provider": "gemini|openai|openrouter",
"supportsTools": true,
"multimodal": false,
"parameters": { "temperature": 0.7 }
}
Providers
| Provider | Model Name Pattern | API Key Env Var | Secret Name |
|---|---|---|---|
gemini |
gemini-* |
GOOGLE_API_KEY |
google-api-key |
openai |
gpt-*, o3-*, o4-* |
OPENAI_API_KEY |
openai-api-key |
openrouter |
vendor/model-name |
OPENROUTER_API_KEY |
openrouter-api-key |
The MCP Bridge auto-detects the provider from the model name:
- Starts with
gemini-→ Google Gemini API - Contains
/→ OpenRouter - Everything else → OpenAI
Example Configurations
Gemini-only (free tier friendly)
"models": [
{ "name": "gemini-2.5-pro", "displayName": "Gemini 2.5 Pro", "provider": "gemini", "supportsTools": true },
{ "name": "gemini-2.5-flash", "displayName": "Gemini 2.5 Flash", "provider": "gemini", "supportsTools": true }
]
Multi-provider
"models": [
{ "name": "gemini-2.5-pro", "displayName": "Gemini 2.5 Pro", "provider": "gemini", "supportsTools": true },
{ "name": "gpt-4o", "displayName": "GPT-4o", "provider": "openai", "multimodal": true, "supportsTools": true },
{ "name": "anthropic/claude-sonnet-4.6", "displayName": "Claude Sonnet", "provider": "openrouter", "supportsTools": true }
]