🚀 Git Auto Commit (gac)
June 18, 2026 · View on GitHub
🚀 Git Auto Commit (gac)
English | 简体中文 | 繁體中文 | 日本語 | 한국어 | हिन्दी | Tiếng Việt | Français | Русский | Español | Português | Norsk | Svenska | Deutsch | Nederlands | Italiano
Коммиты, созданные ИИ, которые понимают ваш код!
Автоматизируйте свои коммиты! Замените git commit -m "..." на uvx gac для получения контекстуальных, хорошо отформатированных сообщений коммитов, сгенерированных большими языковыми моделями!
Что вы получаете
Интеллектуальные, контекстуальные сообщения, которые объясняют почему ваших изменений:

Быстрый старт
uvx gac init # Настройте вашего провайдера, модель и язык
uvx gac # Сгенерируйте и закоммитьте с помощью ИИ
Вот и всё! Проверьте сгенерированное сообщение и подтвердите с y.
Основные функции
33+ Поддерживаемые провайдеры
- Anthropic • Azure OpenAI • Cerebras • ChatGPT (OAuth) • Chutes.ai • Claude Code (OAuth)
- Crof.ai • DeepInfra • DeepSeek • Fireworks • Gemini • GitHub Copilot (OAuth) • Groq
- Kimi for Coding • Lilac • LM Studio • MiniMax.io • Mistral AI • Moonshot AI • Neuralwatt • Ollama
- Ollama Cloud • OpenAI • OpenCode Go • OpenRouter • Plexus Gateway • Qwen Cloud (CN & INTL)
- Replicate • Streamlake/Vanchin • Synthetic.new • Together AI • Wafer.ai • Z.AI (API & Coding Plans)
- Custom Endpoints (Anthropic/OpenAI)
🧠 Умный анализ ИИ
- Понимает намерение: Анализирует структуру кода, логику и паттерны для понимания "почему" за вашими изменениями, а не только что изменилось
- Семантическая осведомлённость: Распознаёт рефакторинг, исправления ошибок, функции и критические изменения для генерации контекстуально подходящих сообщений
- Умная фильтрация: Приоритизирует значимые изменения, игнорируя сгенерированные файлы, зависимости и артефакты
- Умная группировка коммитов - Автоматически группирует связанные изменения в несколько логических коммитов с
--group
📝 Множественные форматы сообщений
- Однострочный (-o): Сообщение коммита в одну строку в формате conventional commit
- Стандартный (по умолчанию): Резюме с маркерами, объясняющими детали реализации
- Подробный (-v): исчерпывающие объяснения, включая мотивацию, технический подход и анализ влияния
- Правило 50/72 (флаг --50-72): Принудительное использование классического формата сообщений коммита для оптимальной читаемости в git log и GitHub UI
- DCO/Signoff (флаг --signoff): Добавляет строку Signed-off-by для соответствия Developer Certificate of Origin (требуется Cherry Studio, ядром Linux и другими проектами)
🌍 Многоязычная поддержка
- 25+ языков: Генерируйте сообщения коммитов на английском, китайском, японском, корейском, испанском, французском, немецком и 18+ других языках
- Гибкий перевод: Выберите сохранять префиксы conventional commit на английском для совместимости инструментов или полностью их переведите
- Множественные рабочие процессы: Установите язык по умолчанию с
uvx gac languageили используйте флаг-l <language>для разового изменения - Поддержка родных скриптов: Полная поддержка не-латинских скриптов, включая CJK, кириллицу, тайский и другие
💻 Опыт разработчика
- Интерактивная обратная связь: Введите
rдля перегенерации,eдля редактирования (встроенная TUI по умолчанию, или$GAC_EDITORесли установлен), или напрямую введите ваш отзыв, например, "сделай короче" или "сосредоточься на исправлении ошибки" - Интерактивные вопросы: Используйте
--interactive(-i) для ответа на целевые вопросы о ваших изменениях для более контекстуальных сообщений коммита - Рабочие процессы в одну команду: Полные рабочие процессы с флагами, такими как
uvx gac -ayp(индексировать всё, автоподтверждение, отправить) - Интеграция с Git: Уважает хуки pre-commit и lefthook, запуская их перед дорогостоящими операциями ИИ
- MCP-сервер: Запустите
uvx gac serveдля предоставления инструментов коммита ИИ-агентам через Model Context Protocol
📊 Статистика использования
uvx gac stats # Обзор: общие gac-коммиты, серии, дневные/недельные пики, лучшие проекты и модели
uvx gac stats models # Разбивка по моделям: gac-коммиты, токены, задержка, скорость, графики задержки на коммит
uvx gac stats projects # Разбивка по проектам: gac-коммиты, коммиты, токены, среднее файлов на gac во всех репозиториях
uvx gac stats recent # Недавняя история gac: токены, скорость, задержка, файлы на gac (-n 20 для большего количества)
uvx gac stats reset # Сбросить всю статистику (требует подтверждения)
uvx gac stats reset model <model-id> # Сбросить статистику только для конкретной модели
- Отслеживайте свои gac-коммиты: Узнайте, сколько коммитов вы сделали с помощью gac, вашу текущую серию, пиковую ежедневную/еженедельную активность и лучшие проекты
- Отслеживание токенов: Общее количество токенов промпта и завершения по дням, неделям, проектам и моделям — с трофеями за рекорды использования токенов
- Лучшие модели: Узнайте, какие модели вы используете чаще всего и сколько токенов потребляет каждая
- Празднование рекордов: 🏆 трофеи при установке новых ежедневных, еженедельных рекордов, рекордов токенов или серии; 🥈 за их повторение
- Opt-in при настройке:
uvx gac initспрашивает, хотите ли вы включить статистику, и объясняет, что именно хранится - Opt-out в любое время: Установите
GAC_DISABLE_STATS=true(или1/yes/on) для отключения. Установкаfalse/0/no(или снятие) оставляет статистику включённой - Конфиденциальность прежде всего: Хранится локально в
~/.gac_stats.json. Только счётчики, даты, имена проектов и имена моделей — нет сообщений коммитов, кода или личных данных. Без телеметрии
🛡️ Встроенная безопасность
- Автоматическое обнаружение секретов: Сканирует наличие ключей API, паролей и токенов перед коммитом
- Интерактивная защита: Запрашивает подтверждение перед коммитом потенциально чувствительных данных с чёткими опциями исправления
- Умная фильтрация: Игнорирует примеры файлов, шаблоны и текст-заполнители для уменьшения ложных срабатываний
Примеры использования
Базовый рабочий процесс
# Индексируйте ваши изменения
git add .
# Сгенерируйте и закоммитьте с помощью ИИ
uvx gac
# Проверьте → y (коммит) | n (отмена) | r (перегенерировать) | e (редактировать) | или введите отзыв
Распространённые команды
| Команда | Описание |
|---|---|
uvx gac | Сгенерировать сообщение коммита |
uvx gac -y | Автоподтверждение (проверка не требуется) |
uvx gac -a | Индексировать всё перед генерацией сообщения коммита |
uvx gac -S | Интерактивно выбрать файлы для индексации |
uvx gac -o | Однострочное сообщение для незначительных изменений |
uvx gac -v | Подробный формат с мотивацией, техническим подходом и анализом влияния |
uvx gac -h "подсказка" | Добавить контекст для ИИ (например, uvx gac -h "исправление ошибки") |
uvx gac -s | Включить область (например, feat(auth):) |
uvx gac -i | Задавать вопросы об изменениях для лучшего контекста |
uvx gac -g | Группировать изменения в несколько логических коммитов |
uvx gac -p | Закоммитить и отправить |
uvx gac model | Изменить поставщика и модель ИИ |
uvx gac stats | Просмотреть статистику использования gac |
Примеры для опытных пользователей
# Полный рабочий процесс в одной команде
# Просмотреть статистику ваших коммитов
uvx gac stats
# Статистика всех проектов
uvx gac stats projects
uvx gac -ayp -h "подготовка релиза"
# Подробное объяснение с областью
uvx gac -v -s
# Быстрое однострочное сообщение для небольших изменений
uvx gac -o
# Сгенерировать сообщение коммита на определённом языке
uvx gac -l ru
# Сгруппировать изменения в логически связанные коммиты
uvx gac -ag
# Интерактивный режим с подробным выводом для детальных объяснений
uvx gac -iv
# Отладить то, что видит ИИ
uvx gac --show-prompt
# Пропустить сканирование безопасности (используйте осторожно)
uvx gac --skip-secret-scan
# Добавить signoff для соответствия DCO (Cherry Studio, ядро Linux и т.д.)
uvx gac --signoff
Система интерактивной обратной связи
Не довольны результатом? У вас есть несколько опций:
# Простая перегенерация (без отзыва)
r
# Редактировать сообщение коммита
e
# Или просто введите ваш отзыв напрямую!
сделай короче и сосредоточься на улучшении производительности
используй формат conventional commit с областью
объясни последствия для безопасности
# Нажмите Enter на пустом вводе, чтобы увидеть приглашение снова
Функция редактирования (e) позволяет доработать сообщение коммита:
- По умолчанию (встроенная TUI): Многострочное редактирование с горячими клавишами vi/emacs — исправлять опечатки, корректировать формулировки, реструктурировать
- С
GAC_EDITOR: Открывает предпочитаемый редактор (code,vim,nanoи т.д.) — все возможности редактора, включая поиск/замена, макросы и т.д.
GUI-редакторы, такие как VS Code, обрабатываются автоматически: gac вставляет --wait, чтобы процесс блокировался до закрытия вкладки редактора. Дополнительная настройка не требуется.
Конфигурация
Запустите uvx gac init для интерактивной настройки вашего провайдера или установите переменные окружения:
Нужно изменить провайдеров или модели позже, не затрагивая настройки языка? Используйте uvx gac model для упрощённого рабочего процесса, который пропускает запросы языка.
Смотрите .gac.env.example для всех доступных опций.
Хотите сообщения коммитов на другом языке? Запустите uvx gac language для выбора из 25+ языков, включая Español, Français, 日本語 и другие.
Хотите настроить стиль сообщений коммитов? См. docs/CUSTOM_SYSTEM_PROMPTS.md для руководства по написанию пользовательских системных промптов.
Получение помощи
- Полная документация: USAGE.md - Полное справочное руководство по CLI
- MCP-сервер: docs/MCP.md - Использование GAC в качестве MCP-сервера для ИИ-агентов
- Claude Code OAuth: docs/CLAUDE_CODE.md - Настройка и аутентификация Claude Code
- ChatGPT OAuth: docs/CHATGPT_OAUTH.md - Настройка и аутентификация ChatGPT OAuth
- Пользовательские промпты: CUSTOM_SYSTEM_PROMPTS.md - Настройка стиля сообщений коммитов
- Статистика использования: См.
uvx gac stats --helpили полную документацию - Устранение неполадок: TROUBLESHOOTING.md - Распространённые проблемы и решения
- Вклад в проект: CONTRIBUTING.md - Настройка среды разработки и руководства