@einsia/agent-git

中文文档
0.2.51发布于 2026/11/12MIT零依赖构建来源已验证近 30 天下载 6549

代理会话的版本控制——Claude Code,Codex,OpenCode和Cursor的Agit CLI外加技能/hooks/MCP接线. 特工吉特枢纽单独部署.

中文使用文档
文档目录5 节
  1. 安装
  2. 用户: npm
  3. 贡献者/热心用户:来源
  4. 文档
  5. 释放

激动

License: MIT Built with Rust

每个代理会话的无损失版本控制:可发布,可恢复. 与克洛德代码,Codex,OpenCode,和Cursor合作.

在磁盘上,会话只是JSONL文件,可以被覆盖,压缩,和 随时清理. agit 把快照和版本放在上面, 因此,"上周三的对话 终于打破了虫子"变成了 你可以找到的东西,继续, 并交给一个队友.

agit                              choose a session to continue
agit new                          choose a repo and name a fresh conversation
agit import                       choose an existing runtime conversation to adopt
agit log                          choose a session and browse its history
agit push                         choose a saved session to publish
agit share                        choose a session and review link settings
agit run owner/repo@ref           open a saved source, forking when needed

这些光线命令在人类终端打开它们的接口. agit resume 继续同一会话,永远不要叉; agit run 可以启动新的可写文件 从标签、历史点或其他作者的源头.

在通过的一个代理会议, agit commit 保存已完成的回合和 agit push 发布会议。 对于脚本,通过目标明确, 比如说 agit push owner/repo@branch --json。目录分支指针不会 选择目标 commit, (中文(简体) ), push 或者说 share。 。 。 .

在用户界面启动时, agit 检查更新版,最多一天一次,打印a 提醒到 stderr; 它永远不会自动升级 。 JSON/quiet/CI和内钩/MCP路径 跳过此提醒 .

采用和记录第一个版本是一个命令——中间 状态("链接,但未经编辑")对任何人无意义. 标记会话 (例如离线),通过 --link-only。 。 。 .

使用完整的本地会话ID,以及明确的运行时间和目的地来发现世系. 终端提供经核实的本地基地,独立进口,或取消. 非交互式 调用不写入的返回选择; 通过 --onto <ref> 或者说 --independent 来选择路径. --propose-lineage 在不通过会话的情况下打印只读的报告. 检查现有寄存器中的分系需要 NUL-framed Git worktree 输出, 通常以2.36吉特或更新版本提供。 不支持的 Git 报告 git_worktree_format· ; 明确 --onto, (中文(简体) ), --independent,以及 --link-only 进口保留其普通支票.

agit clone 本地获取仓库历史 。 使用 agit run 或者说 agit resume 开始运行时间。 一个克隆是 默认只读 在枢纽上: 没什么 以您的名义创建 origin 点在源. agit clone --mine 创建您的副本, 重点 origin 并记住源是 upstream。 。 。 .

完整命令列表在 agit --help。 。 。 .

安装

用户: npm

npx -y create-agit@latest          # one-shot: installs agit + wires skills/hooks/MCP
# or as a global package:
npm install -g @einsia/agent-git --allow-scripts=@einsia/agent-git
agit --version

两条路线都安装了预建的二进制——不需要Rust工具链. 无 选择匹配您的平台子包 os编号 :cpu; 在没有的平台上 预建二进制( 如 FreeBSD) 运行 agit 打印创建源的食谱. 细节和环境变量: npm/README.md。 。 。 .

Windows x64软件包包括原生的对等的RC守护进程. 在Windows、Linux和macOS上运行 agit login 接下来是 agit rc start --detach 以注册设备并允许您自己的 从工作空间控制它。 Windows 拥有者 RPC 使用本地命名管限制 到当前用户。 RC状态需要一个私有,用户拥有的目录.

全局包从安装脚本中取出电线技能,钩子和MCP. 中午12点及以后 跳过未允许的安装脚本, 也就是说 --allow-scripts 以上为:; 组织政策strict-allow-scripts, (中文(简体) ), ignore-scripts)也可以阻挡或跳过. 下 小时( pnpm )pnpm add -g @einsia/agent-git)安装脚本则不配置任何内容。 如果安装 脚本未运行, 未运行 agit setup 曾经是你自己 它建立了运行时间 安装在当时, 所以在安装另一个后再运行它.

Linux的艺术品是 粘接静态连接因此,没有最小的glibc—— 释放管道在高山/亚马逊 Linux 内部运行每个 Linux 二进制 Debian / Ubuntu 容器矩阵在发布前.

预建的二进制包括 Git 和 Git LFS, 首先提取到私人缓存 使用时。 您的外壳 PATH 和全球 Git 配置保持不变 。 来源构建 使用系统 Git; AGIT_USE_SYSTEM_GIT=1 在预建的二进制中选择它 . 见 运行时间配置和源先决条件。 。 。 .

不安装 @einsia/agentgit (无连字符)——这是前作重写 CLI;其协议与这个分支不相匹配,也不会奏效.

贡献者/热心用户:来源

git clone https://github.com/Einsia/agent-git
cd agent-git
./setup.sh

setup.sh 检查工具链(rustc, a C 编译器),构建和安装 二进制为 ~/.local/bin/agit。共同旗帜:

./setup.sh --debug      # no LTO, much faster while hacking
./setup.sh --test       # run cargo test --lib before installing
./setup.sh --help

构建一个二进制中枢是中转部署的二进制,设置建设时间默认值 当然 运行时间 AGIT_HUB_URL 财务报告和审定财务报表 agit config hub.url ... 仍然优先:

AGIT_DEFAULT_HUB_URL=https://staging.agent-git.com cargo build --release --locked

GitLab 内部管道包已承诺处理 dev 财务报告和审定财务报表 staging 使用此设置构建 内嵌。 他们 agit --version 输出包括信道和源输入,以及 agit upgrade 被禁用,所以接受测试二进制不能沉默地变成公开发布. 只有已存在的 GitHub agit-v* 标签生成 prod 频道. 标签驱动运行“释放” 工作流程自动; 操作员也可以通过工作流程选择相同的已审查标签 手动生产输入以重试失败的释放而无需创建不同的文物身份.

要求数 生锈 = 1.88 和 C 编译器rusqlite 使用该 bundled 特性,所以 sqlite 的 C 源是在构建过程中编译的 。 其原因为何 工具链地板在 docs/01_setup.md。 。 。 .

两种路径都安装了相同的二进制. npm是用于"不想碰的用户" 生锈"; setup.sh 是用来"改变代码的人"和"运行的人" 未发行版本".

文档

目标何处
构建、 运行后端、 签名、 调试docs/01_setup.md
如何在本地存储会话docs/02_session_store.md
人类的终端接口docs/07_tui.md
登录/ 符号力学docs/commands/auth.md
本地低强度秘密过滤docs/05_global_secret_filter.md
可撤消存储库密钥占位符docs/06_repository_secret_dictionary.md
每个运行时间的预留存储格式docs/mechanism-probing/
npm 软件包行为和env varsnpm/README.md
公布文物命名合同.github/RELEASE_ARTIFACTS.md
每一版的变化CHANGELOG.md

服务器( E)探员吉特)是一个单独的存储库,单独部署.

释放

Cargo.toml 是版本的单一源; 每个 npm 显示必须 同意它(node scripts/check-version.js - 在CI和之前运行 npm pack) (中文(简体) ). 为了移动版本,改变一个镜头中的每个位置:

node scripts/bump-version.mjs 0.1.0    # Cargo.toml + Cargo.lock + all npm manifests

释放笔记在现场 CHANGELOG.md他们先来,写下 版本的 ## [x.y.z] 区域,然后是凸起. bump-version.mjs 拒绝触摸文件 版本没有一节,以及 check-version.js 拒绝一个在CI和之前 npm pack。 。 。 . 该部分成为了 GitHub 释放体(scripts/release-notes.mjs 把它提取出来 release.yml,在放出标签上贴上存储库-相对链接)和船舶在内 页:1 @einsia/agent-git 软件包.

只有释放分支( E)release/<version>)编辑 CHANGELOG.md合并 请求在描述中每对用户可见的更改设置一行,或 Changelog: none数字 :

Changelog: Added|Changed|Fixed|Security: <one sentence for users>

发行分会将这些行收集入版本的分会. 线人 changelog:released 失败更改文件的任何其他合并请求: 它添加的行 下级 ## [Unreleased] 可以在不发生冲突的情况下合并到已发布的区域.

发行后合并请求通过CI后,将其合并到GitLab main 当它的头 包含 main'tip, 在标签存在之前不要合并其他任何内容 。 等着 输油管 mirror:github,然后运行其手册 release:github-tag 任务。 CI拒绝 释放其树不是释放合并请求的头部 已录入源到映射并创建 agit-v<version> 在公众镜子上 承诺 释放标记是不可改变的;一个已失效的管道在任一标记之后都无法发布 main 移动.

mirror:github 不等待着 main 管道的Windows建设. 视窗是 检查每个合并请求 rust:test:windows,对于释放运行 在 npm 之前再次通过 GitHub 发布工作流程.

镜像重写会承诺ID,所以来源SHA不是释放SHA. 别 将释放标记直接推到 GitHub 。 CI 创建的标签启动 GitHub 发布 工作流程,构建和检查每个目标的二进制,Windows包括, 然后触发 npm 发布.

通过npm登记册向用户分发:每艘目标船舶作为 平台子软件包(@einsia/agent-git-linux-x64 和朋友,门由 os编号 :cpu —— npm 只安装匹配的, 和主 @einsia/agent-git 把他们拉进来 optionalDependencies。 GitHub 软件 释放出油管花球 SHA256SUMS (单位:千美元)合同) (中文(简体) ).

发布到 npm 是 npm 发布 工作流程。 自动运行 一旦发布工作流程完成绿色(并可手动发送)—— 行动 npm 发布——供重审, next 审判,或 dry_run) (中文(简体) ). 它以抚养顺序出版全家——平台包 @einsia/agent-git → create-agit ——真正在全球安装主机 通过 npm 信任的出版进行认证 (OIDC,没有存储的代号). 等效的本地倒计时 :

gh release download agit-v0.1.0 -p 'agit-*.tar.gz' -D /tmp/agit-dist
node npm/publish.mjs /tmp/agit-dist        # platform packages → main → create-agit

npm/create-agit/ 是后面的一发安装器 npx -y create-agit@latest - 这个 取决于主软件包,并将 npx 缓存副本转换为耐用 ~/.local/bin/agit,然后通过 agit setup。这里有 故意不使用未瞄准的别名包 : agit npm 属于无关的 npm 的打字规则块 agent-git 作为一分 离开第三方 agentgit。 。 。 .

版本预告( A)GET /api/cli/version )和 agit upgrade 两者都读取 npm 登记册;完整性核查使用登记册的 SRI (sha512) (英语). 内部叉口集线器 AGIT_BACKEND_CLI_REPO 整个链条恢复到 GitHub 路径.

@einsia/agent-git 是一个没有已有用户的新软件包名称, 因此 第一次发布直接到 latest - 不用躲起来 next 先说. (旧的) @einsia/agentgit 留在原地;它指向前重写 CLI。 )

版本与发布记录

@einsia/agent-git 共发布 58 个版本,首次发布于 2026/08/08;过去 12 个月发布了 58 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.2.51latest2026/11/12今天
0.2.502026/11/121 天前
0.2.492026/11/112 天前
0.2.482026/11/103 天前
0.2.472026/11/103 天前
0.2.462026/11/094 天前

关于 @einsia/agent-git 的常见问题

@einsia/agent-git 是什么?

代理会话的版本控制——Claude Code,Codex,OpenCode和Cursor的Agit CLI外加技能/hooks/MCP接线. 特工吉特枢纽单独部署.

如何安装 @einsia/agent-git?

在项目目录运行 npm install @einsia/agent-git,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 agit,可以用 npx agit 直接运行。

@einsia/agent-git 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/einsia__agent-git 是否存在。

@einsia/agent-git 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=20。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@einsia/agent-git 可以商用吗?

@einsia/agent-git 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@einsia/agent-git 的下载量有多少?

根据 npm 官方下载统计,@einsia/agent-git 在 2026/10/13 – 2026/11/11 这 30 天内被下载 6,549 次,日均约 218 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@einsia/agent-git 还在维护吗?

最新版本 0.2.51 发布于 2026/11/12(今天);至今共发布 58 个版本,其中过去 12 个月发布了 58 个;首次发布于 2026/08/08。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。