SuperAPI AI 工具集

gnap

GNAP(Git-Native Agent Protocol)是一种基于 Git 的无服务器协议,用于协调 AI 智能体团队。它仅需在共享 git 仓库中添加 .gnap/ 目录和 4 个 JSON 文件(agents、tasks、runs、messages),即可让任意支持 git push 的智能体参与协作。无需数据库、无供应商锁定,MIT 许可。

访问官网

工具介绍

GNAP(Git-Native Agent Protocol)是一种基于 Git 的智能体编排协议,旨在让 AI 智能体团队通过共享 git 仓库进行协作。它不依赖服务器、数据库或供应商锁定,仅使用 git 作为传输和存储层。任何能够执行 git push 的智能体(如 OpenClaw、Codex、Claude Code 或自定义机器人)都可以加入。协议本身仅定义四个实体,其余均为应用层。

用途:协调多个 AI 智能体(以及人类参与者)共同完成任务,适用于需要审计、离线工作或避免基础设施维护的场景。

主要能力:

  • 零基础设施:无需部署服务器或维护数据库。
  • 任意运行时:只要智能体能读写 git,即可参与。
  • 默认可审计:git 历史即审计日志。
  • 人在回路:人类和 AI 智能体都是第一等参与者。
  • 离线可用:智能体可断开工作,稍后同步。
  • 可组合:可在其上构建预算、工作流、仪表盘等应用层。

四个实体:

  1. agents.json:注册人类或 AI 参与者。必填字段未在资料中详细列出;可选字段、保留字段(Agent ID * 用于广播,不可作为标识符)等细节资料未完整提供。
  2. tasks:工作单元,每个任务一个 JSON 文件,位于 .gnap/tasks/{id}.json。支持状态转换:review → in_progress(审查者拒绝,智能体重做)、blocked → ready(解除阻塞,智能体重新接取)。
  3. runs:任务的一次尝试,每个运行一个 JSON 文件,位于 .gnap/runs/{task-id}-{attempt}.json。任务可有多次运行,失败运行不影响任务,可创建新运行。提供成本追踪、重试历史、审计和性能对比。
  4. messages:智能体间通信,每个消息一个 JSON 文件,位于 .gnap/messages/{id}.json。

使用方式:

  • 在任意 git 仓库中添加 .gnap/ 目录,包含 version 文件(纯整数协议版本,智能体启动时应检查,若版本高于支持则拒绝操作)及上述 JSON 文件。
  • 智能体运行心跳循环:拉取仓库,查找分配给自己的任务,执行工作,提交并推送结果。
  • 提交约定、冲突处理(标准 git 合并,冲突时 pull + rebase + 重试 push)、一致性模型(最终一致性,受最大心跳间隔限制)、排序字段(messages 中的 at,tasks 中的 created_at / updated_at)等细节资料中提及但未完全展开。
  • 新智能体加入流程:注册(在 agents.json 中添加 status: active 条目)、授予 git 读写权限、创建首个任务(如 check-in 任务并分配给新智能体)、智能体在下一次心跳时读取并完成任务。

适用场景:

  • 多智能体协作完成任务。
  • 需要审计追踪和人在回路的流程。
  • 离线或间歇性连接环境。
  • 不希望维护服务器和数据库的团队。
  • 已在生产中使用:Farol Labs 的 AI 团队(4 个智能体,2 AI + 2 人类)通过单个 git 仓库共享 50+ 任务。

限制:

  • 协议仅定义实体和传输,不包含业务逻辑(如公司目标、预算、工作流等属于应用层)。
  • 依赖 git 的最终一致性,冲突需手动或自动合并。
  • 详细字段定义、状态机完整规则、提交约定具体格式等资料中未完全提供。