Git-compatibleLocal-firstMIT licensed

Record the creation. Not only the code.

Git remembers what changed. That is no longer enough when agents write more of the code. Libra also records how the work was done, and keeps that record in your repository.

Capture Claude Code, Codex, and OpenCode. The record stays in the repository until you choose to inspect or sync it.

02 — Beyond the commit

A diff shows the end. The record shows the path.

Capture makes existing source evidence available to inspect. It does not invent a plan, a test result, or an approval.

Prompt

The instruction given to the agent

The captured instruction that started the work, kept with the code history.

03 — The missing context

The code landed. The path did not.

After an agent produces a change, the next reviewer still has to recover why.

Review gets harder

Reviewing generated code without the intent and the evidence becomes guesswork as the change grows.

The reason disappears

Chat history lives outside the repository. By the next change, the reasoning may be gone.

Provenance is not yours

Attribution that exists only in someone else’s service is not part of your version history.

04 — Keep using the agent

Install a capture hook for the CLI you already run.

The hook-installable agents are claude-code, codex, and opencode. libra agent enable turns on every supported agent; the command below enables one.

Claude Code
libra agent add claude-code

Libra writes only its managed entry in .claude/settings.json. Removing the hook deletes that entry and leaves unrelated settings alone.

Enable every supported agent: libra agent enable

05 — Inspect locally

Sessions, checkpoints, and a redacted export.

Inspect the capture after the agent runs. If you only see a session, or an export is empty, use doctor.

Read the Agent Capture docs
06 — Built for trust

Git-compatible. Local-first. Fail closed.

The base is version control. The capture layer is built around privacy, portability, and control.

Git-compatible

Import a repository with libra init --from-git-repository. Object formats stay compatible with Git remotes, and the history comes with them.

Open records

Records are stored in an open format you can query and export. The creation history is your data.

Redacted by default

Transcripts and stderr are capped and redacted. A raw export requires --allow-raw --raw, a justification, and an audit entry.

Fail closed

RPC adapters stay off until they are trusted. Unsupported agents return an actionable error instead of a silent fallback.

Retention stays yours

libra agent clean removes checkpoints from stopped sessions. Trace refs reach a remote only when you run libra agent push.

MIT, developed in public

Libra is developed in public under the MIT license. Read it, build it, or fork it.

The record layer is the current product. Line-level attribution, search across creation history, and a team review interface are published directions, not features of this page.

07 — Install, import, capture

Bring an existing repository into Libra.

Install the CLI, import a Git repository, then add a hook for the agent you use.

libra — install
curl --proto '=https' --tlsv1.2 -sSf https://download.libra.tools/install.sh | sh

Official install script for macOS and Linux.

01

Import the repository

Create a Libra repository from an existing Git repository.

libra init --from-git-repository ./acme ./acme-libra
02

Capture and inspect

After the hook is installed and the agent is restarted, list checkpoints. Replace <checkpoint-id> with an ID from the list.

libra agent checkpoint list
libra agent checkpoint show <checkpoint-id>
Open source · Local-first · MIT

Give the repository a memory it can carry.

Libra records how an agent did the work. Mega2 stores the monorepo, and ScorpioFS mounts a workspace on demand.