Skip to main content

a2a-lite

Agent-to-Agent 轻量通信协议。仿 Google A2A 设计,但适配 Clawdbot/OpenClaw 生态。用于:(1) Agent 能力发现 (2) 跨 agent 任务协作 (3) 结构化的 agent 间消息交换。触发词:a2a、agent协议、agent通信、agent card、能力发现。

Quellinformationen

Repository
modbender/skill-library-mcp
Letzte Quellaktivität
6. März 2026 um 18:33
Erkannte Sprache von SKILL.md
Chinesisch
Sterne
12
Forks
3

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
a2a-lite
description
Agent-to-Agent 轻量通信协议。仿 Google A2A 设计,但适配 Clawdbot/OpenClaw 生态。用于:(1) Agent 能力发现 (2) 跨 agent 任务协作 (3) 结构化的 agent 间消息交换。触发词:a2a、agent协议、agent通信、agent card、能力发现。
# A2A-Lite: Agent-to-Agent 轻量通信协议 基于 Google A2A 协议精简设计,适配 Clawdbot/OpenClaw 生态的 agent 间自然语言通信标准。 ## 设计原则 1. **自然语言优先** — 协议消息是增强型自然语言,而非纯 JSON RPC 2. **渐进式采用** — 即使对方不支持协议,基本通信也能工作 3. **轻量级** — 不需要 HTTP 服务器,基于现有消息通道 4. **人类可读** — 所有协议消息人类也能理解 ## 核心概念 ### Agent Card(能力卡片) 每个 agent 维护一个 `agent-card.json`,描述自身能力: ```json { "protocol": "a2a-lite/1.0", "agent": { "id": "jiajia", "name": "佳佳", "framework": "clawdbot", "version": "0.x" }, "skills": [ { "id": "research", "name": "调研助手", "description": "收集和分析特定主题的资料", "inputModes": ["text"], "outputModes": ["text", "file"] }, { "id": "podcast-script", "name": "播客脚本", "description": "创作播客口播稿", "inputModes": ["text", "file"], "outputModes": ["text", "file"] } ], "capabilities": { "streaming": false, "fileTransfer": true, "asyncTasks": false }, "channels": ["discord:jiajia"] } ``` ### 消息类型 #### 1. 能力查询 (discover) ``` [A2A:discover] 请告诉我你能做什么? ``` 响应: ``` [A2A:card] 我是佳佳,运行在 Clawdbot 上。 我的主要能力: - 调研助手:收集和分析特定主题的资料 - 播客脚本:创作播客口播稿 支持文件传输,不支持流式输出。 ``` #### 2. 任务请求 (task) ``` [A2A:task id=research-001] 帮我调研一下 "AI Agent 生态的最新进展",时间范围过去一周。 预计需要的输出:markdown 报告文件。 ``` #### 3. 任务状态更新 (status) ``` [A2A:status task=research-001 state=working] 正在收集资料,预计还需要 10 分钟。 ``` 状态值: - `accepted` — 任务已接受 - `working` — 处理中 - `input-required` — 需要更多输入 - `completed` — 已完成 - `failed` — 失败 - `cancelled` — 已取消 #### 4. 任务结果 (result) ``` [A2A:result task=research-001 state=completed] 调研报告已完成,见附件。 [附件: ai-agent-research-2026-02.md] ``` #### 5. 普通消息 (无标记) 不需要协议包装的日常交流正常发送,保持自然。 ## 使用流程 ### 发起协作 1. **检查本地 card** — 读取 `skills/a2a-lite/agent-card.json` 2. **发送 discover** — 了解对方能力(如果不确定) 3. **发送 task** — 用结构化格式描述任务 4. **跟踪状态** — 通过 status 更新了解进度 5. **接收结果** — 处理 result 消息和附件 ### 响应协作请求 1. **识别协议消息** — 检查 `[A2A:...]` 标记 2. **解析请求** — 提取任务 ID 和内容 3. **评估能力** — 检查是否在自己的 skills 范围内 4. **响应或拒绝** — 用 status 回应 5. **执行并报告** — 完成后用 result 回应 ## 协议消息格式 ``` [A2A:<type> <params>] <自然语言消息体> [可选附件] ``` 参数格式:`key=value`,多个用空格分隔 示例: - `[A2A:discover]` - `[A2A:task id=task-123 skill=research]` - `[A2A:status task=task-123 state=working progress=50%]` - `[A2A:result task=task-123 state=completed]` ## Agent Card 管理 ### 创建/更新自己的 card ```bash # Card 位置 skills/a2a-lite/agent-card.json ``` **必填字段:** - `protocol` — 协议版本 - `agent.id` — 唯一标识 - `agent.name` — 显示名称 - `agent.framework` — 运行框架 (clawdbot/openclaw/other) - `skills[]` — 能力列表 - `channels[]` — 可达通道 **可选字段:** - `capabilities` — 支持的特性 - `limits` — 资源限制(如最大文件大小) ### 读取对方的 card 收到 `[A2A:card]` 响应时,可选择缓存到: ``` skills/a2a-lite/known-agents/<agent-id>.json ``` ## 与现有机制的关系 ### 与 cross-agent-collab 的区别 - **cross-agent-collab** — 行为规范(怎么做) - **a2a-lite** — 通信格式(怎么说) 两者互补,a2a-lite 消息应遵循 cross-agent-collab 的原则。 ### 与 sessions_send 的关系 A2A-Lite 消息通过现有通道发送: - Discord 频道:正常发消息 - 跨 session:用 `sessions_send` 协议标记 `[A2A:...]` 是语义增强,不改变传输方式。 ## 错误处理 ### 对方不支持协议 如果对方未用协议格式回应,降级为普通自然语言交流。 ### 任务无法完成 ``` [A2A:status task=research-001 state=failed] 无法完成此任务:缺少访问 X 数据源的权限。 建议:请联系鲁伊科斯塔授权。 ``` ### 能力不匹配 ``` [A2A:status task=video-edit-001 state=failed] 此任务超出我的能力范围。我的 skills 不包含视频编辑。 ``` ## 安全注意 1. **不传输凭据** — Agent card 和消息中不含 API key 2. **文件用附件** — 不假设对方能访问本地路径 3. **不跨系统操作** — 仅协调,不代执行对方系统命令 ## 示例:完整协作流程 **佳佳 → Mexico:** ``` [A2A:discover] 你好!我想了解一下你的能力,看看我们能不能协作完成一个任务。 ``` **Mexico → 佳佳:** ``` [A2A:card] 我是 Mexico,运行在 OpenClaw 上。 我的能力: - 邮件发送:通过 SMTP 发送邮件和附件 - 日程管理:Google Calendar 操作 支持文件接收。 ``` **佳佳 → Mexico:** ``` [A2A:task id=email-001 skill=email] 帮我把这份调研报告发给鲁伊科斯塔。 收件人:5155280@qq.com 主题:AI Agent 调研报告 正文:请查收附件中的调研报告。 [附件: ai-agent-research.md] ``` **Mexico → 佳佳:** ``` [A2A:status task=email-001 state=accepted] 收到,正在发送邮件。 ``` **Mexico → 佳佳:** ``` [A2A:result task=email-001 state=completed] 邮件已成功发送到 5155280@qq.com。 ``` ## 参考资料 - **协议规范详情**: [references/protocol-spec.md](references/protocol-spec.md) — 完整的消息类型、状态值、Schema 定义 - **辅助脚本**: - `scripts/parse_message.sh` — 解析协议消息为 JSON - `scripts/format_message.sh` — 生成协议消息 --- *版本: 1.0 | 创建: 2026-02-09 | 作者: 佳佳* *灵感来源: Google A2A Protocol (a2aproject/A2A)*
Auf GitHub ansehen