Agent Skills by ALSEL
汎用ソフトウェア開発⭐ リポ 308品質スコア 89/100

git-guardrails-claude-code

Claude Codeで危険なgitコマンド(push、reset --hard、clean、branch -D など)を実行前にブロックするhookを設定できます。ユーザーが破壊的なgit操作を防ぎたい場合、git安全性hookを追加したい場合、またはClaude Codeでのgitプッシュやリセットをブロックしたい場合に使用します。

description の原文を見る

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.

SKILL.md 本文

Git Guardrailsのセットアップ

Claude が実行する前に危険な git コマンドをインターセプトしてブロックする PreToolUse フックをセットアップします。

ブロックされるコマンド

  • git push (--force を含むすべてのバリエーション)
  • git reset --hard
  • git clean -f / git clean -fd
  • git branch -D
  • git checkout . / git restore .

ブロックされると、Claude はこれらのコマンドへのアクセス権限がないことを示すメッセージを受け取ります。

ステップ

1. スコープを確認

ユーザーに以下をお聞きします: このプロジェクトのみにインストール(.claude/settings.json)するか、すべてのプロジェクトにインストール(~/.claude/settings.json)するか?

2. フックスクリプトをコピー

バンドルされたスクリプトはこちらです: scripts/block-dangerous-git.sh

スコープに基づいて対象の場所にコピーします:

  • プロジェクト: .claude/hooks/block-dangerous-git.sh
  • グローバル: ~/.claude/hooks/block-dangerous-git.sh

chmod +x で実行可能にします。

3. 設定ファイルにフックを追加

適切な設定ファイルに追加します:

プロジェクト (.claude/settings.json):

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

グローバル (~/.claude/settings.json):

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

設定ファイルが既に存在する場合は、フックを既存の hooks.PreToolUse 配列にマージします。他の設定を上書きしないようにしてください。

4. カスタマイズについて確認

ユーザーにブロック対象のパターンを追加または削除したいかどうかを確認します。コピーしたスクリプトを適切に編集します。

5. 検証

簡単なテストを実行します:

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

終了コード 2 で終了し、stderr に BLOCKED メッセージが出力されるはずです。

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
mkurman
リポジトリ
mkurman/zorai
ライセンス
MIT
最終更新
2026/5/11

Source: https://github.com/mkurman/zorai / ライセンス: MIT

本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: mkurman · mkurman/zorai · ライセンス: MIT