CClaude Code Catalog
全Hooks

Pre-Commit Lint

Pre-Tool入門Hookタイプ: pre-tool-use

Pre-Commit Lintは、「git commit」を含むBashコマンドのPre-Toolイベントにフックします。commitが実行される前に、ステージされたファイルに対してESLintを実行し、Prettierのフォーマットを確認します。lintエラーやフォーマットの問題が見つかった場合、commitをブロックして問題を報告し、Claudeが先に修正できるようにします。これにより、手動介入なしにすべてのcommitがプロジェクトのコード品質基準を満たすことが保証されます。

lintESLintPrettierコード品質commit

Hookコード

#!/bin/bash # Pre-Commit Lint Hook # Runs ESLint and Prettier on staged files before git commit # Only intercept git commit commands if [[ "$TOOL_NAME" != "Bash" ]] || ! echo "$TOOL_INPUT" | grep -q "git commit"; then exit 0 fi STAGED_FILES=$(git diff --cached --name-only --diff-filter=ACMR | grep -E '\.(ts|tsx|js|jsx)$') if [ -z "$STAGED_FILES" ]; then exit 0 fi echo "Running ESLint on staged files..." npx eslint $STAGED_FILES --quiet LINT_EXIT=$? echo "Checking Prettier formatting..." npx prettier --check $STAGED_FILES 2>/dev/null FORMAT_EXIT=$? if [ $LINT_EXIT -ne 0 ] || [ $FORMAT_EXIT -ne 0 ]; then echo "ERROR: Lint or format issues found. Fix before committing." exit 1 fi echo "All checks passed." exit 0

このHookをClaude Code設定または.claude/settings.jsonに追加して有効化してください。

実行プレビュー

Pre-Commit Lint

Pre-Commit Lintについて

Claude Code Hooksは、Claude操作中の特定イベントに応じてカスタムシェルコマンドを自動実行します。Pre-Commit Lintは入門レベルのPre-Tool Hookで、開発ワークフローの重要なタイミングでタスクを自動化し、手動ステップを削減してチーム全体の一貫性を維持します。

関連Hooks