How the Council of High Intelligence Handles Provider Failures and Fallback Mechanisms

The Council of High Intelligence guarantees deterministic output through a three-tier fallback strategy that automatically reroutes failed LLM calls to Anthropic Claude models and synthesizes verdicts when the Chairman fails.

The 0xNyk/council-of-high-intelligence repository implements a resilient execution engine designed to withstand external LLM service outages. Its architecture treats provider failures and fallback mechanisms as first-class concerns, ensuring that deliberations among the 18 council members always conclude with a verdict even when multiple providers become unavailable.

Provider Detection and Initial Routing

When a council session initializes, the coordinator executes scripts/detect-providers.sh to probe reachable LLM endpoints including Anthropic, OpenAI-compatible APIs, NVIDIA NIM, Cursor, and Ollama. The routing algorithm then distributes the 18 council members across available providers while enforcing hard constraints: polarity-pair separation and even provider spread.

If the detection script finds no external providers, the system defaults to single-provider mode using built-in Claude models. This default is documented in README.md and ensures the council can always convene regardless of external network conditions.

Per-Member Fallback Execution

Each council member’s execution method—whether subagent, codex_exec, gemini_cli, ollama_run, cursor_cli, or openai_compatible_api—runs inside a Bash shim that enforces strict timeouts and payload validation. When a call returns a non-zero exit code, empty stdout, or JSON parsing error, the coordinator triggers an immediate fallback.

The failed seat is automatically re-routed to the Anthropic Claude sub-agent using the member’s front-matter model specification (either opus or sonnet). The system logs the event with a [FALLBACK] tag and blacklists the failed provider for the remainder of the session. As implemented in SKILL.md, this rule applies uniformly across all deliberation rounds (1, 3, and 5), meaning a provider that fails once cannot re-enter the pool until the next session.

Chairman Synthesis Protection

After the three analysis rounds complete, the selected Chairman synthesizes the final verdict. If the Chairman’s provider request times out or returns an error, the coordinator does not fail the session. Instead, it synthesizes the verdict itself and annotates the output metadata with Chairman: <name> (FAILED — synthesized by coordinator fallback).

This final safety net ensures that even when the highest-tier model becomes unavailable, the council produces a complete, auditable output.

Fallback Chain Architecture

The complete fallback hierarchy operates as follows:

  • Member level: External provider (OpenAI-compatible, Cursor, etc.) → Claude sub-agent (same front-matter model)
  • Chairman level: External provider → Coordinator-generated verdict

All fallback events are captured in the session metadata block under fallbacks_triggered, creating a permanent audit trail for reliability analysis.

Practical Usage Examples

Run a full-mode council with automatic provider detection and fallback enabled:

council --triad strategy "Should we open-source our AI platform?"

If NVIDIA NIM becomes unavailable during execution, the coordinator logs the fallback and reroutes affected seats:


[FALLBACK] feynman failed on nvidia_nim/deepseek-v4-pro.

To force a Claude-only session and bypass auto-routing (useful for testing or air-gapped environments):

council --no-auto-route --triad architecture "What is the best repo layout?"

Inspect session metadata after a run to audit fallback events:

fallbacks_triggered:
  - "torvalds→openai_compatible_api/gpt-5.4"
  - "socrates→anthropic/opus"

Key Implementation Files

  • SKILL.md: Contains the detailed execution sequence, fallback rules for members and Chairman, and metadata schema definitions.
  • README.md: Documents the high-level provider detection logic and automatic fallback behavior.
  • configs/auto-route-defaults.yaml: Defines default provider tiers and Chairman model mappings used during fallback routing.

Summary

  • Automatic detection: scripts/detect-providers.sh probes available LLM endpoints at session start, defaulting to Claude if none respond.
  • Member-level resilience: Failed external provider calls automatically reroute to Anthropic Claude sub-agents with [FALLBACK] logging and session-wide provider blacklisting.
  • Chairman guarantee: If the Chairman synthesis fails, the coordinator generates the verdict and flags it in metadata.
  • Full auditability: The fallbacks_triggered list in session metadata records every degradation event for post-hoc analysis.

Frequently Asked Questions

What happens if all external LLM providers fail simultaneously?

The council defaults to single-provider mode using built-in Anthropic Claude models (opus or sonnet). According to the source code in SKILL.md, the system will route all 18 members through Claude sub-agents, ensuring the deliberation completes without external dependencies.

How long does a provider remain blacklisted after triggering a fallback?

Once a provider fails for a specific member, it remains excluded for the entire session. As documented in SKILL.md, the fallback rule applies uniformly to every round (1, 3, and 5), so a flapping provider cannot re-enter the rotation until the next council invocation.

Can I disable automatic fallback to test specific provider failure scenarios?

Yes. Use the --no-auto-route flag when invoking the council. This command skips the provider detection phase and forces every member onto the built-in Claude models, effectively disabling the external provider fallback path and allowing you to simulate or avoid specific failure modes.

Where can I find the complete list of fallback events for a session?

Check the session metadata block under the fallbacks_triggered key. This list captures every provider failure and subsequent rerouting event, including the member name and the specific provider endpoint that failed (e.g., "torvalds→openai_compatible_api/gpt-5.4").

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →