{ "attribution": { "commit": "", "pr": "" }, "permissions": { "allow": [ "Bash(make)", "Bash(make help)", "Bash(make targets)", "Bash(make test)", "Bash(make test *)", "Bash(make lint)", "Bash(make fmt)", "Bash(make coverage)", "Bash(make coverage-summary)", "Bash(make typecheck)", "Bash(pytest)", "Bash(pytest *)", "Bash(python3 -m pytest *)", "Bash(ruff check *)", "Bash(ruff format --diff *)", "Bash(black --check *)", "Bash(black --diff *)", "Bash(mypy *)", "Bash(python3 -m py_compile *)", "Bash(python3 --version)", "Bash(pip list)", "Bash(pip show *)", "Bash(git status)", "Bash(git status *)", "Bash(git diff)", "Bash(git diff *)", "Bash(git log)", "Bash(git log *)", "Bash(git show)", "Bash(git show *)", "Bash(git blame *)", "Bash(git branch)", "Bash(git branch -v)", "Bash(git branch -a)", "Bash(git branch --list *)", "Bash(git remote)", "Bash(git remote -v)", "Bash(git remote show *)", "Bash(git ls-files *)", "Bash(git rev-parse *)", "Bash(git cat-file *)", "Bash(git stash list)", "Bash(git stash show *)", "Bash(jq *)", "Bash(date)", "Bash(date *)", "Bash(which *)", "Bash(file *)", "Bash(ls)", "Bash(ls *)", "Bash(wc *)", "Bash(du *)", "Bash(readlink *)", "Bash(realpath *)", "Bash(basename *)", "Bash(dirname *)" ] }, "hooks": { "PostToolUse": [ { "matcher": "Edit|Write|MultiEdit", "hooks": [ { "type": "command", "command": "$CLAUDE_PROJECT_DIR/.claude/hooks/validate-python.sh" } ] } ] } }