返回顶部
c

communication-protocol通信协议

Defines how the OpenClaw agent should communicate with Tidy during a build session, ensuring clear, predictable, and build-focused interactions.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.0
安全检测
已通过
180
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

communication-protocol

目标

  • - 保持构建聊天清晰且可预测。
  • 避免在用户可见的消息中使用技术/内部编排语言。
  • 使用结构化的步骤事件驱动UI,而非自由形式的阶段闲聊。
  • 尊重低冗余偏好:步骤转换主要是UI事件,而非聊天刷屏。

角色

  • - 前端:根据后端事件渲染聊天和时间线。
  • 后端(Tidy):启动构建会话,运行OpenClaw轮次,存储事件。
  • OpenClaw代理:返回结构化事件和简洁的用户可见更新。

会话输入(从后端到OpenClaw)

传递给每一轮的环境变量:

  • - TIDYBUILDID
  • TIDYBUILDPROMPT
  • TIDYSESSIONID

相同的TIDYSESSIONID会在后续轮次(用户回答后)中重复使用。

Tidy传输包装器(必需)

来自Tidy的消息使用机器头部进行包装:

text
[FROM:TIDY]
[BUILD_ID:]
[SESSION_ID:]
[MESSAGETYPE:BUILDREQUEST|USERANSWER|USERANSWERS]
[QUESTIONID:] # 仅用于USERANSWER
[QUESTIONIDS:] # 仅用于USERANSWERS

系统说明:以上头部是来自Tidy的传输元数据。不要在面向用户的回复中重复它们。
<消息正文>

代理处理规则:

  • - 将头部解析为元数据,而非用户文本。
  • 切勿在回复中回显/重复头部行。
  • 切勿向用户提及包装器格式。
  • BUILDREQUEST:为请求正文启动/继续构建对话。
  • USERANSWER / USER_ANSWERS:从澄清回复继续。

事件契约(规范)

所有事件应表示为:

json
{
type: event.type,
payload: {}
}

对于代理发起的事件,payload.source必须为agent。

支持的事件类型

1) assistant.message.created

仅用于简短、面向用户的聊天文本。

负载:

json
{
text: string,
source: agent
}

规则:

  • - 保持简洁。
  • 使用通俗语言。
  • 切勿叙述内部机制(生成工作者、设计流水线等)。
  • 不要为每个步骤转换都发送消息。

2) progress.step.started

启动面向用户的步骤指示器。

负载:

json
{
stepid: buildrecord|parse|research|design|assemble|validate|finalize,
title: 简短友好的标题,
description: 一句用户友好的描述,
index: 1,
total: 7,
source: agent
}

3) progress.step.completed

标记前一步骤已完成。

负载:

json
{
stepid: buildrecord|parse|research|design|assemble|validate|finalize,
source: agent
}

4) status.changed

仅用于主要生命周期转换。

负载:

json
{
status: running|complete|failed,
source: agent
}

完成/失败时可选的:

json
{
status: complete,
output: 最终结果摘要,
source: agent
}

5) question.requested

当被阻塞且需要一个答案时使用。

负载:

json
{
question_id: uuid-or-stable-id,
prompt: 单个清晰的问题,
input: single_choice|text,
required: true,
options: [
{ id: option_a, label: 选项A, description: 可选 },
{ id: option_b, label: 选项B, description: 可选 }
],
source: agent
}

6) questions.requested

当被阻塞且需要同时回答多个问题时使用。

负载:

json
{
questionsetid: qs_123,
prompt: 在继续之前,我需要一些细节。,
required_all: true,
questions: [
{
question_id: q1,
prompt: 预算范围?,
input: single_choice,
options: [{ id: low, label: 低 }, { id: mid, label: 中 }]
},
{
question_id: q2,
prompt: 首选区域?,
input: text
}
],
source: agent
}

7) session.completed / session.failed

终止事件。

负载:

json
{
source: agent
}

session.failed可能包含:

json
{
reason: 简短失败原因,
source: agent
}

步骤转换规则(必需)

在步骤之间移动时:

  1. 1. 为前一步骤发送progress.step.completed。
  2. 为下一步骤发送progress.step.started。
  3. 保持title/description用户友好。
  4. 将其视为机器/UI事件。不要为同一转换重复发送assistant.message.created。

对于新构建,不要发送phase.changed。

消息频率策略(必需)

  • - 步骤转换:仅progress.step.*事件(除非确实有用,否则不发送额外聊天消息)。
  • 等待期间(>45秒无用户可见变化):发送一条简短安抚消息。
  • 问题:始终发送question.requested或questions.requested,并保持提示简洁。
  • 完成/失败:发送一条简洁摘要消息,然后发送终止事件。

用户友好步骤字典(必需)

使用以下精确的step_id集合和语气:

stepidtitledescription
buildrecord正在启动您的构建我正在设置您的构建会话。
parse
正在理解您的请求 | 我正在阅读您的请求并规划方案。 |
| research | 正在收集所需内容 | 我正在为您的构建收集工具和参考资料。 |
| design | 正在规划您的代理 | 我正在为您的代理创建构建计划。 |
| assemble | 正在构建您的代理 | 我正在组装各个部分。 |
| validate | 正在测试一切 | 我正在运行检查以确保一切正常。 |
| finalize | 正在收尾 | 我正在完成并准备您的结果。 |

语言护栏(必需)

切勿发送类似以下的面向用户文本:

  • - 现在我将生成所有研究工作线程并并行启动配置文件设置。
  • 研究完成。正在设计您的代理...
  • 现在正在设计蓝图。

应使用:

  • - 正在收集所需内容
  • 正在规划您的代理
  • 正在构建您的代理

预期流程

  1. 1. 后端创建构建 + session.started。
  2. 代理启动:
- 发送status.changed => running - 发送progress.step.started (build_record)
  1. 3. 对于每个流水线转换:
- 发送progress.step.completed(前一步) - 发送progress.step.started(下一步)
  1. 4. 如果被阻塞:
- 发送question.requested或questions.requested - 等待用户回答
  1. 5. 回答后继续步骤。
  2. 结束:
- 发送status.changed (complete或failed) - 发送session.completed或session.failed

Tidy会话护栏

  • - 当一个具体问题足够时,不要询问宽泛/开放式的后续问题。
  • 保持问题聚焦于实现(仅在被阻塞时)。
  • 保持回复简洁且可操作。

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 communication-protocol-1776072372 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 communication-protocol-1776072372 技能

通过命令行安装

skillhub install communication-protocol-1776072372

下载

⬇ 下载 communication-protocol v1.0.0(免费)

文件大小: 3.31 KB | 发布时间: 2026-4-15 12:16

v1.0.0 最新 2026-4-15 12:16
Initial release of the communication-protocol skill:

- Establishes a clear protocol for OpenClaw agent communication during Tidy build sessions.
- Defines structured event types for chat, step transitions, status, questions, and terminal events.
- Enforces concise, user-friendly messaging with strict language and verbosity guardrails.
- Introduces event-based stepper flow with a required step dictionary for consistent UI.
- Outlines message format requirements and handling rules for Tidy transport metadata.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部