On this page

Sigil Provider Guide

Docs home · Configuration · DeepSeek · OpenAI-compatible · OpenAI Responses · Anthropic · Gemini · 简体中文

Sigil separates provider choice from the rest of the user workflow. This guide and the linked provider pages are the source of truth for provider selection, authentication variables, model endpoints, and provider-specific options. Shared workspace, permission, task, terminal, and tool settings remain in Configuration.

Choose A Provider

ProviderBest fitImage input V1Config valueGuide
DeepSeekDefault Quick Setup path, DeepSeek chat, FIM, and DeepSeek-specific endpoint options.Not supporteddeepseekDeepSeek provider
OpenAI-compatibleOpenAI or a compatible Chat Completions /v1 gateway.Not supportedopenai_compatOpenAI-compatible provider
OpenAI ResponsesOpenAI Responses /v1/responses models and event stream.Explicit recognized model IDsopenai_responsesOpenAI Responses provider
AnthropicClaude models through Anthropic Messages streaming.Explicit recognized Claude IDsanthropicAnthropic provider
GeminiGemini models through streamGenerateContent and function calling.Explicit recognized Gemini IDsgeminiGemini provider

For first use, run sigil and complete Quick Setup. Use manual config when you need repeatable local defaults, CI automation, or a provider not exposed by your current Quick Setup path.

Provider Selection

Set [agent].provider and configure the matching [providers.*] block:

[agent]
provider = "deepseek"
model = "deepseek-v4-flash"
tool_timeout_secs = 30

[providers.deepseek]
# Provider block contains endpoint/auth/provider-specific fields.

[agent].model is the single chat-model setting. Role-specific task settings can still override the inherited agent provider/model for planner, executor, or subagent roles.

Authentication Priority

Prefer environment variables for credentials. Plaintext api_key fields are supported for local-only configs, but doctor warns when a key is resolved only from config.

ProviderEnvironment keyConfig fallback
DeepSeekSIGIL_API_KEY[providers.deepseek].api_key
OpenAI-compatibleSIGIL_OPENAI_COMPATIBLE_API_KEY[providers.openai_compat].api_key
OpenAI ResponsesSIGIL_OPENAI_RESPONSES_API_KEY[providers.openai_responses].api_key
AnthropicSIGIL_ANTHROPIC_API_KEY[providers.anthropic].api_key
GeminiSIGIL_GEMINI_API_KEY[providers.gemini].api_key

Run this after changing credentials:

sigil doctor

Inside the TUI, /doctor shows the same provider and key-source checks in the transcript without printing secret values.

Copyable Starting Points

Config templates live in docs/examples/config:

Use them as starting points, then review model names, base URLs, key sources, and permission policy before running in a real workspace.

Behavior Boundaries

Provider-specific options stay on the matching provider page. The shared Sigil workflow remains consistent:

Troubleshooting Path

If a provider fails:

  1. Run sigil doctor and check provider name, model, base URL, and API key source.
  2. Confirm [agent].provider matches the configured [providers.*] block.
  3. Confirm the expected environment variable is visible in the same shell where sigil starts.
  4. Check the provider-specific page for endpoint and timeout fields.
  5. Keep [permission].mode = "manual" while diagnosing so write actions remain visible.