Writing
Putting Git on AI Agents
Autonomous systems need version control for cognition: immutable traces, deterministic replay, and causal failure localization.
Why autonomous systems need version control for cognition
The debugging problem no one is solving
An autonomous agent violates a compliance policy at step 40.
The postmortem shows the root cause was a low-confidence observation committed at step 12.
Without infrastructure, you get:
- logs
- speculation
- and no causal certainty
With the right substrate, you run:
bisect(run_id, predicate)
And you find the origin in ceil(log2(40)) = 6 steps.
That difference is the difference between observability and causality.
Interpretability is pointed at the wrong layer
Most interpretability research focuses on model internals:
- attention heads
- activation patterns
- circuit tracing
- probing
That's representational causality:
What internal computation produced this output?
But autonomous agents don't fail at the token level.
They fail across trajectories.
A violation at step 40 is rarely caused by the forward pass at step 40.
It's usually caused by something earlier:
- a flawed observation
- a drift in accumulated state
- a threshold crossing
- a silent policy flip
That's procedural causality:
Which committed state transition caused this behavior?
Different layer. Different tools.
The core claim
Long-horizon agents require:
- immutable, append-only traces
- deterministic state replay
- pure reducers
- predicate-derivable violations
- prefix-monotone failure signals
In short:
They need version control for cognition.
Macroscopic interpretability
Instead of analyzing internal activations, we treat the agent's trajectory as the primary artifact:
T = [t1, t2, ..., tn]
Each transition is:
- hash-chained
- append-only
- replayable
- sufficient to reconstruct state exactly
If replay is deterministic, we can:
- fork reasoning from any historical state
- diff two trajectories
- cherry-pick intents safely
- binary-search failure origins
This is not metaphorical Git.
It's structural.
Why logs are not enough
Logging tells you what happened.
It does not guarantee:
- deterministic reconstruction
- canonical state comparison
- stable failure predicates
- sound binary search
Binary search only works if the violation signal is prefix-monotone:
once violated, always violated.
Most current agent tooling does not enforce this.
Without it, bisect is unsound.
That constraint alone changes how you architect systems.
Agent Version Control (AVC)
Once the invariants hold, a new primitive set emerges:
- Fork: Spawn a new run from any tick
- Diff: Compare reasoning trajectories semantically
- Bisect: Locate the violation onset deterministically
- Cherry-pick: Import intent safely with state-bound hashes
The important shift is this:
Failure becomes mechanically localizable.
Not heuristically inferred.
Trust through accountability
There's a dominant idea in AI safety:
We must understand model internals to trust them.
But human institutions don't work that way.
We trust systems when:
- decisions are recorded
- processes are auditable
- nothing happens off-ledger
- violations are traceable
Autonomous agents can be engineered the same way.
This reframes trust from:
cognitive transparency
to:
institutional accountability
That's a much more tractable engineering problem.
What this does not claim
This does not:
- solve alignment
- eliminate hallucinations
- guarantee truth
- ensure live re-execution equivalence
It guarantees something narrower and operationally critical:
If something went wrong, you can identify exactly when and how it went wrong.
And you can do it in logarithmic time.
The full formal treatment
This post is the conceptual overview.
The full position paper includes:
- a formal model class for agent executions
- a minimal impossibility argument
- prefix-monotonicity constraints
- deterministic replay conditions
- context-safe cherry-pick validation
- a staged adoption model
- a threat model and open problems
Read the full paper: Macroscopic Interpretability for Autonomous Agents
Why this matters now
Agent systems are moving into:
- financial workflows
- compliance systems
- enterprise automation
- scientific pipelines
Logs will not be enough.
We will need:
- reproducibility
- causal localization
- mechanical accountability
Git changed how we build software.
Version control for agents may change how we trust autonomous systems.