OpenShip

让运行中的项目对 Agent 公开可读

AI Agent 部分免费

OpenShip - 开放协议,让运行中项目对 AI Agent 公开可读

项目简介

OpenShip 是一个开放协议项目,旨在为正在运行中的软件项目提供一个公开接口,让人类与 AI Agent 能够理解、复现甚至改进它。它的核心思路是:从一个可访问的 origin(源点)出发,而不是从某个代码托管平台出发,用纯 HTTP 与 JSON 描述项目的源码、变更与系统架构。当前协议版本为 1.0,状态为草案(Draft v1)。项目主页:https://www.openship.dev/

核心功能

Sources(源码)

发布经过完整性校验的源码快照,任何人都可以独立验证两份快照是否包含相同字节。

Changes(变更)

接受针对 Sources 摘要(digest)提交的补丁,并产生一个隔离的候选 origin,便于安全地测试改动。

Systems(系统)

发布一份自包含的 JSON 文档,描述源码、有序的设计层次、实例绑定以及可选的 Agent 上下文。

公开发现机制

origin 必须提供 /.well-known/openship.json,以未鉴权 JSON、允许跨域读取的方式对外声明自身能力。

Agent 友好

发现文档中内置面向 AI Agent 的摘要、指令与 Skill 入口,引导陌生 Agent 先读取技能再使用能力。

技术实现

OpenShip 的设计目标是「从 origin 出发,而不是从仓库托管方出发」,因此它刻意只依赖小型客户端就能实现的纯 HTTP 与 JSON。协议规定每个 OpenShip JSON 文档都必须包含公共信封字段 openship 与 capability,其中 capability 取值为 discovery、sources、changes 或 systems 之一。

在安全模型上,公开读取与「修改或部署」的权限被刻意分离;OpenShip 本身并不证明谁拥有某个 origin,数字摘要只能证明两份快照字节一致,身份与签名来源需要在此之上另行叠加。

快速上手

  • 在你的项目 origin 上提供公开发现端点:GET /.well-known/openship.json。
  • 让该端点返回未鉴权 JSON,并设置 Access-Control-Allow-Origin: * 以允许跨域读取。
  • 在文档中填写必需字段,包括 openship: 1.0、capability: discovery、project 的 name 与 description,以及 agent 的 summary、instructions 与 skill 入口。
  • 按需声明 sources、changes、systems 三类能力。
  • 让消费方 Agent 先获取并阅读 agent.skill 指定的技能文档,再解析或使用各项能力链接。

适用人群

适合希望让项目更易被 AI Agent 理解与接入的开源维护者;也适合研究 Agent 与代码协作、可验证源码分发、去中心化部署规范的开发者;对关注「公开读取与修改权限分离」这类安全模型的设计者同样有参考价值。

团队信息

由 AI 猎手自动发现

评论与建议

0 条评论