git-add-changes — хук для Claude Code: установка и автодобавление в Git
После редактирования или создания файла хук добавляет его в Git. Изменения оказываются подготовлены к следующему коммиту.
npx claude-code-templates@latest --hook post-tool/git-add-changesЧто делает git-add-changes
Хук срабатывает после инструментов Edit и Write: берёт путь к изменённому файлу из CLAUDE_TOOL_FILE_PATH и выполняет git add. В индекс попадает только этот файл, а не все изменения проекта.
Команда подавляет вывод ошибок и завершается успешно даже вне Git-репозитория. Это значит, что отсутствие репозитория не остановит работу инструмента, но файл там, конечно, не будет добавлен в индекс. Для установки запустите npx claude-code-templates@latest --hook post-tool/git-add-changes; настройки хука находятся в .claude/settings.json.
Какие задачи решает
- добавить отредактированный файл в индекс Git
- подготовить созданный файл к следующему коммиту
- автоматически индексировать файлы после
EditиWrite
Примеры запросов агенту
- Отредактируй
src/app.tsи подготовь этот файл к коммиту. - Создай
README.md, затем добавь его в индекс Git. - Запиши изменения в
config.jsonи автоматически проиндексируй его.
Как установить git-add-changes
1Через claude-code-templates
npx claude-code-templates@latest --hook post-tool/git-add-changes2Вручную: положить файлы
.claude/settings.jsonБлок hooks: событие (PreToolUse, PostToolUse, Stop…) → команда. Личные — ~/.claude/settings.json
По шагам, с командами для каждой платформы: Хуки Claude Code: что это, где настраивать и как запретить опасную команду
Вопросы о git-add-changes
Как установить git-add-changes в Claude Code?
Запустите npx claude-code-templates@latest --hook post-tool/git-add-changes. Настройки хука находятся в .claude/settings.json.
Что делает git-add-changes?
После Edit или Write хук выполняет git add для изменённого файла, чтобы подготовить его к коммиту.
Работает ли git-add-changes вне Git-репозитория?
Да. Ошибки команды подавляются, поэтому хук не прерывается, если текущая папка не является Git-репозиторием.
Исходный текст
git-add-changes.json · MIT
{
"description": "Automatically stage changes in git after file modifications for easier commit workflow. This hook runs 'git add' on any file that Claude edits or writes, automatically staging changes for the next commit. Includes error suppression so it won't fail in non-git repositories. Helps streamline the development workflow by preparing files for commit.",
"hooks": {
"PostToolUse": [
{
"matcher": "Edit",
"hooks": [
{
"type": "command",
"command": "git add \"$CLAUDE_TOOL_FILE_PATH\" 2>/dev/null || true"
}
]
},
{
"matcher": "Write",
"hooks": [
{
"type": "command",
"command": "git add \"$CLAUDE_TOOL_FILE_PATH\" 2>/dev/null || true"
}
]
}
]
}
}
© davila7 · MIT · davila7/claude-code-templates