Git Guardrails Claude Code
fossasia/eventyay-interpretation
Set up Claude Code hooks to block dangerous git commands (push, reset --hard, clean, branch -D, etc.) before they execute.
设置 Claude Code hooks,在危险 git commands(push、reset --hard、clean、branch -D 等)执行前阻止它们。适用于用户想防止破坏性 git 操作、添加 git safety hooks,或在 Claude Code 中阻止 git push/reset 时。
$ npx skills add vinvcn/mattpocock-skills-zh-CN --skill git-guardrails-claude-code -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install vinvcn/mattpocock-skills-zh-CN git-guardrails-claude-code --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/vinvcn/mattpocock-skills-zh-CN.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/misc/git-guardrails-claude-code .claude/skills/git-guardrails-claude-code && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "git-guardrails-claude-code" agent skill from https://github.com/vinvcn/mattpocock-skills-zh-CN/tree/main/skills/misc/git-guardrails-claude-code into .claude/skills/git-guardrails-claude-code/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "git-guardrails-claude-code", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/vinvcn/mattpocock-skills-zh-CN/tree/main/skills/misc/git-guardrails-claude-codeType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add vinvcn/mattpocock-skills-zh-CN --skill git-guardrails-claude-code -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install vinvcn/mattpocock-skills-zh-CN git-guardrails-claude-code --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/vinvcn/mattpocock-skills-zh-CN.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/misc/git-guardrails-claude-code .agents/skills/git-guardrails-claude-code && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "git-guardrails-claude-code" agent skill from https://github.com/vinvcn/mattpocock-skills-zh-CN/tree/main/skills/misc/git-guardrails-claude-code into .agents/skills/git-guardrails-claude-code/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "git-guardrails-claude-code", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add vinvcn/mattpocock-skills-zh-CN --skill git-guardrails-claude-code -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install vinvcn/mattpocock-skills-zh-CN git-guardrails-claude-code --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/vinvcn/mattpocock-skills-zh-CN.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/misc/git-guardrails-claude-code .cursor/skills/git-guardrails-claude-code && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "git-guardrails-claude-code" agent skill from https://github.com/vinvcn/mattpocock-skills-zh-CN/tree/main/skills/misc/git-guardrails-claude-code into .cursor/skills/git-guardrails-claude-code/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "git-guardrails-claude-code", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/vinvcn/mattpocock-skills-zh-CN.git --path skills/misc/git-guardrails-claude-code--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add vinvcn/mattpocock-skills-zh-CN --skill git-guardrails-claude-code -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install vinvcn/mattpocock-skills-zh-CN git-guardrails-claude-code --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/vinvcn/mattpocock-skills-zh-CN.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/misc/git-guardrails-claude-code .gemini/skills/git-guardrails-claude-code && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "git-guardrails-claude-code" agent skill from https://github.com/vinvcn/mattpocock-skills-zh-CN/tree/main/skills/misc/git-guardrails-claude-code into .gemini/skills/git-guardrails-claude-code/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "git-guardrails-claude-code", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install vinvcn/mattpocock-skills-zh-CN git-guardrails-claude-codeInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add vinvcn/mattpocock-skills-zh-CN --skill git-guardrails-claude-code -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/vinvcn/mattpocock-skills-zh-CN.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/misc/git-guardrails-claude-code .github/skills/git-guardrails-claude-code && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "git-guardrails-claude-code" agent skill from https://github.com/vinvcn/mattpocock-skills-zh-CN/tree/main/skills/misc/git-guardrails-claude-code into .github/skills/git-guardrails-claude-code/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "git-guardrails-claude-code", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add vinvcn/mattpocock-skills-zh-CN --skill git-guardrails-claude-code -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install vinvcn/mattpocock-skills-zh-CN git-guardrails-claude-code --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/vinvcn/mattpocock-skills-zh-CN.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/misc/git-guardrails-claude-code .opencode/skills/git-guardrails-claude-code && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "git-guardrails-claude-code" agent skill from https://github.com/vinvcn/mattpocock-skills-zh-CN/tree/main/skills/misc/git-guardrails-claude-code into .opencode/skills/git-guardrails-claude-code/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "git-guardrails-claude-code", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
git-guardrails-claude-code设置 Claude Code hooks,在危险 git commands(push、reset --hard、clean、branch -D 等)执行前阻止它们。适用于用户想防止破坏性 git 操作、添加 git safety hooks,或在 Claude Code 中阻止 git push/reset 时。
Git Guardrails Claude Code is an agent skill from vinvcn/mattpocock-skills-zh-CN. 设置 Claude Code hooks,在危险 git commands(push、reset --hard、clean、branch -D 等)执行前阻止它们。适用于用户想防止破坏性 git 操作、添加 git safety hooks,或在 Claude Code 中阻止 git push/reset 时。
Its SKILL.md is about 470 tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files, including scripts (for example `agents/openai.yaml` and `scripts/block-dangerous-git.sh`).
It sits in AI & LLM Engineering, covering Git workflow, Hooks and plugins and LLM guardrails. It works with Git. The repository describes itself as: 这是 mattpocock/skills 的简体中文本地化版本。 The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 3f92a83. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/ (Shell), which the agent can run.
Shell commands in SKILL.md call:
gitFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Git Guardrails Claude Code loads about 474 tokens when it runs. Until then it costs about 46 tokens; SKILL.md has 111 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from vinvcn/mattpocock-skills-zh-CN at commit 3f92a83, republished under its MIT licence (© vinvcn). 111 words, ~474 tokens.
.claude/skills/git-guardrails-claude-code/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.设置一个 PreToolUse hook,在 Claude 执行危险 git commands 前拦截并阻止它们。
git push(包括 --force 在内的所有 variants)git reset --hardgit clean -f / git clean -fdgit branch -Dgit checkout . / git restore .被阻止时,Claude 会看到一条 message,说明它无权访问这些 commands。
询问用户:只为当前 project 安装(.claude/settings.json),还是为所有 projects 安装(~/.claude/settings.json)?
bundled script 位于:scripts/block-dangerous-git.sh
根据 scope 复制到目标位置:
.claude/hooks/block-dangerous-git.sh~/.claude/hooks/block-dangerous-git.sh用 chmod +x 让它可执行。
添加到对应 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"
}
]
}
]
}
}如果 settings file 已存在,把 hook merge 到现有 hooks.PreToolUse array 中,不要覆盖其他 settings。
询问用户是否要在 blocked list 中添加或移除 patterns。相应编辑复制后的 script。
运行快速测试:
echo '{"tool_input":{"command":"git push origin main"}}' | <path-to-script>应以 code 2 退出,并向 stderr 打印 BLOCKED message。
© vinvcn, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 2 other files (scripts) in skills/misc/git-guardrails-claude-code of vinvcn/mattpocock-skills-zh-CN.
Open the folder on GitHubat commit 3f92a83
Git Guardrails Claude Code next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Git Guardrails Claude Code this skillvinvcn/mattpocock-skills-zh-CN | 4.7k | — | ~474 | Automated safety check: Pass | MIT | |
| Git Guardrails Claude Codefossasia/eventyay-interpretation | 1.6k | 13 repos | ~578 | Automated safety check: Pass | Apache-2.0 | |
| Git Guardrails Claude Codedevcxl/mattpocock-skills-zh | 437 | 1 repos | ~420 | Automated safety check: Pass | MIT | |
| GuardHouseofmvps/ultraship | 123 | — | ~790 | Automated safety check: Notes | MIT | |
| Careful Mode Command Guardrailsgarrytan/gstack | 136k | — | ~931 | Automated safety check: Notes | MIT | |
| Git WorkflowsTencentCloudBase/CloudBase-AI-Toolkit | 1.1k | — | ~3k | Automated safety check: Pass | MIT |
fossasia/eventyay-interpretation
Set up Claude Code hooks to block dangerous git commands (push, reset --hard, clean, branch -D, etc.) before they execute.
devcxl/mattpocock-skills-zh
设置 Claude Code 钩子,在危险 Git 命令(push、reset --hard、clean、branch -D 等)执行前将其拦截。当用户想要防止破坏性 Git 操作、添加 Git 安全钩子或在 Claude Code 中阻止 git push/reset 时使用。
Houseofmvps/ultraship
Safety guardrails — blocks destructive commands (rm -rf, DROP TABLE, force-push, git reset --hard) and optionally restricts file edits to a specific directory.
garrytan/gstack
Checks each shell command for destructive patterns such as recursive deletes, force pushes and dropped tables, and asks before letting them run.
TencentCloudBase/CloudBase-AI-Toolkit
Reusable git delivery workflows derived from local slash commands (commit, push, PR, release notes, GitHub Actions failure triage with worktree-based fixes, and isolating your own changes from a…
oliver-kriska/claude-elixir-phoenix
Recall prior work from past sessions — how a bug was fixed, what was decided, where a pattern lives.
vinvcn/mattpocock-skills-zh-CN
用于设计深模块的共享词汇。适用于用户想设计或改进模块接口、寻找深化机会、决定 seam 放在哪里、让代码更容易测试或更适合 AI 导航,或其他技能需要深模块词汇时。
vinvcn/mattpocock-skills-zh-CN
面向棘手缺陷和性能回退的诊断循环。适用于用户说 “diagnose” / “debug this”,或报告某些东西 broken、throwing、failing、slow 时。
vinvcn/mattpocock-skills-zh-CN
构建并打磨项目的领域模型。适用于讨论 codebase 术语、编写或编辑 CONTEXT.md,或记录或编辑 ADR. An agent skill from vinvcn/mattpocock-skills-zh-CN.
vinvcn/mattpocock-skills-zh-CN
将测试文件从 as 类型断言迁移到 @total-typescript/shoehorn。适用于用户提到 shoehorn、想替换测试中的 as,或需要局部测试数据时。
vinvcn/mattpocock-skills-zh-CN
用于撰写 PR 正文。适用于用户要求起草、改写或改进 PR 正文,或希望 PR 更便于审阅时. An agent skill from vinvcn/mattpocock-skills-zh-CN.
vinvcn/mattpocock-skills-zh-CN
创建包含章节、题目、答案和讲解的练习目录结构,并确保通过 linting。适用于用户想 scaffold exercises、创建 exercise stubs,或设置新的课程章节时。
Works with
设置 Claude Code hooks,在危险 git commands(push、reset --hard、clean、branch -D 等)执行前阻止它们。适用于用户想防止破坏性 git 操作、添加 git safety hooks,或在 Claude Code 中阻止 git push/reset 时。. Git Guardrails Claude Code is an agent skill from vinvcn/mattpocock-skills-zh-CN.
Git Guardrails Claude Code fits situations like: tasks that involve Git workflow; tasks that involve Hooks and plugins; tasks that involve LLM guardrails.
Run `npx skills add vinvcn/mattpocock-skills-zh-CN --skill git-guardrails-claude-code -a claude-code`. Or copy the skill folder (skills/misc/git-guardrails-claude-code in vinvcn/mattpocock-skills-zh-CN) into .claude/skills/git-guardrails-claude-code in your project. Claude Code loads it when a task matches its description.
Run `npx skills add vinvcn/mattpocock-skills-zh-CN --skill git-guardrails-claude-code -a codex`. Or copy the skill folder (skills/misc/git-guardrails-claude-code in vinvcn/mattpocock-skills-zh-CN) into .agents/skills/git-guardrails-claude-code in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add vinvcn/mattpocock-skills-zh-CN --skill git-guardrails-claude-code -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/git-guardrails-claude-code, .gemini/skills/git-guardrails-claude-code, .github/skills/git-guardrails-claude-code and .opencode/skills/git-guardrails-claude-code in your project.
Going by SKILL.md and its folder, Git Guardrails Claude Code needs a shell for the scripts in its folder and the command-line tools its instructions call (git). Our summary lists: A Bash shell.
SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Git Guardrails Claude Code is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 474 tokens (SKILL.md is roughly 1.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Git Guardrails Claude Code: Git Guardrails Claude Code (fossasia/eventyay-interpretation, 1.6k stars), Git Guardrails Claude Code (devcxl/mattpocock-skills-zh, 437 stars), Guard (Houseofmvps/ultraship, 123 stars) and Careful Mode Command Guardrails (garrytan/gstack, 136k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
vinvcn (a GitHub user) maintains it in vinvcn/mattpocock-skills-zh-CN, which has 4,657 GitHub stars. The repository holds 33 skills in this directory. The repository was last updated on September 28, 2026.
Source: vinvcn/mattpocock-skills-zh-CN on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.