Skip to content
git-guardrails-claude-code logo

Setup Git Guardrails

git-guardrails-claude-code

Set up Claude Code hooks to block dangerous git commands (push, reset --hard, clean, branch -D, etc.) before they execute. Use when user wants to prevent destructive git operations, add git safety hooks, or block git push/reset in Claude Code.

mattpocock/skills430.6Kinstalls276.6KstarsGit & Pull Requests

SKILL.md

Full skill instructions

Setup Git Guardrails

Sets up a PreToolUse hook that intercepts and blocks dangerous git commands before Claude executes them.

What Gets Blocked

  • git push (all variants including --force)
  • git reset --hard
  • git clean -f / git clean -fd
  • git branch -D
  • git checkout . / git restore .

When blocked, Claude sees a message telling it that it does not have authority to access these commands.

Steps

1. Ask scope

Ask the user: install for this project only (.claude/​settings.json) or all projects (~/​.claude/​settings.json)?

2. Copy the hook script

The bundled script is at: scripts/​block-dangerous-git.sh

Copy it to the target location based on scope:

  • Project: .claude/​hooks/​block-dangerous-git.sh
  • Global: ~/​.claude/​hooks/​block-dangerous-git.sh

Make it executable with chmod +x.

3. Add hook to settings

Add to the appropriate settings file:

Project (.claude/​settings.json):

{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Bash",
        "hooks": [
          {
            "type": "command",
            "command": "\"$CLAUDE_PROJECT_DIR\"/​.claude/​hooks/​block-dangerous-git.sh"
          }
        ]
      }
    ]
  }
}

Global (~/​.claude/​settings.json):

{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Bash",
        "hooks": [
          {
            "type": "command",
            "command": "~/​.claude/​hooks/​block-dangerous-git.sh"
          }
        ]
      }
    ]
  }
}

If the settings file already exists, merge the hook into existing hooks.PreToolUse array — don't overwrite other settings.

4. Ask about customization

Ask if user wants to add or remove any patterns from the blocked list. Edit the copied script accordingly.

5. Verify

Run a quick test:

echo '{"tool_input":{"command":"git push origin main"}}' | <path-to-script>

Should exit with code 2 and print a BLOCKED message to stderr.

More Git & Pull Requests skills

receiving-code-review logo
Git & Pull Requests

receiving-code-review

Evaluate code review feedback with technical rigor before implementing, avoiding performative agreement and blind implementation.

295.4K 208.8K
View
using-git-worktrees logo
Git & Pull Requests

using-git-worktrees

Isolated git worktrees with smart directory selection and safety verification.

295.4K 205.2K
View

Structured workflow for completing development branches with test verification and merge/PR options.

295.4K 202.3K
View
review logo
Git & Pull Requests

review

review

276.6K 94.8K
View
code-review-and-quality logo
Git & Pull Requests

code-review-and-quality

Conducts multi-axis code review. Use before merging any change. Use when reviewing code written by yourself, another agent, or a human. Use when you need to assess code quality across multiple dimensions before it enters the main branch.

101.4K 55.6K
View
git-commit logo
Git & Pull Requests

git-commit

Standardized git commits using Conventional Commits specification with intelligent diff analysis and message generation.

39.7K 46.4K
View
git-workflow-and-versioning logo
Git & Pull Requests

git-workflow-and-versioning

Structures git workflow practices. Use when making any code change. Use when committing, branching, resolving conflicts, or when you need to organize work across multiple parallel streams.

101.4K 44.2K
View
ponytail-review logo
Git & Pull Requests

ponytail-review

Code review focused exclusively on over-engineering. Finds what to delete: reinvented standard library, unneeded dependencies, speculative abstractions, dead flexibility. One line per finding: location, what to cut, what replaces it. Complements correctness-focused review, this one only hunts complexity.

155.5K 32.1K
View
excalidraw-diagram-generator logo
Git & Pull Requests

excalidraw-diagram-generator

Generate Excalidraw diagrams from natural language descriptions in multiple formats.

39.7K 31.1K
View
ponytail-audit logo
Git & Pull Requests

ponytail-audit

Whole-repo audit for over-engineering. Like ponytail-review, but scans the entire codebase instead of a diff: a ranked list of what to delete, simplify, or replace with stdlib/native equivalents. One-shot report, does not apply fixes.

155.5K 30K
View
code-review-excellence logo
Git & Pull Requests

code-review-excellence

Systematic code review practices for constructive feedback, bug detection, and team knowledge sharing.

40.2K 29.4K
View

Coding & apps AI tools

Opus Clip logo
Coding & apps

Opus Clip

Opus.ai: Revolutionize Your Web Experience

Free
View
Imagica logo
Coding & apps

Imagica

Build a no-code AI app in minutes.

Freemium
View
E
Coding & apps

Emergent.sh

An IDE for code migration from legacy to modern frameworks through coding agents.

Freemium
View
Wonder Dynamics logo
Coding & apps

Wonder Dynamics

Automate CGI animation in live-action scenes

Paid
View
M
Coding & apps

Mixo

Launch a website in seconds with AI.

Paid
View
AI Code Convert logo
Coding & apps

AI Code Convert

Streamline Your Coding Experience with AI Code Helper

Free
View