v0.21.27 · 开源 · 本地优先 · MIT 许可

记录创作历史,
而不只是代码历史

Git 记住的是改了什么。当越来越多的代码由 Agent 写出,这已经不够了。Libra 是一款 AI 原生、兼容 Git 的版本控制系统,它还会记录工作是如何完成的——并把这份记忆保存在你的仓库里。

$curl --proto '=https' --tlsv1.2 -sSf https://download.libra.tools/install.sh | sh
或使用 Homebrew
$brew tap libra-tools/libra && brew install libra
libra — ~/projects/acmecapture
记录你已经在用的 Agent —— 无需改变工作流
Claude CodeCodexOpenCode
diff 不再是故事的全部

一次提交只说明代码落在哪里,却没说它如何走到这一步。

当 Agent 产出一个 600 行的变更时,diff 告诉你终点,却隐藏了航迹——背后的提示词、遵循的计划、运行过的工具、通过的检查,以及是谁签署确认。

评审变得更难

在缺少意图与证据的情况下评审生成代码,规模一大就只能靠猜。

「为什么」蒸发了

聊天记录游离在仓库之外,随时会消失。到下一个 PR 时,推理过程已无处可寻。

溯源无法自主掌控

归因与审计线索躺在别人的 SaaS 里,而不在你自己的版本控制中。

commita4f2c91refactor auth
ask加固 token 校验
plan3 个步骤 · 涉及 2 个文件
act4 次工具调用 · 补丁集 +182 / −57
accept测试 14/14 · 1 个风险信号
decision已接受 · 由 maryam 评审
Libra 保留完整路径,与代码放在一起。
记录层

每个变更都带着它的 AskActAccept

Libra 将一次 Agent 变更建模为由类型化记录构成的结构化轨迹——以开放格式存储、随仓库一起版本化,与它产出的代码放在一起。

A

Ask

想要什么
  • Prompt启动这项工作的指令
  • Intent从提示词中提炼出的目标
  • Intent Discussion塑造意图的澄清对话
  • PlanAgent 承诺执行的步骤
B

Act

Agent 做了什么
  • Run一次有边界的 Agent 执行
  • Tool Invocation它执行的每次命令、读取与写入
  • PatchSet对文件树的具体变更
C

Accept

结果如何被评判
  • Validation运行过的测试、构建与检查
  • Evidence捕获到的输出与产物
  • Risk Signal标记出值得关注的运行
  • Decision谁接受、拒绝或回滚了它
两种接入方式

按你的方式捕获——始终本地优先

既可以直接通过 Libra 驱动 Agent,也可以完全不动现有工作流,让 Libra 从你已经在用的 CLI 中记录。无论哪种方式,轨迹都留在你的机器上,直到你选择共享。

路径 01 · 捕获钩子

面向外部 Agent 的钩子

一条命令即可为 Claude Code、Codex 或 OpenCode 安装由 Libra 管理的钩子。照常使用它们——Libra 会在后台记录会话与检查点。

$ libra agent add codex✓ 钩子已安装
claude-codecodexopencode
只写入 Libra 管理的条目 · 卸载后你的配置保持原样
路径 02 · 通过 Libra 运行即将推出

Web 工作台与 MCP

在 Libra 的本地 Web 控制台中驱动 Agent,或通过 MCP 暴露 Libra,让 Agent 边工作边记录。在浏览器中查看会话、检查点与差异。

localhost:8080 — libra console
Libra Web 控制台,展示 Agent 会话、执行计划与捕获的检查点
为信任而构建

兼容 Git。本地优先。失败即关闭。

底层是一个真正的版本控制系统,其上的捕获层围绕隐私、可移植性与控制权设计。

兼容 Git

导入现有 Git 仓库并继续工作。Libra 使用 Git 的对象模型,你的历史与远端都会一并带来。

cloneinit --from-git-repositorypush

开放、可审视的格式

记录是类型化的、以开放格式存储——可查询、可导出。你的创作历史是你拥有的数据,而非厂商的黑盒。

类型化记录JSON 导出无锁定

默认脱敏

转录与 stderr 会被截断并脱敏;导出原始数据需要显式参数,并会留下审计记录。

失败即关闭

RPC 适配器在被信任之前保持关闭;不支持的 Agent 会得到可操作的报错,绝不静默降级。

保留策略由你掌控

清理已停止会话的检查点、按时间做垃圾回收,只有你决定时才把轨迹引用推送到远端。

MIT 许可,公开开发

以宽松的 MIT 许可在公开环境中开发。阅读代码、自托管、fork——记录层属于每一位使用者。

MIT可自托管libra-tools/libra

未来方向

记录层只是地基。接下来:行级归因、跨创作历史的搜索,以及面向 Agent 规模工作的团队评审界面。

行级归因历史搜索评审界面
一分钟内上手

安装、导入、捕获

把现有项目带入 Libra,开始记录 Agent 的工作——无需改变你运行它们的方式。

STEP 01

安装

# 官方安装脚本
$ curl --proto '=https' \
  --tlsv1.2 -sSf \
  https://download.libra.tools/install.sh | sh
# 或使用 Homebrew
$ brew tap libra-tools/libra
$ brew install libra
# 或 Windows(PowerShell)
PS> irm https://download.libra.tools/install.ps1 | iex
STEP 02

导入你的仓库

$ libra init \
  --from-git-repository ./acme \
  ./acme-libra
$ cd acme-libra
STEP 03

捕获与查看

$ libra agent add codex
# 照常运行 codex……
$ libra agent checkpoint list
$ libra agent checkpoint show <id>

给你的仓库
一份记忆。

开源、本地优先、MIT 许可。为 Agent 构建的一切保留「如何做」——而不只是「做了什么」。

加入 Discord 社区,和我们一起交流