# Why Aura Exists > Git was built for humans who type. AI agents don't type — they restructure. The substrate has to change. Every paradigm in version control arrived in response to a change in how code was produced. CVS and SVN emerged when software teams grew past the size of a single floppy disk. Git emerged when the Linux kernel community outgrew any centralized server on the planet. Aura emerges now, in 2026, because the person at the keyboard is increasingly not a person. ## The fact that forces the issue In the last three years, the proportion of new code authored by AI agents has crossed a threshold. Depending on which survey you trust — GitHub's internal metrics, Stack Overflow's annual developer report, Anthropic's usage data, or leaked internal numbers from large engineering orgs — **between 50% and 80% of new code committed to production codebases is now initially drafted by an AI agent**. The human role has shifted from authoring to reviewing, steering, and integrating. This is not a trend line. It is a regime change. And the tools we use to version, merge, and audit code were designed in a different regime. ## What changed about the workload Human developers have a characteristic shape to their edits. A feature branch touches a small set of files, adds a few dozen lines, renames maybe one function, fixes one bug. Two humans working on overlapping areas will typically coordinate in a standup, split the work, and rarely collide in the same functions on the same day. AI agents do not work this way. An AI agent given the prompt "refactor the authentication module for clarity" will: - Rename seven functions. - Move four of them into a new file. - Reformat every file it touches. - Rewrite the error-handling pattern for consistency. - Update every call site. - Do all of this in 45 seconds. Multiply that by three agents running in parallel on the same repo — a pattern that is rapidly becoming standard — and you get a collision profile that Git's line-level merge algorithm simply cannot handle. ### The AgenticFlict finding The clearest empirical data on this comes from the AgenticFlict research published in 2025. The authors ran parallel AI agents against a large corpus of open-source repositories, asking each agent to complete a realistic feature or refactor. They then measured the merge conflict rate when two agents were given related tasks on the same repository. The result: **26.86% of parallel AI-generated patch pairs produced merge conflicts under Git's default three-way merge**. For comparison, the conflict rate between two human developers working on adjacent tasks on the same repository averages around 2–4%. AI agents generate conflicts at roughly an order of magnitude higher rate than humans. The reason is not that the agents are wrong. In most cases both patches are semantically correct — they just express correctness through different textual structures. Git cannot tell that two refactors are equivalent, or that two renames are compatible, or that a function that "disappeared" on one branch simply moved to a new file on the other branch. Git sees text. Text conflicts. ## Why this is unsolvable inside Git One might hope that a smarter Git — with better rename detection, or a smarter three-way merge, or a plugin-based merge driver — could close the gap. It cannot, and the reason is foundational. Git's object model is: 1. Content-address blobs by the SHA-1 (now SHA-256) of their bytes. 2. Group blobs into trees (directories). 3. Group trees into commits. 4. Diff by running Myers' algorithm on the text of two blobs. 5. Merge by running a three-way text merge. Nothing in this pipeline has a concept of "function." Nothing has a concept of "rename." Nothing has a concept of "equivalent logic with different syntax." Rename detection is a post-hoc heuristic on top of text similarity. Move detection is the same heuristic applied across files. These heuristics are already stretched to their limits by human refactors and break outright under AI-scale refactoring. You cannot bolt semantic awareness onto a system whose primitive is a byte-addressed blob. You have to replace the primitive. ## The intent problem Even if you solved the merge problem, Git would still be blind to a more subtle issue: **the divergence between what an agent claimed to do and what it actually did**. AI agents are generative. They are confidently wrong with a frequency that is entirely tolerable for prose and intolerable for production code. An agent asked to "add caching to the user lookup" may, in the course of its work, also subtly change an authentication check three files away — not maliciously, but because the surrounding context suggested a "cleanup." This is called **intent drift**, and at its worst, **intent poisoning**: a patch whose commit message describes one thing while its code does another. Git has no mechanism to detect this. A commit message is a free-text field that nothing validates. A reviewer reading a 4,000-line agent-generated PR cannot reliably catch a two-line semantic shift in a file they weren't looking at. Aura treats intent as a first-class, validated field. The `aura_log_intent` step before every commit is not optional pageantry — it is input to a pre-commit hook that compares the stated intent against the AST-level changes and flags inconsistencies. "Added caching" should not include a modification to `check_auth`. If it does, Aura says so, and a human decides whether to proceed. ## The agent-coordination problem The conflict rate at merge time is only the visible part of the problem. The invisible part is what happens *while* the agents are working. Three agents running in parallel on the same repository, each with its own checkout, will frequently: - Edit the same function simultaneously. - Make incompatible assumptions about shared data structures. - Each "clean up" the same piece of technical debt in three different directions. - Race to name the same new file. By the time these conflicts surface at merge, enormous amounts of agent time (and token budget) have been wasted on work that must now be reconciled or thrown away. The efficient solution is not to merge better — it is to **coordinate during the work**, the way human developers do through chat, standups, and pairing. Aura's Sentinel protocol gives agents this coordination surface. Zone claims ("I'm editing `auth.py` for the next 20 minutes"), messages ("heads up, about to refactor the error hierarchy"), and collision detection ("another agent is modifying `retry_logic` right now") all travel through Aura. This only works if the coordination layer sits below the agent layer — a per-tool integration would fragment. Aura is agent-agnostic on purpose. ## The sovereignty problem A final pressure forcing the shift: where does the code actually live? For two decades the default answer was "on a US-based forge" — GitHub, GitLab.com, Bitbucket. For AI-native engineering in 2026, that answer is increasingly unacceptable: - **EU AI Act** compliance requires traceable provenance of training and inference data. Code flowing through a US-hosted AI copilot leaves jurisdictional gaps. - **UK and EU data-sovereignty rules** for regulated industries (finance, healthcare, defense) make third-party code hosting a compliance burden. - **Geopolitical risk** — sanctions, export controls, policy shifts — have made single-provider dependence a board-level concern. - **Customer contracts** in defense, government, and critical infrastructure increasingly require self-hosted, auditable toolchains. Git itself is sovereignty-friendly — it's a distributed system. But the Git *ecosystem* is centralized on a handful of US forges. Aura's Mothership Mode gives teams a drop-in replacement that runs on their own infrastructure, with cryptographic identity, TLS, JWT, and zero third-party dependencies. Sovereignty is not a feature we added — it is the default configuration. See [Mothership Overview](/mothership-overview). ## Why now, and not five years ago The substrate-replacement argument has been true in theory for as long as AST-diff research has existed — at least two decades. Pijul, Darcs, Spork, astii, and various research prototypes have explored structural diff and patch theory. None of them became mainstream. The reason is that before AI, the cost-benefit did not justify the switch. Line-level diffs were *good enough* for humans. The tooling ecosystem around Git was — and still is — vast and hard to leave. Semantic diff was an academic curiosity. Two things changed in the last eighteen months: 1. **The workload crossed the threshold** where line-level merge genuinely breaks, not just feels suboptimal. 2. **AI now does the hard work of wiring semantic tools into workflows** — through MCP, through agent loops, through autonomous pipelines. The ergonomic cost of adopting a new VCS is a fraction of what it was when the entire integration had to be written by humans. Aura rides both curves. The problem finally hurts enough, and the solution is finally cheap enough to adopt. ## What "exists" means Aura exists as a production tool, not a manifesto. The v0.14 line is the one the project uses on itself. The merge engine has processed tens of thousands of real agent-generated patches. Mothership instances are running in multiple organizations. Sentinel coordinates real agent fleets. The MCP server ships with Claude Code, Cursor, and Gemini integrations out of the box. It is also open source, end-to-end, Apache 2.0. There is no proprietary core. There is no "open core with paid features." The entire stack — CLI, engine, Mothership, Sentinel, Live Sync, MCP — is in the public repository. See [Core Principles](/core-principles). ## The five-word version Text diffs can't see logic. ## The one-sentence version Aura exists because version control has to understand code now that the thing writing the code doesn't understand text — it understands structure. ## Next - [The Third Era of VCS](/the-third-era-of-vcs) — the historical arc that leads here. - [Aura vs Git](/aura-vs-git) — a direct comparison. - [Core Principles](/core-principles) — the principles that fall out of this thesis. - [How Aura Works](/how-aura-works) — the architecture.