// changelog

v1.4.1

A model-refresh release — OpenAI GPT-5 family support (including gpt-5.5-pro via the Responses API), the Gemini 3.x lineup, Claude Opus 4.8 as the new Anthropic default, and a setup wizard that no longer makes you retype an API key just to switch provider or model.

Released May 30, 2026

Added

  • OpenAI GPT-5 family — gpt-5.5, gpt-5.4-mini, gpt-5.5-pro. All three are selectable in commitbrief setup with correct context windows (1.05M / 400K / 1.05M input) and pricing. The new default OpenAI model is gpt-5.4-mini. gpt-5.5-pro runs through OpenAI’s Responses API (it isn’t offered on Chat Completions) and can take several minutes per review; reasoning models get a larger default output-token budget so a findings response is never truncated by reasoning tokens.

  • Gemini gemini-3.5-flash. Added alongside the rest of the refreshed Gemini lineup below.

Changed

  • Gemini lineup refreshed to the 3.x family. gemini-2.5-progemini-3.1-pro-preview, gemini-2.5-flashgemini-3.5-flash, gemini-1.5-flashgemini-3.1-flash-lite. The new default Gemini model is gemini-3.5-flash. Pricing and context windows updated; gemini-3.1-pro-preview carries tiered pricing (the ≤200K-token base tier is snapshotted). Configs pinning a removed 2.x / 1.5 model should switch to a 3.x ID.

  • Anthropic: claude-opus-4-7claude-opus-4-8. Opus 4.8 is now the default Anthropic model, with its built-in pricing ($5 input / $25 output / $0.50 cache-read per 1M) and 1M-token context window updated to match Anthropic’s current model docs. Configs pinning claude-opus-4-7 should switch to claude-opus-4-8.

  • setup no longer forces an API-key re-entry when one already exists. Re-running commitbrief setup for a provider that already has a key now lets you leave the key prompt blank to keep the stored key, so switching only the active provider or model doesn’t mean retyping credentials. First-time configuration still requires a non-empty key. For a non-interactive path, providers use <name> switches the active provider and config set providers.<name>.model <model> changes the model — both leave API keys untouched.