Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>Commit SageNew to Visual Studio Code? Get it now.
Commit Sage

Commit Sage

Ivan K

|
4,948 installs
| (8) | Free
Free AI commit messages using Gemini, Codestral, Ollama, or custom LLM
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Commit Sage (formerly GeminiCommit)

Visual Studio Marketplace Version Visual Studio Marketplace Last Updated Visual Studio Marketplace Installs Visual Studio Marketplace Rating Ask DeepWiki

Commit Sage is a VSCode extension that automatically generates commit messages using various AI providers:

  • Gemini (default, requires API key, free)
  • OpenAI (requires API key or compatible provider)
  • Codestral (requires API key, free)
  • Ollama (local, free)

Commit Sage in action

Features

  • 🤖 AI-powered commit message generation
  • 🔄 Auto model selection for Gemini (tries available models until success)
  • 🌍 Multiple language support (English, Russian, Chinese, Japanese, Korean, German, French, Spanish, Portuguese)
  • 📝 Various commit formats (Conventional, Angular, Karma, Semantic, Emoji, EmojiKarma, Google, Atom)
  • 🔄 Smart handling of staged/unstaged changes
  • 🚀 Auto-commit and auto-push capabilities
  • 🎯 Custom instructions support
  • ⚡ Fast and efficient processing

Configuration

Get your API key:

  • For Gemini: Get it from Google AI Studio
  • For Codestral: Mistral AI Console
  • For custom endpoint: Use your OpenAI API key or other compatible service

AI Provider Settings

  • Provider Selection (commitSage.provider.type):

    • Choose between: gemini, openai, codestral, ollama
    • Default: gemini
  • Gemini Settings:

    • Model (commitSage.gemini.model):
      • Default: auto (recommended) — see Auto Mode below.
      • Explicit options are also available; the canonical list lives in package.json (commitSage.gemini.model.enum) and is updated as Google ships new models.
    • Auto Mode (auto):
      • Automatically fetches the list of available Gemini models from the API
      • Tries each model sequentially until one succeeds
      • Useful when you don't want to manually update model names or when specific models are unavailable
      • Provides maximum reliability by automatically switching to working models
  • OpenAI Settings:

    • Model (commitSage.openai.model): Default gpt-3.5-turbo
    • Base URL (commitSage.openai.baseUrl): For custom endpoints/Azure
  • Codestral Settings:

    • Model (commitSage.codestral.model):
      • Options: codestral-2405, codestral-latest
      • Default: codestral-latest
  • Ollama Settings:

    • Base URL (commitSage.ollama.baseUrl): Default http://localhost:11434
    • Model (commitSage.ollama.model): Default llama3.2

Commit Settings

  • Language (commitSage.commit.commitLanguage):

    • Options: english, russian, chinese, japanese, korean, german, french, spanish, portuguese
    • Default: english
  • Format (commitSage.commit.commitFormat):

    • Options: conventional, angular, karma, semantic, emoji, emojiKarma, google, atom
    • Default: conventional
  • Staged Changes (commitSage.commit.onlyStagedChanges):

    • When enabled: Only analyzes staged changes
    • When disabled:
      • Uses staged changes if present
      • Uses all changes if no staged changes
    • Default: false
  • Auto Commit (commitSage.commit.autoCommit):

    • Automatically commits after message generation
    • Default: false
  • Auto Push (commitSage.commit.autoPush):

    • Automatically pushes after auto-commit
    • Requires Auto Commit to be enabled
    • Default: false
  • References (commitSage.commit.promptForRefs):

    • Prompts for issue/PR references
    • Default: false

Custom Instructions

  • Enable (commitSage.commit.useCustomInstructions):

    • Default: false
  • Instructions (commitSage.commit.customInstructions):

    • Custom prompt instructions
    • Used when enabled

Telemetry

  • Enable (commitSage.telemetry.enabled):
    • Collects anonymous usage data
    • Default: true

Project Configuration (.commitsage/config.json)

You can override extension settings for individual projects by creating a .commitsage/config.json file in your project root. This allows different projects to have different AI providers, commit formats, or other settings.

Legacy single-file .commitsage configurations are still loaded and are automatically migrated to .commitsage/config.json on next activation.

Creating Project Configuration

  1. Open Command Palette (Ctrl+Shift+P / Cmd+Shift+P)
  2. Run "Commit Sage: Create Project Config (.commitsage)"
  3. Edit the generated .commitsage/config.json with your project-specific settings

Example .commitsage/config.json:

{
  "provider": {
    "type": "gemini"
  },
  "commit": {
    "commitLanguage": "russian",
    "commitFormat": "conventional",
    "autoCommit": false,
    "autoPush": false
  },
  "gemini": {
    "model": "auto"
  },
  "telemetry": {
    "enabled": false
  }
}

Settings Priority

Settings are loaded in the following order (higher priority overrides lower):

  1. Project settings (.commitsage/config.json) - Highest priority
  2. VS Code workspace settings - Medium priority
  3. VS Code global settings - Lowest priority

Notes

  • The .commitsage/config.json file is automatically watched for changes
  • Invalid JSON syntax will show an error notification
  • API keys are still managed through VS Code's secure storage (not stored in project files)
  • You can override any setting available in the extension configuration

Usage

  1. Stage your changes in Git
  2. Open the Source Control view (Ctrl+Shift+G / Cmd+Shift+G), then press Ctrl+G (Windows/Linux) / Cmd+G (Mac) — the keybinding is scoped to the SCM view to avoid clashing with editor shortcuts
  3. Or click the Commit Sage icon in the Source Control view
  4. Or run "Commit Sage: Generate Commit Message" from the Command Palette (works from anywhere)
  5. Wait for the AI to analyze changes and generate a message
  6. Review and edit the message if needed
  7. Commit as usual

Requirements

  • VSCode 1.93.0 or higher
  • Git installed and configured
  • Internet connection (except for Ollama)
  • API key for OpenAI/Codestral (if using those providers)

Documentation

Detailed guides are available in the docs/ directory:

  • Providers — setup and comparison of all AI providers
  • Configuration Reference — all settings with defaults
  • Commit Formats — format descriptions and examples
  • Troubleshooting — common errors and solutions
  • Adding a Provider — contributor guide
  • Adding a Language — contributor guide
  • Adding a Format — contributor guide
  • Testing — running unit + E2E tests, mock LLM, adding new tests

Privacy & Security

  • API keys are stored in VS Code's secure storage (OS keychain), never in plain text files
  • Code changes are sent to the selected AI provider for analysis — do not use cloud providers on repositories containing secrets
  • Ollama runs locally — no data leaves your machine
  • Telemetry collects anonymous usage events (provider type, errors) to help improve the extension; disable via commitSage.telemetry.enabled: false

License

MIT

Support

If you encounter any issues or have suggestions, please open an issue.

For troubleshooting common problems, see docs/troubleshooting.md.


Commit Sage (на русском)

Commit Sage - расширение VSCode для автоматической генерации сообщений коммитов с использованием Gemini AI от Google, Codestral API или OpenAI API (OpenAI, Ollama, LocalAI и другие).

Установка

  1. Установите из VS Code Marketplace
  2. Получите API ключ:
    • Для Gemini: Google AI Studio
    • Для Codestral: Mistral AI Console
    • Для других: Используйте ключ от OpenAI или другого совместимого сервиса
  3. Настройте ключ в VS Code:
    • Откройте палитру команд (Ctrl+Shift+P / Cmd+Shift+P)
    • Введите "Commit Sage: Set Gemini API Key", "Commit Sage: Set Codestral API Key" или "Commit Sage: Set Custom API Key"
    • Введите ваш API ключ

Использование

  1. Добавьте изменения в Git (git add)
  2. Откройте палитру команд (Ctrl+Shift+P / Cmd+Shift+P)
  3. Введите "Commit Sage: Generate Commit Message"
  4. Проверьте и подтвердите сгенерированное сообщение

Настройка

Все настройки доступны через:

  • Палитра команд → "Preferences: Open Settings (UI)"
  • Поиск "Commit Sage"

Конфигурация проекта (.commitsage/config.json)

Вы можете переопределить настройки расширения для отдельных проектов, создав файл .commitsage/config.json в корне проекта. Это позволяет разным проектам иметь разные провайдеры ИИ, форматы коммитов или другие настройки.

Старый одиночный файл .commitsage всё ещё поддерживается и автоматически мигрируется в .commitsage/config.json при следующей активации расширения.

Создание конфигурации проекта

  1. Откройте палитру команд (Ctrl+Shift+P / Cmd+Shift+P)
  2. Выполните "Commit Sage: Create Project Config (.commitsage)"
  3. Отредактируйте созданный .commitsage/config.json с настройками для вашего проекта

Пример .commitsage/config.json:

{
  "provider": {
    "type": "gemini"
  },
  "commit": {
    "commitLanguage": "russian",
    "commitFormat": "conventional",
    "autoCommit": false,
    "autoPush": false
  },
  "gemini": {
    "model": "auto"
  },
  "telemetry": {
    "enabled": false
  }
}

Приоритет настроек

Настройки загружаются в следующем порядке (более высокий приоритет переопределяет низкий):

  1. Настройки проекта (файл .commitsage/config.json) - Наивысший приоритет
  2. Настройки рабочей области VS Code - Средний приоритет
  3. Глобальные настройки VS Code - Низший приоритет

Примечания

  • Файл .commitsage/config.json автоматически отслеживается на изменения
  • Неверный JSON синтаксис покажет уведомление об ошибке
  • API ключи по-прежнему управляются через защищенное хранилище VS Code (не хранятся в файлах проекта)
  • Вы можете переопределить любую настройку, доступную в конфигурации расширения

Поддержка

  • Telegram Канал - Анонсы обновлений
  • Telegram Группа - Обсуждения и поддержка сообщества
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft