Skip to content

Fallback between providers

Pick a preferred provider and fall back if it is unavailable.

ts
import { chat } from "switchboard-ai-sdk";

async function ask(prompt: string) {
  const result = await chat(
    {
      messages: [{ role: "user", content: prompt }]
    },
    {
      providers: ["ollama", "opencode", "codex", "claude-code"],
      retries: 1,
      perAttemptTimeoutMs: 15000
    }
  );

  return result.result.message.content;
}

Prefer runtime over agent

ts
const preference = ["ollama", "opencode", "codex", "claude-code"];

Prefer agent over runtime

ts
const preference = ["codex", "claude-code", "opencode", "ollama"];

Released under the MIT License. · llms.txt