mattpocock-git-guardrails-claude-code▌
mattpocock/skills · updated Apr 27, 2026
Set up Claude Code hooks to block dangerous git commands before they execute.
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 --hardgit clean -f/git clean -fdgit branch -Dgit 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.
Discussion
Product Hunt–style comments (not star reviews)- No comments yet — start the thread.
Ratings
4.5★★★★★75 reviews- ★★★★★Hana Gonzalez· Dec 20, 2024
mattpocock-git-guardrails-claude-code reduced setup friction for our internal harness; good balance of opinion and flexibility.
- ★★★★★Henry Rao· Dec 16, 2024
Solid pick for teams standardizing on skills: mattpocock-git-guardrails-claude-code is focused, and the summary matches what you get after install.
- ★★★★★Kwame Kim· Dec 16, 2024
mattpocock-git-guardrails-claude-code has been reliable in day-to-day use. Documentation quality is above average for community skills.
- ★★★★★Isabella Park· Dec 8, 2024
mattpocock-git-guardrails-claude-code has been reliable in day-to-day use. Documentation quality is above average for community skills.
- ★★★★★Benjamin Liu· Dec 4, 2024
mattpocock-git-guardrails-claude-code fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
- ★★★★★Ama White· Nov 27, 2024
mattpocock-git-guardrails-claude-code fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
- ★★★★★Henry Patel· Nov 23, 2024
mattpocock-git-guardrails-claude-code has been reliable in day-to-day use. Documentation quality is above average for community skills.
- ★★★★★Hana Reddy· Nov 11, 2024
I recommend mattpocock-git-guardrails-claude-code for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.
- ★★★★★Henry Gill· Nov 7, 2024
We added mattpocock-git-guardrails-claude-code from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
- ★★★★★Ava Patel· Nov 7, 2024
mattpocock-git-guardrails-claude-code fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
showing 1-10 of 75