> For AI agents: the complete documentation index is available at https://docs.reelway.ai/llms.txt, the full documentation bundle is available at https://docs.reelway.ai/llms-full.txt.

# Reelway 协议

平台实时通道挂载于 `wss://rcn.reelway.ai/socket`,按握手头 `client-type` 分流为两条同构通道;线协议统一为 `{type, data: base64(JSON)}`。端点级细节见 [API 参考 → 快速开始](https://docs.reelway.ai/api-reference/getting-started.md#websocket-%E6%8F%A1%E6%89%8B)。

## 通道与鉴权

| 通道     | client-type | 凭证                 | 附加                                      |                                      |
| ------ | ----------- | ------------------ | --------------------------------------- | ------------------------------------ |
| artist | (缺省)        | `api-key` 或 JWT    | 查询串 `?appId=`、可选 \`forceWorkerId=fast   | relaxed`、`socketEventSubscriptions\` |
| worker | `worker`    | worker 用途的 API Key | 头 `app-id`(节点 UUID,必填)、可选 `worker-type` |                                      |

关闭码:`4021` 认证失败;`4015` 同 id 接管。心跳:服务端 25 s ping、60 s pong 窗口;artist 单帧上限 1 MiB、worker 8 MiB。

## artist 通道帧速查

| 方向 | type                                                   | 语义                                                    |
| -- | ------------------------------------------------------ | ----------------------------------------------------- |
| ↑  | `jobRequest`                                           | 提交项目(`keyFrames[0]` 携带模型与提示词参数)                       |
| ↑  | `jobError`                                             | 仅 artistCanceled 语义(取消);回执 `artistCancelConfirmation` |
| ↑  | `changeNetwork`                                        | fast ⇄ relaxed                                        |
| ↑  | `setSocketEventSubscriptions`                          | 事件订阅快照                                                |
| ↓  | `authenticated`                                        | 首帧:余额、网络、activeProjects、unclaimedCompletedProjects    |
| ↓  | `swarmModels`                                          | `{modelId: workerCount}`                              |
| ↓  | `projectQueue` / `jobState` / `jobProgress` / `jobETA` | 排队、状态、进度、ETA                                          |
| ↓  | `jobResult` / `jobError`                               | 产物(48 h 签名 URL)与失败                                    |
| ↓  | `artistCancelConfirmation`                             | 取消回执                                                  |

## worker 通道帧速查

| 方向 | type                                                  | 语义                                                              |
| -- | ----------------------------------------------------- | --------------------------------------------------------------- |
| ↑  | `workerInfo`                                          | 全量能力快照(workerModels\[]、loadedModelID、hardwareRating)            |
| ↑  | `workerModelsChange`                                  | 模型集增量                                                           |
| ↑  | `readyToAcceptJobs`                                   | 就绪门控(含断线清理标记 postDisconnectCleanupComplete)                     |
| ↑  | `jobState` / `jobProgress` / `jobResult` / `jobError` | 执行遥测与结果                                                         |
| ↓  | `authenticated`                                       | 空负载确认                                                           |
| ↓  | `jobRequest`                                          | 派单(jobID、imageId、workflowId、clientParams、previews、outputFormat) |
| ↓  | `jobCancel`                                           | 取消在途任务                                                          |

完整帧负载字段见 [API 参考](https://docs.reelway.ai/api-reference/getting-started.md)与节点侧[节点协议](https://docs.reelway.ai/run-a-worker/worker-protocol.md)。
