gitagent-protocol
把任意 Git 仓库变成可移植的 AI Agent,一套配置通行 LangChain、CrewAI、Claude Code 等主流框架
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
把任意 Git 仓库变成可移植的 AI Agent,一套配置通行 LangChain、CrewAI、Claude Code 等主流框架
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
张明是一名 AI 应用开发者。他在公司用 LangChain 构建了一个数据清洗 Agent,在开源社区用 Claude Code 做了一个代码审查工具,在客户项目里又用 CrewAI 搭了一个客服机器人。三个 Agent,三套配置,三种部署方式——他每天花大量时间在框架之间的翻译和适配上。更痛苦的是,当他想把自己在 Claude Code 中调试好的 Prompt 迁移到 OpenAI 的项目里时,发现几乎要从头重写。
这就是当前 AI Agent 生态的真实写照:框架割裂、标准缺失。OpenGAP(Open Git Agent Protocol)正是为解决这一问题而生。
OpenGAP 由 Shreyas Kapale 创建,项目的核心理念极具颠覆性:把定义 Agent 的配置文件本身变成一个 Git 仓库。这个想法来自于一个简单观察——程序员已经习惯用 Git 管理代码版本,那为什么不能用同样的方式管理 Agent 的"灵魂"?
传统框架要求开发者学习特定 SDK、安装特定依赖、遵循特定目录结构。OpenGAP 则反其道而行:它定义了一套与框架无关的标准化文件格式,任何人只要按照规范在仓库里放几个 YAML/MD 文件,这个仓库就变成了一个可移植、可版本控制、可协作的 Agent 定义。
如果说 AI Agent 框架(LangChain、CrewAI、Claude Code)像是不同的文字处理器(Word、WPS、Google Docs),那么 OpenGAP 就像是 Markdown 格式——无论你用哪个编辑器,.md 文件的内容是通用的。OpenGAP 定义了一套"Agent Markdown",让 Agent 定义在不同框架之间自由流通。
OpenGAP 的标准要求在仓库根目录放置以下核心文件:
agent.yaml:Agent 的清单文件,定义名称、版本、所使用的模型、所需技能(Skills)、工具(Tools)以及合规要求。类似于 package.json 对 npm 包的意义。SOUL.md:Agent 的灵魂文件,描述 Agent 的身份、个性、沟通风格和价值观。这是 OpenGAP 最有创意的设计——把 AI Agent 的"人设"与代码分离。RULES.md:硬性约束规则,定义 Agent 的行为边界和安全限制。DUTIES.md:职责分离策略,适合企业级合规场景(如 FINRA、SEC 监管要求)。skills/ 目录:可复用的技能模块,每个技能包含 SKILL.md 定义和对应的执行脚本(如 review.sh)。opengap(npm 包名 @open-gitagent/opengap)是该协议的实现 CLI,支持以下核心命令:
# 创建标准 Agent 仓库
opengap init --template standard --dir ./my-agent
# 验证 Agent 定义是否符合规范
opengap validate -d ./my-agent
# 本地运行(调用 Claude Code 适配器)
opengap run -d ./my-agent
# 导出为其他框架格式
opengap export -f openai -d ./my-agent -o agent.py
opengap export -f crewai -d ./my-agent -o crew.yaml
# 从远程仓库克隆 + 自动适配 + 运行
opengap run -r https://github.com/user/my-agent -a git -p "Summarize this project"
OpenGAP 不只是定义标准,它还提供了多个主流框架的适配器,支持导出为:
| 适配器 | 说明 |
|---|---|
| Claude | 导出为 Claude Code 格式 |
| OpenAI | 导出为 OpenAI Assistants 格式 |
| CrewAI | 导出为 CrewAI YAML 定义 |
| OpenClaw | 开放爪生态适配 |
| Nanobot | Nanobot 框架适配 |
| Lyzr | Lyzr Studio 集成 |
| GitHub Models | GitHub Models API |
| Git (Auto-Detect) | 自动检测最佳适配器 |
OpenGAP 对企业场景有专门支持。在 DUTIES.md 中可以定义职责分离策略,这对于需要满足监管要求的金融、医疗等行业尤为重要。支持的标准包括:FINRA(美国金融业监管局)、Federal Reserve(美联储)、SEC(证券交易委员会)、CFPB(消费者金融保护局)。
OpenGAP 采用纯 TypeScript 实现,依赖非常精简:
commander:命令行参数解析inquirer:交互式终端输入js-yaml:YAML 文件解析ajv + ajv-formats:JSON Schema 校验(用于验证 agent.yaml 的规范性)chalk:终端彩色输出整个项目没有引入任何机器学习或深度学习依赖,本质上是一个配置管理 + 协议转换工具,而非 AI 模型本身。这使得它极其轻量(~50MB 磁盘占用),无需 GPU。
源码目录 src/ 按命令模块组织,入口文件 src/index.ts 通过 Commander 注册所有子命令,体现了良好的代码组织性。
npm install -g @open-gitagent/opengap 一行搞定。docs.md 超过 4 万字符)。spec/SPECIFICATION.md)版本为 v0.1.0,breaking changes 风险较高。OpenGAP 代表了一个重要的趋势:AI Agent 的标准化与可移植性。随着 Claude Code、Cursor 等 AI 编程工具的普及,开发者对 Agent 的版本控制、协作和复用需求日益强烈。OpenGAP 用 Git 的思路来解决 Agent 的管理问题,思路独特且优雅。
目前它还不是主流选择,但作为开源协议的实验性探索,值得 AI 开发者持续关注。
# 安装 CLI
npm install -g @open-gitagent/opengap
# 创建 Agent 仓库
opengap init --template standard --dir ./my-agent
# 进入目录,编辑 agent.yaml 和 SOUL.md
cd my-agent
# 验证配置
opengap validate
# 本地运行
opengap run -d .