Skip to content

CLI

gitvow hook <SessionStart|PreToolUse|PostToolUse|Stop>   run as a Claude Code hook; reads the JSON payload on stdin; exits 0 to allow, 2 to block
gitvow install --user | install [repo]                    install per user or into a repository (default: current directory)
gitvow uninstall --user [--purge-policy] [--purge-ledger] remove the user install
gitvow uninstall [repo] [--purge-notes]                   remove a repository install
gitvow check -- <command...>                              dry-run the policy against a Bash command; exit 0 allow, 2 blocked
gitvow check --path <file>                                dry-run against an edited path
gitvow check --mcp <tool-name>                            dry-run against an MCP tool name
gitvow show [commit]                                      print a commit's message, trailers and session note (default HEAD)
gitvow collect [--out DIR]                                gather ledger, logs, trailers and notes into one redacted directory (default ~/Desktop)
gitvow summarize <dir>                                    trial metrics from a collected directory
gitvow selftest                                           drive every hook in a throwaway repository and report pass/fail
gitvow --version

Exit codes: 0 success or allow; 2 blocked (hook and check); 1 error.

Environment: none required. HOME decides where the user policy and ledger live. Tests set GIT_CONFIG_GLOBAL to isolate git configuration.