OpenGAP
用 Git 仓库定义、校验并导出可移植 AI Agent 的命令行标准。
- Star 数
- ★ 3k
- 最近更新
- 4 个月前
- License
- MIT
- 主语言
- TypeScript
- FA 评分
- 54/100 · 缺口较多
30 秒速览
- 运行形态
- 可在哪里用
- 通用 · 跨平台Codex · Claude Code · OpenAI API
- 费用
- 软件免费,模型调用费用自付
- 上手难度
- 低 · 几分钟可跑通
- 开始前需要
- 典型场景
- 希望把团队的代码审查 Agent 以 Git 管理,并在 CI 中执行 opengap validate 的工程团队。
- 不适合
- 需要开箱即用的编排、工具执行或记忆读写的团队
- 希望用图形界面而非命令行和 Git 管理智能体的用户
- 不愿依赖 Node.js 18+、npm 与本地文件系统的团队
- 源码审查
- 54/100 · 缺口较多
这个 Agent 能做什么,适合哪些场景?
OpenGAP(Git Agent Protocol)是一套以 Git 仓库为载体的 AI Agent 定义标准,以及其参考命令行工具。一个最小 Agent 由 agent.yaml 清单和 SOUL.md 身份文件组成,并可扩展规则、技能、工具 schema、工作流、记忆、钩子、合规材料和子 Agent。CLI 可初始化模板、校验定义、展示信息、导入部分现有格式,并导出为系统提示词、Claude Code、OpenAI Agents SDK Python 等目标格式。它定义和转换的是 Agent 的身份、规则、工具 schema 与策略;编排状态机、实时工具执行、记忆 I/O 和迭代循环仍由目标运行时负责。
执行 npm 安装后的 opengap(gitagent 为兼容别名)时,opengap init --template 创建 minimal、standard、full 或 llm-wiki 模板。opengap validate 会按规范校验 Agent,附加 --compliance 时校验监管与职责分离配置;opengap audit 生成合规检查报告。opengap export --format <fmt> 将仓库中的 agent.yaml、SOUL.md 等定义导出为指定适配器格式,opengap import --from <fmt> <path> 支持 claude、cursor、crewai、opencode 导入,opengap run 可从 Git 仓库或本地目录经适配器运行定义。workflows/ 可用 YAML 编排 skill:、agent:、tool: 步骤,支持 depends_on、输入模板、条件和失败通知设置。
- 希望把团队的代码审查 Agent 以 Git 管理,并在 CI 中执行 opengap validate 的工程团队。
- 需要将同一套身份、规则和工具 schema 导出到 Claude Code、OpenAI Agents SDK 或纯系统提示词的 Agent 维护者。
- 在金融合规场景中,需要声明 maker、checker 等角色冲突、人工监督和审计记录要求的团队。
- 希望通过 extends 或 dependencies 复用基础 Agent、技能和子 Agent 定义的平台工程团队。
- 准备把 Claude、Cursor、CrewAI 或 OpenCode 中已有 Agent 定义迁入版本化仓库的开发者。
如何安装或部署这个 Agent?
前提是 Node.js >= 18、npm 和 Git。全局安装:
npm i -g @open-gitagent/opengap安装后可使用 opengap;gitagent 也会作为向后兼容别名安装。README 未要求 API 密钥作为创建、校验或导出定义的前置条件。
如何使用这个 Agent?
在目标 Git 仓库中创建第一个定义:
opengap init --template standard
opengap validate
opengap info
opengap export --format system-prompt最小定义需保留 agent.yaml 和 SOUL.md。若需直接运行某个定义,可使用:
opengap run ./my-agent --adapter lyzr也可将 Agent 定义与工作区分开:
opengap run --dir ./agents/reviewer --workspace ~/code/my-app --adapter claude -p "Review this repository"这个 Agent 有哪些优点和局限?
- 以 Git 提交、分支、diff、标签和 PR 管理 Agent 定义,天然支持版本回退与审计追踪。
- agent.yaml、SOUL.md、RULES.md、DUTIES.md 等文件将身份、约束和职责政策拆分为可审阅的仓库资产。
- 提供 init、validate、audit、import、export、run 和 skills 命令,并列出多种导出或运行适配器。
- 对金融合规和职责分离提供明确字段、冲突矩阵、交接要求及 strict/advisory 执行模式。
- 仅 agent.yaml 有严格 schema;其他约定文件的质量和完整性仍依赖团队治理。
- 跨框架导出不迁移运行时编排、实时工具执行、记忆 I/O 或迭代循环,落地时仍要维护目标运行时。
- 使用 CLI 需要 Node.js >= 18、npm、Git 和本地文件系统;Git 依赖解析及远程仓库运行也会涉及网络访问。
- README 虽列出适配器,但未在提供材料中说明各适配器的功能一致性、认证流程或生产运行保障。
这个 Agent 与同类方案有什么区别?
与 Claude Code、OpenAI Agents SDK、CrewAI、LangGraph 等运行框架相比,OpenGAP 的定位是抽取并版本化 Agent 的身份层、规则、角色与工具 schema,而不是替代这些框架的运行时编排和执行机制。
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| OpenGAP 当前 | 54 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 3k | 4 个月前 | TypeScript | Codex · Claude Code · OpenAI API |
| DACA 智能体 AI 学习体系 | 37 · 缺口较多 | 开发框架免费 + 模型费 | ★ 4.4k | 1 年前 | Jupyter Notebook | OpenAI API |
| Vouch | 71 · 存在缺口 | 命令行工具免费 + 模型费 | ★ 66 | 3 个月前 | Python | Claude Code |
| AnyAgent | 58 · 缺口较多 | 代码库 / SDK免费 + 模型费 | ★ 1.3k | 1 个月前 | Python | — |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
README描述了.gitignore保护.env、人工审查分支/PR、角色隔离和回滚等做法,因此数据流透明度与回滚有一定依据;但这些主要是标准和模式的说明,所给源码未展示运行时权限控制、写操作确认或密钥处理实现,故最小权限、用户确认和敏感数据处理仅得1分。工作流和依赖安装会产生外部影响,但没有给出相应的同意或恢复细节。依赖清单可见而没有所给的安全审查证据;发布工作流给出了发布身份权限配置,但维护者身份及更新责任仍不清楚。
README、CLI入口、包清单和工作流对主要命令与Node版本提供了部分互相支持的信息。扣分原因是README写到的命令选项和别名并非都能从所给源码核对;CI示例验证步骤使用“|| true”,会吞掉验证失败;未提供失败信息实现或错误处理源码。依赖名称和版本范围明确,Node最低版本也有说明,但没有锁文件或依赖安全处理证据。
README覆盖创建、导入、导出、合规、工作流和多种运行环境,示例SKILL也标明了适用场景与触发描述;同时说明框架迁移保留身份层、运行时编排和工具执行留在原框架,体现了能力边界。扣分原因是场景和兼容性主张主要来自文档,所给源码不足以核实具体适配器行为或不同环境限制。
README提供清晰的目录结构、最小必需文件、快速开始、命令表和示例;包与LICENSE明确标示MIT,许可证文本完整。扣分原因是项目曾更名,且README中的项目/命令名并不总是一致;没有提供变更日志或明确维护责任人/支持承诺。安装与示例说明较实用,但部分命令及模板无法由所给源码确认;对限制的说明主要集中在框架迁移边界。
该标准以Git文件、版本历史和适配器支持来组织可移植的Agent定义,README提供可直接复用的配置和报告格式示例,因此对创建、审查及迁移有明确用途。扣分原因是合规支持和跨框架导出等效益主要是文档声明,所给文件无法证明其实际覆盖程度;运行、维护依赖、人工审查及合规配置也会带来成本,材料没有量化成本或适用边界。
许多主张可追溯到README中的目录、命令、模式和示例,包清单与CLI入口也能核对包名、版本和命令注册。扣分原因是缺少所述规范正文、适配器实现和验证器源码等关键材料,CI还允许示例验证失败后继续,因此跨来源印证有限。README将合规能力、适配器覆盖和工作流行为以较确定措辞陈述,但提供材料不足以区分已实现事实与设计目标。
- 将合规、权限隔离和跨框架能力视为文档所述的设计主张;本次提供的材料不足以核验其运行时执行情况。
- CI中的示例验证命令会忽略失败状态,不能据此认定示例全部通过。
最近版本
来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。
-
v0.5.0 v0.5.0 — Claude session continuation (--continue, --resume, --session-id)
发布说明摘录
opengap run: session continuation for the claude adapter ```bash Continue the most recent session in the working directory opengap run -d ./my-agent -a claude -c -p "continue where we left off" Pin a session ID on first run, resume it later opengap run -d ./my-agent --session-id 3f9f74a6-6b7c-4a3e-9e1d-2f1f0a9b8c7d -p "Start the audit" opengap run -d ./my-agent --resume 3f9f74a6-6b7c-4a3e-9e1d-2f1f0a9b8c7d -p "Continue the audit" ``` New flags (claude adapter) - -c, --continue — continue the most recent Claude Code session in the working directory (pairs with --workspace) …在 GitHub 查看 ↗ -
v0.4.0 v0.4.0 — OpenGAP (rebrand from gapman)
发布说明摘录
OpenGAP v0.4.0 — package and CLI renamed from gapman to opengap. Install: npm install -g opengap (or scoped @open-gitagent/opengap). The gitagent command stays as a backward-compat alias. Includes the financial_governance type fix and repository.url correction for provenance.在 GitHub 查看 ↗ -
v0.3.2 v0.3.2 — publish gapman both scoped and unscoped
发布说明摘录
Publishes to both: - @open-gitagent/gapman (scoped) - gapman (unscoped alias, same contents) Either works: ```bash npm install -g gapman or npm install -g @open-gitagent/gapman ```在 GitHub 查看 ↗
常见问题
最小 Agent 需要哪些文件?
能否直接用于 Claude Code 或 Codex?
它会自动执行所有工作流吗?
是否必须使用某个模型或云服务?
成本和许可证如何?
谢谢反馈,我们会据此改进页面。