aicommit2 CLI
aicommit2 пишет сообщения коммитов для Git, YADM и Jujutsu по diff через несколько ИИ сразу, включая Claude Code, и дает выбрать
- 532 ★ репозитория
- Последний коммит
- MIT
Широкий доступ
Почему такой уровень
- Отправляет `diff` с вашим кодом облачным ИИ-провайдерам, если вы их подключили
- Сам выполняет git commit после подтверждения, а в режиме `--auto-select` и --confirm коммитит без вопроса
- Хранит ключи провайдеров в локальной конфигурации и по желанию ставит git-хук, который запускается при каждом коммите
Установка
- Работает в
Ручная установка
npm install -g aicommit2Альтернатива: brew install aicommit2 или Nix. Затем aicommit2 setup для настройки провайдеров.
Доступ и проверки
Как мы проверяемШирокий доступИнструмент может менять данные, выполнять команды или работать с секретами.
- Отправляет `diff` с вашим кодом облачным ИИ-провайдерам, если вы их подключили
- Сам выполняет git commit после подтверждения, а в режиме `--auto-select` и --confirm коммитит без вопроса
- Хранит ключи провайдеров в локальной конфигурации и по желанию ставит git-хук, который запускается при каждом коммите
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
aicommit2 — консольная программа на Node.js, которая по подготовленным изменениям (`diff`) составляет сообщения коммитов. Работает с Git, YADM и Jujutsu и определяет систему сама. Запросы уходят сразу нескольким ИИ-провайдерам, затем вы выбираете лучшее сообщение из списка. Среди провайдеров OpenAI, Anthropic, Gemini, Mistral, Codestral, Cohere, Groq, Perplexity, DeepSeek, OpenRouter, GitHub Models, Bedrock, Ollama и любые сервисы, совместимые с API OpenAI. Режимы Claude Code, Copilot SDK и Gemini CLI запускают установленные на машине CLI этих агентов; для Claude Code используется ваша подписка Pro или Max. Форматы сообщений: `conventional` и `gitmoji`. Флаги дают язык `--locale`, число вариантов `--generate`, свой промпт --prompt, исключение файлов `--exclude`, режим `--dry-run` без коммита и `--output json` для интеграции с LazyGit. Программа работает как хук `prepare-commit-msg`, переписывает сообщение уже сделанного коммита командой `aicommit2 rewrite` и делает структурированное ревью кода с уровнями серьезности перед коммитом. Сжатие `diff` по заявлению авторов экономит 30–60 процентов токенов, а режим слежения создает коммиты при изменениях.
Для кого. Разработчикам, которые хотят автоматизировать сообщения коммитов, сравнивать варианты от нескольких моделей и при желании использовать для этого уже оплаченную подписку на Claude Code.
Подходит, если
- Нужно быстро получить сообщение коммита по `git diff` в формате `conventional` или `gitmoji`
- Хочется сравнить сообщения от нескольких моделей, например Claude и Ollama, и выбрать подходящее
- Репозиторий ведется через Jujutsu или YADM, и нужен тот же инструмент
- Нужно подключить генерацию к LazyGit, git-хуку или `pre-commit`
Не подходит, если
- Дифф содержит конфиденциальный код, который нельзя отправлять облачным провайдерам: тогда нужен только локальный Ollama
- Сообщения коммитов должны писаться вручную по внутреннему стандарту, который нельзя выразить промптом
- Нужен агент, который сам вносит правки: программа только формирует сообщения и ревью
Пример запроса к агенту
Сгенерируй три варианта сообщения для текущих изменений в формате `conventional` через aicommit2 с флагом `--dry-run` и покажи ихОграничения
- Режимы Claude Code, Copilot SDK и Gemini CLI помечены Preview, для них должен быть установлен и авторизован соответствующий CLI.
- Для облачных провайдеров нужны ключи через `aicommit2 setup` или конфигурацию, затраты идут по тарифу провайдера. Флаг `--generate` с большим числом вариантов расходует больше токенов.
- Сжатие `diff` и исключение файлов экономят токены, но файлы из `--exclude` все равно попадают в коммит.
- Программа сама делает коммит после подтверждения, при отказе хука `pre-commit` спрашивает, повторить ли.
Как отключить. Удалите программу командой `npm uninstall -g aicommit2` или `brew uninstall aicommit2`. Хук `prepare-commit-msg`, если он был установлен, удаляют из папки .git/hooks репозитория. Ключи провайдеров лежат в конфигурации aicommit2, их удаляют вручную.
Частые вопросы
Как установить aicommit2 и начать пользоваться?
Выполните `brew install aicommit2` или `npm install -g aicommit2`, затем `aicommit2 setup` для настройки провайдеров. В репозитории подготовьте изменения через `git add` и запустите `aicommit2`: появится список сообщений для выбора.
Можно ли использовать подписку Claude Code?
Да. Режим Claude Code (Preview) запускает установленный на машине Claude Code CLI с вашей подпиской Pro или Max, отдельный ключ API для него не нужен. Для режимов Copilot SDK и Gemini CLI нужны их собственные авторизованные CLI.
Как получить сообщение без коммита?
Запустите `aicommit2 --dry-run`. Если вывод перенаправлен в файл или канал, первое сообщение выбирается без вопроса и пишется в `stdout`, поэтому режим удобен для скриптов. Для LazyGit есть `--output json`.
Какие системы контроля версий поддерживаются?
Git, YADM и Jujutsu. Программа определяет систему сама, принудительный выбор задают флагами `--git`, `--yadm` и `--jj`. Для Jujutsu флаг `--jj-auto-new` выполняет `jj new` после `jj describe`.
Как подключить aicommit2 как git-хук?
Запустите программу с флагом `--hook-mode`, и она работает как хук `prepare-commit-msg`. Для фреймворка `pre-commit` есть флаг `--pre-commit`. Если хук отклонил коммит, команда `aicommit2 --retry` повторит сохраненное сообщение без новой генерации.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
CLI-инструментыПеред коммитом можно сравнить несколько вариантов сообщения от модели и перенести выбранный текст в привычный Git-интерфейс.
CLI пишет сообщения коммитов по diff в формате Conventional Commits и ведет журнал изменений через Claude или API OpenAI.
gac пишет сообщение коммита по диффу через одного из 35 провайдеров и дает агентам MCP-инструменты для статуса и коммита.
cogit записывает каждое сообщение агенту как мысль-коммит и привязывает к нему код, так что причина любой строки видна.
Политика коммитов как код: проверяет сообщения, ветки, авторов и пометки ИИ по одному файлу cchk.toml в хуке и CI.
CLI делит изменения на атомарные коммиты и пишет сообщения в стиле conventional commits через LLM, плюс навык для агентов.
Сравнение с похожими
Карточки с тем же главным запросом: чем они отличаются.
| Инструмент | Официальный | Звезды репозитория | Главное отличие |
|---|---|---|---|
| aicommit2 (эта карточка) | нет | 532 | |
| aicommits | нет | 9 131 | похожий инструмент, aicommit2 опрашивает несколько провайдеров сразу и поддерживает Jujutsu, YADM и ревью кода |
| Conventional Commit Message — скилл для агентов | да | 8 532 | скилл с правилами формата сообщений, а aicommit2 сам генерирует сообщения по diff |
Коротко о README
README открывает быстрый старт и перечень возможностей, затем описывает поддерживаемые провайдеры в таблице с моделями по умолчанию. Далее идут принцип работы, системы контроля версий, флаги командной строки, интеграции с LazyGit и git-хуками, настройка, ревью кода и режим слежения.