FabricFabric
LLM Providers

LLM Providers

Fabric Agents works with every frontier model — Anthropic, OpenAI, Google, Moonshot Kimi, and any OpenAI-compatible endpoint. This page covers setup for each.

Fabric Agents has a dual-SDK architecture: the Claude Agent SDK for Anthropic endpoints and the Pi SDK for everything else (OpenAI, Google, Moonshot, Groq, Mistral, xAI, Cerebras, Amazon Bedrock, Azure OpenAI, Hugging Face, OpenRouter, z.ai, and custom OpenAI-compatible endpoints). Both run side by side — you can have multiple connections in the same workspace and pick per session.

All connections are configured from Settings → AI. You can also add one during first-run onboarding; both paths save to the same global config.

Supported providers

ProviderAuthTypical modelsNotes
AnthropicAPI key (sk-ant-…) or Claude Max OAuthOpus 5.5, Opus 5, Opus 4.8, Opus 4.7, Opus 4.6, Fable 5.1, Fable 5, Sonnet 5, Sonnet 4.6, Haiku 4.5Direct via Claude Agent SDK. Supports extended thinking, 1M context beta, prompt caching.
OpenAIAPI key (sk-…) or ChatGPT Plus OAuth (Codex)GPT-6 Astra, GPT-6 Sol, GPT-6 Luna, GPT-5.6 (Sol, Terra, Luna), GPT-5.2 Codex, GPT-5.1 Codex MiniNew connections default to GPT-6 Astra, with GPT-5.6 Sol ranked next; existing connections keep their chosen default and see Astra in the picker after the next restart. Reasoning levels Low through Max are supported. OAuth path gives you Plus-quota access without an API key.
Google AI StudioAPI key (AIza…)Gemini 3.5 / 3.6 / 3.7 Flash, Gemini 2.5 Pro / Flash
Moonshot KimiAPI keyKimi K3, Kimi K2.6, Kimi K2.7 CodeThree presets: Moonshot AI, Moonshot AI (CN), and Kimi (Coding). K3 has a 1M-token context window. See the Kimi setup page.
Amazon BedrockIAM access keyClaude (incl. Fable 5.1, Opus 5.5, Opus 5, Opus 4.8, 4.7, 4.6), Nova, etc. via Bedrock inference profilesRegion prefix required (us., eu., global.).
Azure AI FoundryMicrosoft Entra ID (Azure AD)Whatever is deployed in your Foundry resourceEntra ID OAuth + auto-refresh. Discovers resources and deployments after sign-in. See the Azure setup page.
Azure OpenAIAPI keyWhatever is deployed in the resourceOlder Azure OpenAI Service path. Use Foundry above when possible.
Databricks Mosaic AIBearer token (PAT or workspace OAuth token)Your Model Serving endpoints (Llama, DBRX, custom deployments)Endpoints discovered automatically; optional AI Gateway route. See the Databricks setup page.
OpenRouterAPI key (sk-or-…)All models routed through OpenRouterOne key, many backends.
Groq / Mistral / xAI / Cerebras / z.ai / Hugging FaceAPI keyProvider-specificAll OpenAI-compatible under the hood.
ManifestAPI keyauto (their routing model) and any model Manifest exposesOpenAI-compatible router. Picking the Manifest preset seeds the default model to auto, which Manifest dispatches to the right backend per request.
Custom OpenAI-compatible endpointAPI key + base URLAny — you type the model id(s)Use for Ollama, LocalAI, LiteLLM, vLLM, MiniMax-CN, bring-your-own-gateway.
GitHub Copilot OAuthGitHub loginModels GitHub has enabled for your orgEnterprise-policy controlled.

Typical setup

  1. Open Settings → AI → Connections → Add.
  2. Pick a preset (or select Custom endpoint and paste a base URL).
  3. Paste the API key.
  4. Click Test connection — you should see a ✓ with the resolved model count.
  5. Save. The connection now appears in the workspace model picker.

Per-workspace vs global

  • Connections and credentials are global — one list of providers across the whole app, stored in ~/.fabric-agent/config.json.
  • The default connection and default model are workspace-scoped — each workspace can prefer a different provider. Override at Settings → Workspace → Defaults.
  • An individual session locks its connection after the first message so the conversation stays with the same backend. Change it before the first send, or branch the session if you need to migrate.

Model picker quirks by provider

  • Anthropic direct — The model list comes from Anthropic's live model API, so new Claude models appear as soon as Anthropic makes them available to your account. Opus 5.5 is the default for new connections, with the full 1M-token context window; it is also available on Amazon Bedrock (us./eu./global. inference profiles) and the other Pi-backed Anthropic connections. Existing connections keep the model they are pinned to. Opus 5, 4.8, 4.7, and 4.6 all stay selectable under the picker's Previous versions row if you hit tier limits on the newest model or prefer an older release; the picker itself shows only the newest release of each family. Opus 5.5 uses adaptive thinking that is always on, so the "off" and minimize-thinking settings resolve to low-effort adaptive thinking instead of disabling it. If an earlier update moved your connection off Opus 4.6, it is restored automatically on first launch — your default model is left untouched, and removing 4.6 again sticks. Fable 5 is offered alongside Opus — Anthropic's most capable model, with a full 1M-token context window, available on direct connections and on Bedrock (us./eu./global. inference profiles). Fable runs with adaptive thinking always on, so the "off" and minimize-thinking settings resolve to low-effort adaptive thinking rather than disabling it.
  • Pi SDK providers — model ids are prefixed with pi/ in the picker to keep them visually distinct from Anthropic's bare ids.
  • Moonshot Kimi — kimi-k3 is the current flagship (1M-token context, always-on reasoning, image input). The Kimi (Coding) preset ships endpoint-name ids (k3, kimi-for-coding, kimi-for-coding-highspeed) that Moonshot routes server-side; the older version-stamped k2p5 is phased out. See the Kimi page.
  • Custom OpenAI-compat — you list your own model ids; the app doesn't verify they exist until you send a message. Dedupes on save so copy-paste mistakes can't produce ["model-a", "model-a", …].

Connection failures

The Test connection button surfaces the exact error the provider returned. Common cases:

ErrorLikely cause
invalid_request on a large-context messageExtended Context (1M) is enabled but your Anthropic tier is below 4. Disable at Settings → AI → Performance → Extended Context (1M).
401 UnauthorizedWrong key, key revoked, or the key is for a different product (e.g. an admin key instead of a project key).
model not foundThe model id isn't in the provider's catalog. For custom endpoints, ask the operator which ids they expose.
Worker exited with code NNot an LLM failure — that's a subprocess helper (WhatsApp worker, Pi agent server) failing. See the main log for details.

On this page