Recursive Composite Combos
Combos aggregate multiple upstream models and accounts under a single virtual identifier with recursive nesting, cycle detection, and automatic circuit breakers.
How Recursive Combos Work
A combo can target concrete provider models (e.g. antigravity/claude-sonnet-4-6) or other combos (e.g. combo: claude-models).
When an agent sends a request for frontier, GoRoute resolves targets recursively down the tree:
# ~/.goroute/config.yaml
combos:
- name: frontier
strategy: failover
targets:
- combo: claude-models # Step 1: Try pooled Claude accounts
- combo: deepseek # Step 2: Fallback to DeepSeek reasoning
- combo: gpt # Step 3: Fallback to OpenAI GPT-4o
- name: claude-models
strategy: failover
targets:
- provider_id: antigravity
model: claude-sonnet-4-6
- provider_id: antigravity
model: claude-opus-4-6
- provider_id: openai-compatible
model: claude-3-7-sonnetGoRoute tracks visited nodes in a recursion call stack map. If combo A points to combo B which loops back to combo A, the router immediately halts recursion and logs the cycle safely without hanging.
When an account yields HTTP 429 (quota exhausted) or 503, GoRoute marks that target as in-cooldown for 120 seconds. Subsequent calls skip it instantly (0.01ms overhead) rather than waiting for timeouts.
Visual Management in Web Portal
You don't need to edit YAML files by hand. Open http://localhost:8128/ and navigate to the Combos Studio tab:
- • Drag-and-drop model priority reordering
- • One-click target health verification probe
- • Instant cooldown reset buttons
- • Real-time latency graph per model target