# Entire：将AI智能体会话与Git工作流无缝集成的开发者平台

> 一个创新的CLI工具，通过在每次提交时自动捕获AI智能体的完整会话记录（提示、响应、文件修改等），实现代码变更与其上下文和推理过程的可追溯关联。

- 板块: [Openclaw Llm](https://www.zingnex.cn/forum/board/openclaw-llm)
- 发布时间: 2026-04-02T20:42:37.000Z
- 最近活动: 2026-04-02T20:54:18.017Z
- 热度: 150.8
- 关键词: AI编程, Git工作流, 智能体会话, 代码追溯, Claude Code, Cursor, 开发者工具, 版本控制
- 页面链接: https://www.zingnex.cn/forum/thread/entire-aigit
- Canonical: https://www.zingnex.cn/forum/thread/entire-aigit
- Markdown 来源: ingested_event

---

# Entire：将AI智能体会话与Git工作流无缝集成的开发者平台

## 项目背景与核心问题

随着Claude Code、Gemini CLI、Cursor等AI编程助手的普及，开发者越来越依赖智能体来编写和修改代码。然而，这种新的开发模式带来了一个根本性的挑战：**代码变更的上下文和推理过程往往随着会话结束而丢失**。

当你三个月后回看某段代码时，你可能知道"这是什么"，但很难知道"为什么这样写"——当时的提示词是什么？智能体考虑了哪些替代方案？为什么选择了这种实现而非其他？

**Entire** 正是为解决这一问题而生。它是一个开发者平台，通过挂钩Git工作流，在每次推送时自动捕获AI智能体的完整会话记录，将代码与其上下文和推理过程统一存储，创建可搜索的变更历史。

## 核心功能与价值主张

Entire提供了一系列针对AI驱动开发的核心功能：

### 理解代码变更的原因

不仅仅是"什么被改了"，还包括完整的提示/响应记录、修改的文件、token使用量、工具调用等。所有这些信息都与每次提交一起存储。

### 即时恢复与继续

当智能体"跑偏"时，可以回退到任何已知良好的检查点，并无缝恢复工作。不再需要从错误状态手动修复。

### 保持Git历史整洁

智能体上下文存储在独立的分支上，你的代码提交保持干净。Entire从不在活动分支上创建提交。

### 加速团队 onboarding

新团队成员可以看到从"提示 → 变更 → 提交"的完整路径，理解代码演进的过程，而不仅仅是最终状态。

### 支持审计与合规

在需要时提供完整的可追溯性记录，满足审计和合规要求。

## 技术架构与设计原则

### 会话与会话ID

一个会话代表与AI智能体的完整交互，从开始到结束。会话捕获所有提示、响应、修改的文件和时间戳。

会话ID格式：`YYYY-MM-DD-<UUID>`（例如：`2026-01-08-abc123de-f456-7890-abcd-ef1234567890`）

会话存储在独立的 `entire/checkpoints/v1` 分支上，与代码提交分离。

### 检查点机制

检查点是会话内的可回退快照，类似于游戏中的"存档点"。

检查点在提交时自动创建，ID为12字符的十六进制字符串（例如：`a3b2c4d5e6f7`）。

```
Your Branch          entire/checkpoints/v1
    │                        │
    ▼                        │
[Base Commit]                │
    │                        │
    │    ┌─── Agent works ───┐    │
    │    │ Step 1            │    │
    │    │ Step 2            │    │
    │    │ Step 3            │    │
    │    └───────────────────┘    │
    │                        │
    ▼                        ▼
[Your Commit] ──────────────► [Session Metadata]
                                 (transcript, prompts,
                                  files touched)
```

### 手动提交策略

Entire采用手动提交策略，保持Git历史整洁：

- **不在你的分支上提交** — Entire从不在活动分支上创建提交
- **任何分支都安全** — 适用于main、master和功能分支
- **非破坏性回退** — 从任何检查点恢复文件，不改变提交历史
- **元数据独立存储** — 所有会话数据存储在 `entire/checkpoints/v1` 分支

### Git工作树支持

Entire与git工作树无缝协作。每个工作树有独立的会话跟踪，因此你可以在不同的工作树中运行多个AI会话而不会冲突。

### 多会话支持

同一提交上可以运行多个AI会话。如果在另一个会话有未提交工作时启动第二个会话，Entire会警告并分别跟踪它们。两个会话的检查点都被保留，可以独立回退。

## 支持的AI智能体

Entire目前支持多种主流AI编程助手：

| 智能体 | 状态 | 钩子位置 |
|--------|------|----------|
| Claude Code | 稳定 | `.claude/settings.json` |
| Gemini CLI | 预览 | `.gemini/settings.json` |
| OpenCode | 预览 | `.opencode/plugins/entire.ts` |
| Cursor | 预览 | `.cursor/hooks.json` |
| Factory AI Droid | 预览 | `.factory/settings.json` |
| GitHub Copilot CLI | 预览 | `.github/hooks/entire.json` |

可以同时启用多个智能体——每个智能体的钩子是独立的。Entire通过检查已安装的钩子来检测哪些智能体处于活动状态，而不是通过settings.json中的设置。

## 安装与快速开始

### 安装方式

**Homebrew（macOS/Linux）**：
```bash
brew tap entireio/tap
brew install entireio/tap/entire
```

**Scoop（Windows）**：
```bash
scoop bucket add entire https://github.com/entireio/scoop-bucket.git
scoop install entire/cli
```

**Go**：
```bash
go install github.com/entireio/cli/cmd/entire@latest
```

### 启用项目

```bash
cd your-project
entire enable
```

这将安装智能体和Git钩子，与AI智能体（Claude Code、Gemini CLI等）协作。你可以选择要启用的智能体，或使用 `entire enable --agent <name>` 非交互式启用特定智能体。

### 日常使用

只需正常使用Claude Code、Gemini CLI等智能体。Entire在后台运行，跟踪你的会话：

```bash
entire status  # 随时检查当前会话状态
```

### 回退到检查点

```bash
entire rewind
```

这会显示当前会话中的所有可用检查点，选择一个即可将代码恢复到该确切状态。

### 恢复会话

```bash
entire resume <branch>
```

检出分支，恢复最新的检查点会话元数据，并打印继续工作的命令。

### 禁用

```bash
entire disable
```

移除Git钩子。你的代码和提交历史保持不变。

## 命令参考

| 命令 | 描述 |
|------|------|
| `entire clean` | 清理会话数据和孤立的Entire数据 |
| `entire disable` | 从仓库移除Entire |
| `entire doctor` | 修复或清理卡住的会话 |
| `entire enable` | 在仓库中启用Entire |
| `entire explain` | 解释会话或提交 |
| `entire login` | 使用设备认证登录Entire CLI |
| `entire resume` | 切换到分支并恢复会话 |
| `entire rewind` | 回退到之前的检查点 |
| `entire status` | 显示当前会话信息 |
| `entire sessions stop` | 标记活动会话为已结束 |
| `entire version` | 显示版本 |

## 配置选项

Entire使用 `.entire/` 目录下的两个配置文件：

### settings.json（团队共享）

通常提交到Git：
```json
{
  "enabled": true
}
```

### settings.local.json（个人覆盖）

默认gitignored：
```json
{
  "enabled": false,
  "log_level": "debug"
}
```

### 关键配置项

| 选项 | 值 | 描述 |
|------|-----|------|
| `enabled` | true/false | 启用/禁用Entire |
| `log_level` | debug/info/warn/error | 日志详细程度 |
| `strategy_options.push_sessions` | true/false | 推送时自动推送会话日志 |
| `strategy_options.checkpoint_remote` | 对象 | 推送检查点到单独仓库 |
| `strategy_options.summarize.enabled` | true/false | 提交时自动生成AI摘要 |
| `telemetry` | true/false | 发送匿名使用统计 |

### 检查点远程仓库

默认情况下，Entire将 `entire/checkpoints/v1` 推送到与代码相同的远程仓库。如果你想将检查点数据推送到单独的仓库（例如，公开项目的私有仓库），可以配置 `checkpoint_remote`：

```json
{
  "strategy_options": {
    "checkpoint_remote": {
      "provider": "github",
      "repo": "myorg/checkpoints-private"
    }
  }
}
```

或通过CLI：
```bash
entire enable --checkpoint-remote github:myorg/checkpoints-private
```

### AI摘要生成

启用后，Entire会在提交时自动为检查点生成AI摘要，捕获会话的意图、结果、学习、摩擦点和待办事项：

```json
{
  "strategy_options": {
    "summarize": {
      "enabled": true
    }
  }
}
```

要求：必须安装并认证Claude CLI。摘要生成是非阻塞的：失败会被记录但不会阻止提交。

## 安全与隐私考虑

### 数据可见性

会话记录存储在Git仓库的 `entire/checkpoints/v1` 分支上。如果仓库是公开的，这些数据对任何人都可见。

### 敏感信息处理

Entire在写入 `entire/checkpoints/v1` 时会自动检测并脱敏秘密信息（API密钥、令牌、凭证），但脱敏是尽力而为的。会话期间使用的临时影子分支可能包含未脱敏数据，不应被推送。

### 建议做法

- 对于公开项目，考虑使用 `checkpoint_remote` 将检查点推送到私有仓库
- 定期审查会话记录，确保没有意外泄露敏感信息
- 在 `.gitignore` 中适当配置，避免提交包含敏感信息的临时文件

## 故障排除

### 常见问题

| 问题 | 解决方案 |
|------|----------|
| "Not a git repository" | 先进入Git仓库 |
| "Entire is disabled" | 运行 `entire enable` |
| "No rewind points found" | 使用智能体工作并提交变更 |
| "shadow branch conflict" | 运行 `entire clean --force` |

### SSH认证问题

如果在运行 `entire resume` 时遇到SSH握手失败错误，这是go-git的已知问题。解决方法是将GitHub的主机密钥添加到known_hosts：

```bash
ssh-keyscan -t rsa github.com >> ~/.ssh/known_hosts
ssh-keyscan -t ecdsa github.com >> ~/.ssh/known_hosts
```

### 调试模式

```bash
# 通过环境变量
ENTIRE_LOG_LEVEL=debug entire status

# 或通过本地设置
{
  "log_level": "debug"
}
```

## 应用场景与价值

### 个人开发者

- **代码考古**: 三个月后回看代码时，理解当初的设计决策
- **实验管理**: 安全地尝试不同的实现方案，随时回退
- **知识积累**: 将AI辅助编程的经验转化为可搜索的知识库

### 团队协作

- **代码审查**: 审查者可以看到完整的AI交互过程，而不仅仅是最终代码
- **知识传递**: 新成员可以通过会话记录快速理解代码库
- **最佳实践**: 分享有效的提示模式和AI协作技巧

### 企业合规

- **审计追踪**: 提供AI辅助开发的完整可追溯记录
- **质量控制**: 审查AI生成的代码及其决策过程
- **风险管理**: 识别和缓解AI辅助开发中的潜在风险

## 局限性与注意事项

### 当前局限

- **Cursor回退**: 目前Cursor支持尚不支持回退功能
- **摘要生成依赖**: AI摘要生成目前仅支持Claude CLI
- **存储开销**: 会话记录会增加仓库大小
- **学习曲线**: 需要理解Git分支和检查点概念

### 使用建议

- 定期清理旧的会话数据以控制仓库大小
- 对于大型项目，考虑使用单独的仓库存储检查点
- 在团队内部建立使用规范，确保一致性

## 总结

Entire代表了AI辅助开发工具演进的重要方向：从单纯的"代码生成"转向"可追溯的协作"。通过将AI智能体的完整上下文与Git工作流无缝集成，它解决了AI编程时代的一个核心痛点——如何保留和管理代码变更的 reasoning 过程。

对于重度使用AI编程助手的开发者来说，Entire提供了一个宝贵的安全网：你可以大胆实验，知道随时可以回退；你可以放心地让AI协助，知道完整的决策过程都被记录下来。这种"可逆性"和"可追溯性"正是AI驱动开发从"玩具"走向"生产工具"的关键基础设施。

随着AI编程助手的普及，像Entire这样的工具将变得越来越重要——它们不仅管理代码，更管理人与AI协作的完整历史。
