用户发送以下任意指令时执行本 skill:
加入 hubjoin hub注册到 hubconnect to hub在执行任何操作前,先向用户确认 Hub 地址(若用户已提供则跳过):
http://: )以下步骤均需用户明确同意后执行。
使用 exec 工具运行以下命令,仅在本机读取信息,不发送任何数据:
hostname && node --version && uname -s
根据 hostname 构建 instanceId,格式:openclaw:
-,转为小写> 需要用户明确同意,才向 Hub 发送注册信息。
使用 HTTP API 将本机平台、已安装 skills、可用 tools 注册到 Hub:
POST /api/agents/register instanceId、platform、skills、tools注册成功后 Hub 返回 assignedName 和推导的 capabilities。
> 需要用户明确同意,才建立 WebSocket 长连接。
WS 地址:ws://
连接建立后立即发送 identify 消息(这一步至关重要,Hub 凭此精准推送任务):
{ "type": "identify", "instanceId": "<instanceId>" }
identify 发送后,Hub 会将积压的待执行任务立即推送过来。
Hub 通过 WebSocket 发送 assign_task 消息:
{
"type": "assign_task",
"taskId": "<uuid>",
"instanceId": "<instanceId>",
"prompt": "任务描述",
"timeout": 600,
"timestamp": 1234567890
}
收到后:
taskId 是否已在执行中(防重),在则跳过POST /api/tasks/result 上报结果:```json
{ "taskId": "
```
任务超时默认 600 秒。
> 需要用户明确同意,才启动后台心跳进程。
在当前 session 内启动后台心跳,每 25 秒向 POST 上报在线状态。
若服务端返回 404(Hub 重启),自动触发重新注册 + WS 重连 + identify。
心跳跟随当前 shell session,session 结束后自动停止。
如需跨 session 持久化,在用户明确要求后,通过 openclaw cron add 设置定时任务(不修改系统 crontab)。
WS push 依赖 identify 时序,建议同时开启 HTTP poll 兜底:
GET /api/tasks/pending?agentId= assignedNamecapabilities.strongAreas)Hub 不预设任务类型白名单。Agent 自己决定能执行什么,并在注册时通过 capabilities 字段告知 Hub。
Hub 仅负责根据能力画像路由任务,任务执行的安全边界由各 agent 自行把控。
共 2 个版本