Look first
git log in any repository and tells you how much of the recent history an agent wrote, how much of that touched a file your policy calls consequential, and how much of it records who agreed. Nothing is installed and nothing is written. See Look before installing.
Install for yourself
install looks for every agent on this machine and configures all of them, printing what it found. It also writes a default policy to ~/.gitvow/policy.json and four git hooks to ~/.gitvow/git-hooks, registered as your global hooks path, so every repository you open is covered. --check runs the self-check straight afterwards so you see the gate work before trusting it with real code.
To configure one agent only, pass --agent codex (or gemini, cursor, copilot, factory, or the name of an external adapter).
Codex CLI needs two more steps that no installer can do for you, and without them the gate is installed but inert. install prints them, and the agents guide explains them.
Is it actually working?
gitvow selftest --agent codex drives another agent’s payload shapes instead.
Work normally
Start a session in any repository and let the agent work. Two things will happen that did not before. Destructive commands are refused outright, with the reason. Risky ones are put to you first. Consequential edits wait for the commit. When the agent runsgit commit, the commit is stopped once and the agent shows you a card: each finding, its evidence, and what this repository decided last time. You answer in the conversation, the agent records it, and the commit goes through carrying your answer. If you would rather not answer now, say so: the commit goes through with each finding recorded as Gitvow-Open, visible until someone does. (That is the default, open mode; "decisions": {"mode": "strict"} in the policy refuses the commit until every finding has an answer.)
gitvow show HEAD adds the session note behind it: the plan, the tools, the attribution, the cost and the decision with its evidence. See Answer the card.
Try the gate by hand
Remove it
--agent, this removes gitvow from every agent it configured, leaving any hooks of your own in place. Trailers already in commit history stay, because they are part of the commits.