作者: @ignatov 支持者: @benbrandtDocumentation Index
Fetch the complete documentation index at: https://acp-docs.cxykevin.top/llms.txt
Use this file to discover all available pages before exploring further.
电梯演讲
ACP 需要一个单一的、受信任的代理注册表,以便客户端能够发现集成、了解它们的特性并自动配置它们。这个 RFD 提议(1)每个代理必须发布的规范清单格式,(2)一个专用的agentclientprotocol/registry 仓库,维护者可以在其中贡献这些清单,(3)聚合并发布可搜索目录以供编辑器和其他客户端使用的工具。
现状
没有 ACP 兼容代理的规范列表。信息分散在自述文件或专有信息中,这使得:- 让用户在 ACP 感知的客户端内直接发现代理变得困难
- 确保协议版本兼容性或功能覆盖
- 保持元数据一致(身份验证要求、托管模式、许可证等)
代理清单格式(核心提案)
每个代理通过存储在注册表仓库中<id>/ 下的 agent.json 来宣传自己。JSONC 保持与 ACP 的 JSON 中心模式接近,同时在创作时保持对人类友好。除非另有说明,以下字段是必需的:
| 字段 | 描述 |
|---|---|
id | 小写 slug,在注册表中唯一(也是文件夹名称)。 |
name | 人类可读的标签。 |
version | 向用户显示的代理发布版本。 |
schema_version | 清单模式的 semver。允许未来的破坏性更改。 |
description | 代理功能和用途的描述。 |
homepage | 文档/营销的 URL。 |
repository | 源代码仓库 URL。 |
authors | 作者/组织名称数组(镜像 TOML 示例中的 authors)。 |
license | 许可证(字符串)。 |
capabilities | 实现的 ACP 方法名称数组(例如 ["terminal/new","files/read"])。 |
auth | 身份验证的身份验证选项数组。这是模式中最复杂的部分。 |
distribution | 将目标平台映射到下载/执行信息的对象。每个目标键遵循 <os>-<arch> 格式(例如 darwin-aarch64、linux-x86_64、windows-x86_64)。每个目标指定 archive(下载 URL)、cmd(可执行路径)、可选的 args(命令行参数数组)和可选的 env(环境变量对象)。 |
我们提议对此做什么
- 清单规范(上述)成为规范性的;我们发布 JSON Schema 和验证脚本,以便维护者可以在本地进行 lint 检查。
- 注册表仓库
github.com/agentclientprotocol/registry:- 结构:
<id>/agent.json,可选的icon.svg(或主题特定变体的icon-light.svg和icon-dark.svg),可选的README.md。 - 图标应为 SVG 格式以支持可伸缩性。如果提供主题特定图标,必须同时包含浅色和深色变体。
- CI:验证清单,强制 slug 唯一性,检查资源大小,生成聚合产物。
- 结构:
- 聚合输出:
registry.json:所有代理的确定性列表,剥离 JSONC。
- 分发和搜索:
- 客户端从固定的发布或
https://agentclientprotocol.com/registry.json或https://registry.agentclientprotocol.com获取registry.json。 - 静态站点提供对功能、协议版本、部署、身份验证模型和标签的过滤。
- 客户端从固定的发布或
美好的未来
- 代理维护者提交 PR 来更新他们的清单;CI 保持数据清洁。
- 编辑器/客户端可以通过获取一个 JSON 文件并在本地过滤来引导 ACP 支持。
- ACP 网站显示相同的数据供人类阅读,确保一致性。
- 协议版本不匹配立即可见;客户端可以警告或隐藏不兼容的代理。
实施细节和计划
第 1 阶段——规范和仓库引导- 考虑身份验证选项。
- 最终确定 JSON Schema 和文档。
- 要求代理开发人员对规范提供反馈。
- 创建带有 CI(GitHub Actions)的注册表仓库,在 PR 上运行验证。
- 用一些参考代理种子化以证明工作流程。
修订历史
- 2025-11-28:初始草稿。
- 2025-12-16:次要更新。