Skip to content

Providers

Muhammet Şafak edited this page May 27, 2026 · 1 revision

Providers

CommitBrief supports six review backends. Four call HTTPS APIs directly; two shell out to a host CLI tool. One additional mock provider is registered for tests and not user-relevant.

Name Type API key Page
anthropic HTTPS API required Anthropic
openai HTTPS API required OpenAI
gemini HTTPS API required Gemini
ollama HTTPS API (local) not needed Ollama
claude-cli host-CLI subprocess not needed (uses Claude Code's auth) CLI tools
gemini-cli host-CLI subprocess not needed (uses Gemini CLI's auth) CLI tools

Picking a provider

# Interactive wizard (asks which one + API key + model).
commitbrief setup

# Switch the active default later without re-entering keys.
commitbrief providers use openai

# Override for one invocation.
commitbrief --provider gemini --model gemini-2.5-flash --staged

# Shorthand for the CLI-tool-backed providers.
commitbrief --cli claude --staged

API providers vs CLI-tool providers

Property API providers CLI-tool providers
Auth API key in CommitBrief config Host CLI's own auth (claude login, gemini auth)
Output shape Structured findings JSON (schema v1) Pre-formatted plain text from the host CLI
Cards / JSON / Markdown rendering All three available Plain-text emit only
--fail-on severity gate Honored Not applicable (no severity field)
Per-call cost Billed via the provider Counts against your host CLI subscription
--json / --markdown allowed Yes No — Cobra rejects the combination
--output <file> Yes Yes (UC-07, since v0.9.2)

CLI-tool providers are a thin subprocess wrapper around the host's own CLI; CommitBrief feeds the combined prompt in and streams stdout out verbatim. Their Pricing() returns zero, so the cost preflight short-circuits silently and the verbose footer shows instead of a dollar figure.

Provider name vs binary expectation

Provider Expected binary on PATH API endpoint
anthropic api.anthropic.com
openai api.openai.com
gemini generativelanguage.googleapis.com
ollama ollama runtime running on base_url <base_url> (default http://localhost:11434)
claude-cli claude (Claude Code) (subprocess, no HTTPS from CommitBrief)
gemini-cli gemini (Google Gemini CLI) (subprocess, no HTTPS from CommitBrief)

For Ollama, the binary running the server is detected via the base_url (default http://localhost:11434). The Ollama daemon must be running.

Where models come from

For Anthropic / OpenAI / Gemini / Ollama, the model is whatever you set in config (providers.<name>.model or --model). If unset, each provider falls back to its DefaultModel().

For CLI-tool providers, the host CLI manages model selection — the model config field is ignored.

See also

Clone this wiki locally