Early preview · v0.1.0-rc.1 · being tested in Cloop and Automaze Works

High-frequency source control for AI agents.

ghf saves your worktree every time an agent finishes an edit. Restore, diff, apply or fork any of those states, on any machine. Git never knows it was there.

$ git hf trace log --annotation tests=pass
#7    ck_01m5054dg9rkmmeasv0rcxd8x0  2026-10-15T16:08:12Z  2 change(s)  claude-code:s1  [tests=pass]
$ git hf trace restore ck_01m5054dg9rk --in-place
restored ck_01m5054dg9rkmmeasv0rcxd8x0 in place (2 written, 1 deleted); recorded as ck_01m5054dmjth7gspksqcfddsh0

Git

holds accepted history: commits, branches, pull requests.

ghf

holds recoverable working history, with its own retention, permissions and sync.

Nothing else changes

No commits, trailers, notes or refs. Plain Git users never need to know ghf exists.

What it does for an agent fleet

Roll back to last green

Tests passed, then a later step broke them. Return to the last checkpoint annotated tests=pass, without a WIP commit.

Hand off between machines

Another worker continues from the exact file state, uncommitted changes included.

Fork an attempt

Two models try different approaches from the same checkpoint, each in its own worktree and trace.

Show a human what was tried

When a run escalates, list the trace and diff any two points.

Survive a crash

A checkpoint is acknowledged only once it is durable locally. Sync catches up when the network returns.

How it works

ghf keeps working history beside Git, never inside it Git repositorycommits, refs, indexghf reads, never writes git hf clientscan, hash, checkpointrestore, apply, fork ghf-servertokens, sync APIretention and prune Agent harnessClaude Code, Cursorhooks after each tool call Local store (.git/ghf)SQLite: objects, tracesone transaction per checkpoint Another machinegit hf sync pulls tracesrestores into a new worktree readssynccalls git hf hookatomic writespull, fetch
Agent hooks call git hf after every edit. It writes checkpoints to its own store under .git/ghf and syncs them to ghf-server, from which any other machine can restore. Git itself is only read.

Every checkpoint is complete

A checkpoint is the full worktree state, stored as content-addressed objects (BLAKE3, zstd). Each one restores on its own, and unchanged directories are shared.

Restore never eats work

Restore goes into a new worktree by default. In-place restore and apply refuse if anything uncaptured would be lost, and every restore is itself a checkpoint.

One writer per worktree

Parallel agents use separate Git worktrees, each with its own trace. A second writer gets E_WRITER_LOCKED.

Its own lifecycle

Traces close, finalize against the commit that landed, and are pruned 30 days later. Pins and holds keep what matters. Pruning never touches Git.

Built for agents to call

Every command takes --json and returns one versioned envelope with stable error and exit codes. Nothing prompts in automation, and mutating commands accept an idempotency key.

{"schema":"ghf/v1","command":"trace apply","ok":false,
 "error":{"code":"E_APPLY_CONFLICT","message":"1 conflicting path(s); the working tree is unchanged"},
 "data":{"applied":false,"conflicts":[{"path":"src/lib.rs","reason":"content changed on both sides"}]}}

Quick start

  1. Run a server

    ghf-server --data-dir /var/lib/ghf token create --name fleet --repos 'acme/*'
    ghf-server --data-dir /var/lib/ghf serve --listen 0.0.0.0:7878 \
      --tls-cert cert.pem --tls-key key.pem
  2. Enable a repository

    git hf init --server https://ghf.example.com --repository acme/project
    git add .ghf && git commit -m "Enable ghf"
  3. Set up each machine

    git hf trust
    echo "$GHF_TOKEN" | git hf login
    git hf hooks install claude-code   # or: cursor
    git hf skill install

That's it: every agent edit is now a checkpoint. The user guide covers the rest.

Fast enough to run on every edit

2,000-file repository, release buildp50p95
Checkpoint after editing files25 ms28 ms
Checkpoint after creating a file42 ms45–51 ms
Restore on another machine0.6 s

Early preview. ghf is currently being tested in Cloop and Automaze Works. Anything can change before v1 is officially released, including commands, the JSON schema, the server API and the storage format.