install-precommit

SKILL.md

You are helping the user install the pre-commit review hook.

What This Hook Does

The pre-commit review hook runs before every git commit and:

  1. Shows files being committed with their status (added/modified/deleted)
  2. Shows lines added and removed
  3. Detects potentially sensitive files (.env, secrets, keys)
  4. Detects debug statements (console.log, print, debugger, etc.)
  5. Shows new dependencies being added
  6. Shows TODOs being introduced
  7. Requires user confirmation (y/n/d for diff) before proceeding

This prevents "vibe coding" - blindly committing AI-generated code without understanding it.

Installation Steps

  1. Check prerequisites:

    • Verify this is a git repository (.git directory exists)
    • Check if a pre-commit hook already exists
  2. Create the hook script: If .claude/hooks/pre-commit-review.sh doesn't exist, create it with the standard implementation.

  3. Install as git hook:

    • Create .git/hooks/ directory if needed
    • Copy or symlink the script to .git/hooks/pre-commit
    • Make it executable
  4. Verify installation:

    • Confirm the hook is in place
    • Show the user how to test it
    • Explain how to bypass if needed

Hook Script Source

The pre-commit hook script is located at .claude/hooks/pre-commit-review.sh.

Do NOT embed a copy here - always use the canonical version from the hooks directory. This ensures updates to the hook are applied everywhere.

If .claude/hooks/pre-commit-review.sh doesn't exist in the user's project, they may need to copy it from a template or create it based on their needs.

After Installation

Tell the user:

  1. The hook is now active for all future commits
  2. To skip the review (not recommended): SKIP_PRE_COMMIT_REVIEW=1 git commit -m "message"
  3. To uninstall: rm .git/hooks/pre-commit

Output Format

[OK] Pre-commit review hook installed

Location: .git/hooks/pre-commit
Source: .claude/hooks/pre-commit-review.sh

The hook will run before every commit, showing:
- Files being committed
- Lines added/removed
- Potential issues (sensitive files, debug statements)
- Requires your confirmation before proceeding

To test: stage some files and run `git commit`
To skip: SKIP_PRE_COMMIT_REVIEW=1 git commit -m "message"
To remove: rm .git/hooks/pre-commit
Weekly Installs
6
GitHub Stars
12
First Seen
Jan 24, 2026
Installed on
opencode4
gemini-cli4
codex4
codebuddy3
github-copilot3
amp3