From 10207b8a01a283c089557c6f945f47a16fff53e2 Mon Sep 17 00:00:00 2001 From: mzazakeith <31074382+mzazakeith@users.noreply.github.com> Date: Thu, 19 Mar 2026 19:32:54 +0000 Subject: [PATCH 1/2] feat: add support for Gemini 3 models - Add gemini-3.1-pro-preview, gemini-3.1-flash-lite-preview, and gemini-3-flash-preview to supported models in config.ts - Update gemini.ts to use thinkingLevel: 'minimal' for Gemini 3 models for fast commit message generation - Update README.md to include new Gemini 3 models and descriptions --- README.md | 5 ++++- src/utils/config.ts | 3 +++ src/utils/gemini.ts | 1 + 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 56edaf2..cf174fe 100644 --- a/README.md +++ b/README.md @@ -200,12 +200,15 @@ Note, this will use more tokens as it generates more results. Default: `gemini-2.5-flash` The Gemini model to use. Supported models include: +- `gemini-3.1-pro-preview` - Gemini 3.1 Pro Preview (State-of-the-art) +- `gemini-3.1-flash-lite-preview` - Gemini 3.1 Flash Lite Preview (High-volume) +- `gemini-3-flash-preview` - Gemini 3 Flash Preview (Fast and capable) - `gemini-2.5-flash` (default) - Fast and efficient - `gemini-2.5-pro` - More capable but slower - `gemini-1.5-flash` - Previous generation fast model - `gemini-1.5-pro` - Previous generation capable model -> Tip: `gemini-2.5-pro` provides more sophisticated code analysis but may be slower and more expensive than `gemini-2.5-flash`. +> Tip: `gemini-3.1-pro-preview` provides state-of-the-art reasoning but may be slower than Flash models. #### timeout diff --git a/src/utils/config.ts b/src/utils/config.ts index 4c5f6ae..1c4f22a 100644 --- a/src/utils/config.ts +++ b/src/utils/config.ts @@ -86,6 +86,9 @@ const configParsers = { // Validate that it's a supported Gemini model const supportedModels = [ + 'gemini-3.1-pro-preview', + 'gemini-3.1-flash-lite-preview', + 'gemini-3-flash-preview', 'gemini-2.5-flash', 'gemini-2.5-pro', 'gemini-1.5-flash', diff --git a/src/utils/gemini.ts b/src/utils/gemini.ts index 606a4d4..d672f2e 100644 --- a/src/utils/gemini.ts +++ b/src/utils/gemini.ts @@ -55,6 +55,7 @@ export const generateCommitMessage = async ( ...generationConfig, systemInstruction, ...(model.includes('2.5') && model.toLowerCase().includes('flash') ? { thinkingConfig: { thinkingBudget: 0 } } : {}), + ...(model.startsWith('gemini-3') ? { thinkingConfig: { thinkingLevel: 'minimal' } } : {}), } }); From fab7519c39662f95c9305329d3a74e5d50214b28 Mon Sep 17 00:00:00 2001 From: mzazakeith <31074382+mzazakeith@users.noreply.github.com> Date: Thu, 19 Mar 2026 19:45:17 +0000 Subject: [PATCH 2/2] feat: add Gemini 3 support and sunset Gemini 1.5 models - Added support for Gemini 3.1 Pro Preview, 3.1 Flash Lite Preview, and 3 Flash Preview - Removed support for Gemini 1.5 Flash and 1.5 Pro models - Implemented thinkingLevel: 'low' for Pro models and 'minimal' for Flash models to ensure optimal performance and cost-efficiency - Updated README.md and config validation to reflect these changes --- README.md | 2 -- src/utils/config.ts | 4 +--- src/utils/gemini.ts | 6 +++++- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index cf174fe..553473b 100644 --- a/README.md +++ b/README.md @@ -205,8 +205,6 @@ The Gemini model to use. Supported models include: - `gemini-3-flash-preview` - Gemini 3 Flash Preview (Fast and capable) - `gemini-2.5-flash` (default) - Fast and efficient - `gemini-2.5-pro` - More capable but slower -- `gemini-1.5-flash` - Previous generation fast model -- `gemini-1.5-pro` - Previous generation capable model > Tip: `gemini-3.1-pro-preview` provides state-of-the-art reasoning but may be slower than Flash models. diff --git a/src/utils/config.ts b/src/utils/config.ts index 1c4f22a..3e50e3f 100644 --- a/src/utils/config.ts +++ b/src/utils/config.ts @@ -90,9 +90,7 @@ const configParsers = { 'gemini-3.1-flash-lite-preview', 'gemini-3-flash-preview', 'gemini-2.5-flash', - 'gemini-2.5-pro', - 'gemini-1.5-flash', - 'gemini-1.5-pro' + 'gemini-2.5-pro' ]; if (!supportedModels.includes(model)) { diff --git a/src/utils/gemini.ts b/src/utils/gemini.ts index d672f2e..fec60c4 100644 --- a/src/utils/gemini.ts +++ b/src/utils/gemini.ts @@ -55,7 +55,11 @@ export const generateCommitMessage = async ( ...generationConfig, systemInstruction, ...(model.includes('2.5') && model.toLowerCase().includes('flash') ? { thinkingConfig: { thinkingBudget: 0 } } : {}), - ...(model.startsWith('gemini-3') ? { thinkingConfig: { thinkingLevel: 'minimal' } } : {}), + ...(model.startsWith('gemini-3') ? { + thinkingConfig: { + thinkingLevel: model.includes('pro') ? 'low' : 'minimal' + } + } : {}), } });