Summary
delegate_task (and delegation in general) does not inherit the global fallback_providers chain defined in config.yaml. This creates a single point of failure: if the configured delegation.provider goes down or hits a rate limit, all subagent spawns fail, even though the parent agent has a healthy fallback chain.
Current behavior
config.yaml supports fallback_providers: (list) for the main agent.
delegation: section supports only a single model + provider pair.
- When a subagent's primary provider fails, there is no automatic failover.
- Subagents do not inherit the parent's
fallback_providers list.
Proposed behavior
Allow delegation: to accept its own fallback chain:
delegation:
model: "gemini-2.5-flash"
provider: "gemini"
fallback_providers:
- provider: openrouter
model: google/gemini-2.5-flash:free
- provider: custom
model: gemma-4-26b-a4b-it-4bit
base_url: "http://127.0.0.1:8001/v1"
Or alternatively, have subagents inherit the parent's fallback_providers by default (with an opt-out flag).
Motivation
In production multi-agent setups (e.g., migrating from OpenClaw-style agent orchestration), each sub-agent needs resilience equal to the parent. Hitting a Gemini quota or OpenRouter rate limit shouldn't kill delegation entirely. OpenClaw provided 3-4 stage fallback per agent, and users migrating to Hermes lose this resilience without equivalent functionality.
Related
fallback-providers.md documents only global fallback.
- Cron jobs face the same limitation (separate issue).
Summary
delegate_task(and delegation in general) does not inherit the globalfallback_providerschain defined inconfig.yaml. This creates a single point of failure: if the configureddelegation.providergoes down or hits a rate limit, all subagent spawns fail, even though the parent agent has a healthy fallback chain.Current behavior
config.yamlsupportsfallback_providers:(list) for the main agent.delegation:section supports only a singlemodel+providerpair.fallback_providerslist.Proposed behavior
Allow
delegation:to accept its own fallback chain:Or alternatively, have subagents inherit the parent's
fallback_providersby default (with an opt-out flag).Motivation
In production multi-agent setups (e.g., migrating from OpenClaw-style agent orchestration), each sub-agent needs resilience equal to the parent. Hitting a Gemini quota or OpenRouter rate limit shouldn't kill delegation entirely. OpenClaw provided 3-4 stage fallback per agent, and users migrating to Hermes lose this resilience without equivalent functionality.
Related
fallback-providers.mddocuments only global fallback.