Show HN: 适用于人工智能代理的 Git

05-09 15:43

阅读原文→
开源项目"适用于人工智能代理的 Git"发布,旨在为AI代理提供类似Git的版本控制系统。该系统允许AI代理跟踪和管理其代码、提示词、模型权重等资产的变更历史,支持分支、合并与回滚操作。项目已在GitHub开源,并在Hacker News上获得100点热度。这一工具试图解决AI开发中工作流复杂、迭代难以追溯的问题,为多代理协作与实验管理提供标准化方案

原文内容

Show HN: 适用于人工智能代理的 Git

re_gent

Git for AI Agents

Version control for AI agent activity. Track what your agent did, which prompt wrote each line, and rewind when things break.

[![Star on GitHub](https://img.shields.io/github/stars/regent-vcs/regent?style=for-the-badge&logo=github&color=gold)](https://github.com/regent-vcs/regent) [![Apache 2.0 License](https://img.shields.io/badge/License-Apache%202.0-blue?style=for-the-badge)](LICENSE) [![Go Version](https://img.shields.io/github/go-mod/go-version/regent-vcs/regent?style=for-the-badge&logo=go&logoColor=white&color=00ADD8)](go.mod) [![CI Status](https://img.shields.io/github/actions/workflow/status/regent-vcs/regent/ci.yml?style=for-the-badge&logo=githubactions&logoColor=white)](https://github.com/regent-vcs/regent/actions/workflows/ci.yml) [![Contributions Welcome](https://img.shields.io/badge/Contributions-Welcome-10b981?style=for-the-badge&logo=github)](CONTRIBUTING.md) [![Claude Code Compatible](https://img.shields.io/badge/Claude%20Code-Compatible-6366f1?style=for-the-badge&logo=anthropic&logoColor=white)](https://github.com/regent-vcs/regent)

Demo

re_gent tracking Claude Code activity

Every tool call is automatically captured. No manual commits needed.

Quick Start

```bash

Install via Homebrew (macOS/Linux)

brew tap regent-vcs/tap
brew install regent

Or via Go

go install github.com/regent-vcs/regent/cmd/rgt@latest

Initialize in your project

cd your-project
rgt init

Work with Claude Code normally (every tool call is tracked)

See what happened

rgt log
rgt blame src/file.go:42

That's it. Your agent activity is now auditable.

What You Get

See what your agent actually did

$ rgt log

Step a1b2c3d | 2 min ago | Tool: Edit
│ File: src/handler.go
│ Added error handling to request handler
│ + 5 lines, - 2 lines

Step d4e5f6g | 5 min ago | Tool: Write
│ File: tests/handler_test.go
│ Created unit tests for handler
│ + 23 lines

Step f8g9h0i | 8 min ago | Tool: Bash
│ Command: go mod tidy
│ Cleaned up dependencies

Blame: which prompt wrote this line?

$ rgt blame src/handler.go:42

Line 42: func handleRequest(w http.ResponseWriter, r *http.Request) {

Step: a1b2c3d4e5f6
Session: claude-20260502-143021
Tool: Edit
Prompt: "Add error handling to the request handler"

Track multiple concurrent sessions

$ rgt sessions

Active Sessions:
claude-20260502-143021 | 3 steps | Last: 2 min ago
claude-20260502-091534 | 7 steps | Last: 2 hours ago

$ rgt log --session claude-20260502-143021

Filter history by session

See full context for any change

$ rgt show a1b2c3d

Step a1b2c3d4e5f6
Parent: d4e5f6g7h8i9
Time: 2026-05-02 14:30:21

File: src/handler.go

Changes:
+ func handleRequest(w http.ResponseWriter, r *http.Request) {
+ if r.Method != "GET" {
+ http.Error(w, "Method not allowed", 405)
+ return
+ }

Conversation:
User: "Add error handling to reject non-GET requests"
Assistant: "I'll add method validation to the handler..."

Why This Exists

The problem: AI agents have no version control of their own.

You know this pain:

The solution: Three primitives that should already exist:

We gave agents write access to our codebases. We did not give ourselves git for it. re_gent fixes that.

How It Works

re_gent stores agent activity in .regent/ (like .git/):

.regent/
├── objects/ # Content-addressed blobs (BLAKE3)
├── refs/ # Session pointers (one per agent)
├── index.db # SQLite query index
└── config.toml

Every tool call creates a Step:

```go
Step {
parent:
tree:
transcript:
cause: {
tool_name: "Edit"
args:
result:
}
session_id: "claude-20260502-143021"
timestamp: "2026-05-02T14:30:21Z"

Steps form a DAG. Each session has its own branch. Common ancestors dedupe. You get git-level auditability for agent activity.

Technical details: See POC.md for the complete specification.

Installation

Via Homebrew (macOS/Linux)

This installs both regent and rgt commands (they're identical) and automatically sets up shell completions for bash, zsh, and fish.

Via Go Install

This installs the rgt command.

Shell Completion (manual setup):

Bash

rgt completion bash > /usr/local/etc/bash_completion.d/rgt

Zsh

rgt completion zsh > "${fpath[1]}/_rgt"

Fish

rgt completion fish > ~/.config/fish/completions/rgt.fish

From Source

git clone https://github.com/regent-vcs/regent
cd regent
go build -o rgt ./cmd/rgt
sudo mv rgt /usr/local/bin/

Optionally create a symlink: sudo ln -s /usr/local/bin/rgt /usr/local/bin/regent

For shell completion, follow the "Via Go Install" instructions above.

Binary Releases

Download pre-built binaries from GitHub Releases

Editor Integration

VSCode Extension

Get inline blame annotations directly in your editor:

Installation Options:

1. From VSIX (Recommended)

Download the latest .vsix from:

https://github.com/regent-vcs/vscode-regent/releases

Then in VS Code: Extensions > ... > Install from VSIX...

2. From VS Code Marketplace (Coming Soon)

Search for "re_gent Blame"

3. From source (Development)

git clone https://github.com/regent-vcs/vscode-regent
cd vscode-regent
npm install && npm run compile

Press F5 in VS Code to launch Extension Development Host

Features:

Requirements: re_gent CLI must be installed and rgt init run in your project.

View Extension Docs →

Commands

Available Now:

Command Description
rgt init Initialize .regent/ in current directory
rgt log Show step history (supports --session, -n, --since)
rgt sessions List all active sessions
rgt status Show current repository state
rgt show <step> Display full context for a step (tool call + conversation)
rgt blame <path>[:<line>] Show per-line provenance for a file
rgt cat <hash> Inspect any object by hash (debug)
rgt version Print version information
rgt completion Generate shell completion scripts

Coming Soon:

| rgt rewind <step> | Non-destructive time-travel |
| rgt gc | Garbage collection |
| rgt fork <step> | Create a new session from a step |

Features

re_gent vs Git

项目 Git re_gent
Tracks code
Tracks agent activity
Blame with prompt
Conversation history
Concurrent sessions ⚠️ conflicts ✅ separate branches
Purpose Developer VCS Agent audit trail

re_gent complements git, doesn't replace it. Use both.

Status

Active Development

Honest assessment: Production-quality code at POC-level feature completeness. We're building in public.

Contributing

Contributions are welcome! re_gent is built in public and we actively review PRs.

Quick Start:

Before opening a PR:

Important files:

Built With

License

Apache License 2.0

<sub>Built by <a href="https://github.com/regent-vcs/regent/graphs/contributors">contributors</a></sub>
<a href="https://github.com/regent-vcs/regent/discussions">Discussions</a> •
<a href="https://github.com/regent-vcs/regent/issues">Issues</a> •
<a href="POC.md">Technical Spec</a>

原文图片