diff --git a/.claude/hooks/git_gate.py b/.claude/hooks/git_gate.py index d367291f..aa681145 100755 --- a/.claude/hooks/git_gate.py +++ b/.claude/hooks/git_gate.py @@ -43,6 +43,12 @@ BLOCKED_GIT_RE = re.compile( r"(" + "|".join(BLOCKED_GIT_VERBS) + r")\b" ) +# Full binary path bypass: /usr/bin/git, /usr/local/bin/git, ./git, etc. +BLOCKED_GIT_PATH_RE = re.compile( + r"/git\s+(?:--?[A-Za-z][A-Za-z0-9_-]*(?:[= ][^\s]+)?\s+)*" + r"(" + "|".join(BLOCKED_GIT_VERBS) + r")\b" +) + BLOCKED_GIT_STASH_RE = re.compile(r"(?