WPPX
                                                     IBKQWZ   WSLRZ
                                                     GAAAAGV   ZRFERZ
                                  ZZ                 LAAAAACNIKOKAAAEJSQVZ
                                    Z              WGIGGGBAAAAAAAAAAAAAAADOZ
                                     WPY         Z WZ  XGAAAAAAAACEJRVXPBAAEKV
                                   ZQCAAFNPLOJPNEGX  ZRIAAAAAAAFS      SABAAABIW
                            ZVY      XOECAAAAAAAAAEEEDAAAABLSYW     ZTLBAAAAAAAALUZ
                           XJJX        QCAAAAAAAAAAAAAAAADV   ZZ  YICAABAAAAAAAAAAHW
                      YYTPMCFZ       WTEAAAAAAAAAAAAAAAAAABFJIEDFHAAAABBAAAAAAAAAAAAV
                    YPMEEGBAFOTPONKIHFAAAAAAAAAACCHHAAAAAAAAAAAEKLOODAAAAAAAAAAAAAACW
                YUNGHJQPLEAAAAAAAAAAAAAAAAAAAEKTZ  ZXKBAAAAACNWZ    NACEEDBAAAAAAAGV
            WMMIACKU     YTHABKURRNCAAAAAAAFRZ       ZYGAAAAV     UKGPY   YNAAAAAAEGOV
             ZOIRZ       ZWJMX     RAAAAAFQZ         TLBAAAAGSWWQFJY       ZIAAAAAAAAAERZ
                         VKS     XLAAAAAOZ       XFINCAAAAAAAABBMZ       TLJNAAAAAAAAAAAFX
                         UVZ  QOMCAAAAAAJVWMGINHHBAAAAAAAAAAAAACSXZ ZZOICKHAAAAAAAAAAAAAAAGOZ
                  YTUSONJABKKCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAHX
              VHJDABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE
            VKAAAACLRUVXUHAAAAAAAAAAAAAAAAAAAAAAOAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH
      OIPUNFAAAADQ       XKAAAACMSTPDAAAAAAAAAAAAAASPACEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIX
       VIAAAAACQZ      YQPRQBAPZ    WBAAAAAAAQIAAAAAAAAAAAAAAAAAENVYYYOBAAAAAAAFMOGAAAAAAACRZ
         YWSLHZ     ZXNSZ   PFY   WNBAAAAAAAAAFAAAAAAAAAAAAAAAKW      XABAAAAALZZVEAAAAAAAAADNZ
            ZY  YZZQHHDQ   SFAHNNGBAAAAAAAAAAAAAAAAAAAAAAAAAHU     YUPCAAAAAAAOMDAAAAAAAAAAAAAEP
               YJDDBFKGDLLKJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKZZ ZZTHFAAAAAAAAAAAAAAAAAAAAAAAAAAAADV
               UAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDFFAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAT
              SAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC
  X      Z WQIHAAAAAAAAAAAAAAAAAAAAAAAAAAAADBAAAAAAAAAAAJNCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH
  TKNXUULNIBDDCAAAAAAAAAAAAAAAABFHHBCAAAHUVXAAAAAAAAAAAAN YUFABGDCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABKX
   XHAAAAAAAAAAAAAAAADEKGBAAAAAAAELLICAAABJPAAAAAAAAAAAALZQGAAFLJJGAAAAAAAAAAAAAAAAAAAAAAAAAAAAJW
     SHAAAAAAAAAABFMS   ZVAAAIKPT    ZSHAAAAAAAAAAAAAAAAABAAABCCCCKLLPXXUPJAADKOBAAAAAAAAAAAAHV
       XRMMPGKPUSY      VEAAAL          TFAAAAAAAAAAAAAAAAAEQZ            VCAAAIXQEAECBJIIQQY
                  TQUUMIBAAAAG            SEAAAAAAAAAAAAACOZ      UZ     UGAAAAAP   ZY
                  ZQDAAAAAAAJX             PDAAAAAAAAAAAAQ        UGKNGEFAAAAAAFX
                     TKNILOV               XOHGNBAAA@A@AAU         YQGEADAABCGQZ
                                           YYEKHAAAAAAAAU            ZXWRRYZ
                                          ZRXDRFAJAAAAAAAJ
                                           PIJTABJAAAAAAACV
                                         YUSBNCADJAAAAAAAAK
                                         QKALOAAHHAAAAAAAAAOY
                                      YZLFBNNAAGZGAAAAAAAAAACNX
                                  VQSNEDFLLGAABSQHAAAAAAAAAAAAAAGHHHLRRSU
                               YRMLKJCGLFBEFFJHAAJEAACAAAAAAAAAAAAAAAAAAACIX
                         Z YYYZ    ZQQQTXYZZOQY  UKM  XVOJGHEAAAAAAAAAAAAABFW
                           SSSRSQQQQQPPPPPRZZYXXXXXXWWWWWWRQIJFFFFFFFHQQQQV
                                           VVVTTTTTTTTTTTTTZ  

$ oak

Version control for AI tools

Experimental software — not recommended for production use. See terms.

curl -fsSL https://oak.space/install | sh

Git wasn't designed for this

Git was built in 2005 for coordinating Linux kernel patches between human developers. It's brilliant at that. But AI coding tools have introduced a fundamentally different workflow, and Git's design assumptions are starting to show their age.

The staging area is pointless overhead

Git's index (the staging area between your working directory and a commit) exists so humans can carefully curate which changes go into each commit. AI tools don't work this way—they make a set of changes and want to snapshot them. The git add / git commit dance is unnecessary friction. AI agents routinely get confused by partially staged state, untracked files, and the distinction between "modified" and "staged."

Merge conflicts break autonomous workflows

When two AI agents (or a human and an AI) work on the same codebase, Git's line-based three-way merge frequently produces conflicts that require manual resolution. This is fine when a human is at the keyboard. It's a showstopper for autonomous agents that need to commit, push, and move on. Every conflict is an interruption that requires human intervention or brittle heuristics to resolve.

The mental model is too complex

Working tree, index, local branch, remote-tracking branch, upstream, HEAD, detached HEAD, reflog, stash—Git has a notoriously steep learning curve. AI tools burn tokens and make mistakes navigating this complexity. Rebasing goes wrong. Detached HEAD states cause lost work. The more surface area a VCS exposes, the more ways there are for an automated tool to end up in a bad state.

History rewriting conflicts with AI traceability

Git culture encourages squashing, rebasing, and amending commits to keep history "clean." But with AI-assisted development, you often want a complete record of what was generated, what was revised, and what was thrown away. Rewriting history destroys exactly the provenance information that matters most when code isn't entirely human-written.

What Oak does differently

Oak takes a snapshot-based approach. Every commit captures the complete state of your project—no staging area, no index, no partial states. You change files, you commit, you push. That's it.

Branches are lightweight and merge is designed around whole-tree snapshots rather than line-by-line patches. Content is stored by its BLAKE3 hash, so identical files are never stored twice regardless of how they got there.

The result is a version control system with a small API surface that's easy for both humans and AI tools to operate correctly. Fewer states to get into means fewer ways to get stuck.

What it looks like

Terminal
# Initialize and start working
$ oak init my-app && cd my-app

# AI makes changes, you commit the snapshot
$ oak commit -m "Add JWT authentication"

# Push to remote, pull from remote. No surprises.
$ oak push
$ oak pull

# Branch, work, merge back
$ oak branch new auth-flow
$ oak commit -m "Add password reset"
$ oak merge

Caveats

Oak is experimental software. Git has decades of hardening, an enormous ecosystem, and deep integration with nearly every development tool in existence. Oak doesn't replace any of that today.

What Oak is trying to answer is a narrower question: if you were designing version control from scratch for a world where AI agents write and modify code alongside humans, what would you build? The answer probably looks different from Git. Oak is one attempt at exploring that space.

Get the Source Code

Oak is built with Oak. Install the CLI, then pull the source:

Terminal
# Install oak
$ curl -fsSL https://oak.space/install | sh

# Clone the oak source code
$ oak init oak.space/oak
$ cd oak
$ oak pull