PrivaClaw
Enables secure remote communication between an OpenClaw instance and a relay server without exposing ports, requiring SSH, or relying on Telegram/Discord.
Description
The PrivaClaw skill registers your local OpenClaw instance as a managed remote node on a relay network. Once connected, the node can receive prompts, execute workflows, report health, and be restarted — all through a secure, outbound-only WebSocket channel.
This skill replaces external messaging-based control layers such as Telegram or Discord with a native, secure relay channel for OpenClaw interaction.
Node Lifecycle
When the skill is enabled, the OpenClaw instance registers as a remote-capable node with the relay and maintains an active session.
The node can be in one of three states:
| State | Description |
|---|
| Online | Authenticated and accepting relay commands |
| Reconnecting |
Connection lost; auto-reconnecting with exponential backoff |
|
Offline | Skill disabled or relay unreachable after max retries |
Relay commands are only accepted while the node is authenticated and online. Commands received during reconnection are discarded by the relay.
Capabilities
| Capability | Description |
|---|
| INLINECODE0 | Receive and execute prompts remotely, streaming tokens back in real time |
| INLINECODE1 |
Report node health: uptime, active tasks, last error, connection state |
|
remote_restart | Safely restart the OpenClaw process without manual intervention. Pending executions are cancelled and reported before restart occurs. |
|
remote_trigger | Execute OpenClaw workflows/tasks triggered remotely |
Remote commands are limited to declared capabilities and cannot execute arbitrary system-level operations.
Configuration
| Key | Required | Description |
|---|
| INLINECODE4 | ✅ | WebSocket URL of the relay server |
| INLINECODE5 |
✅ | Unique identifier for this OpenClaw node |
|
auth_token | ✅ | Secret token for authenticating with the relay |
Message Protocol
Incoming (Relay → Node)
| INLINECODE7 | Action |
|---|
| INLINECODE8 | Execute via OpenClaw prompt runner, stream response tokens back |
| INLINECODE9 |
Return node health payload |
|
restart | Cancel pending tasks, report them, then gracefully restart |
|
workflow | Execute a named OpenClaw task/workflow |
Outgoing (Node → Relay)
{ "node_id": "...", "uptime": 3600, "active_tasks": 2, "last_error": null, "connection_state": "online" }
- - Response stream:
{ "type": "token", "request_id": "...", "content": "..." } per token - Response complete: INLINECODE13
- Status: Full heartbeat payload with INLINECODE14
External Endpoints
| Endpoint | Protocol | Data Sent | Data Received |
|---|
| INLINECODE15 | WebSocket (TLS) | INLINECODE16 , node_id, heartbeat payloads, prompt response tokens | Relay commands: prompt, status, restart, INLINECODE21 |
No other external endpoints are contacted. All network activity is limited to the configured relay_url.
Security & Privacy
What leaves your machine
- -
auth_token — sent once during the WebSocket handshake to authenticate the node node_id — sent with every heartbeat and response to identify the node- Heartbeat data — uptime (seconds), active task count, last error string, connection state
- Prompt response tokens — streamed back to the relay in response to
prompt commands - Workflow completion status — success/error for triggered workflows
What stays on your machine
- - All local AI model execution and inference
- Local file system contents — never read or transmitted
- Environment variables (other than the three declared above)
- System information, IP addresses, or hardware details — never collected
Network posture
- - Outbound only — the skill never opens a listening port or accepts inbound connections
- TLS encrypted — all WebSocket connections use
wss:// (TLS 1.2+) - No data persistence — the relay server does not store prompt content or response tokens; it forwards in real time
Trust Statement
By installing this skill, you are connecting your OpenClaw instance to an external relay server at the configured relay_url. Prompt content and response tokens are transmitted through this relay in real time. Only install this skill if you trust the operator of the relay server. The default relay (wss://relay.privaclaw.com) is operated by the project maintainers.
Operational Guarantees
- - Local AI execution continues even if the relay disconnects
- Relay does not expose the node to inbound traffic
- Remote actions are capability-scoped — only declared capabilities can be invoked
- Pending tasks are reported before any restart occurs — no silent failures
Installation
Easiest way — use the visual setup wizard:
👉 Open your dashboard and go to /skill/privaclaw to configure everything through the UI — generate a node ID, test your connection, and export your config in one place.
Or configure manually:
- 1. Add the skill to your OpenClaw instance
- Configure
relay_url, node_id, and INLINECODE31 - Start OpenClaw — the relay connection is established automatically
Intended Use
This skill replaces external messaging-based control layers such as Telegram or Discord with a native, secure relay channel for OpenClaw interaction. It is designed for teams and individuals who need reliable remote access to their OpenClaw nodes without exposing infrastructure.
PrivaClaw
实现OpenClaw实例与中继服务器之间的安全远程通信,无需暴露端口、无需SSH、不依赖Telegram或Discord。
描述
PrivaClaw技能将您的本地OpenClaw实例注册为中继网络上的托管远程节点。连接后,该节点可以接收提示、执行工作流、报告运行状态并重启——所有操作均通过仅出站的安全WebSocket通道完成。
该技能用原生安全中继通道取代了基于外部消息的Telegram或Discord控制层,专为OpenClaw交互设计。
节点生命周期
启用该技能后,OpenClaw实例将作为支持远程功能的节点注册到中继,并保持活动会话。
节点可处于以下三种状态之一:
连接丢失;使用指数退避策略自动重连 |
|
离线 | 技能已禁用或达到最大重试次数后中继不可达 |
仅当节点已认证且在线时才接受中继命令。重连期间收到的命令将被中继丢弃。
能力
| 能力 | 描述 |
|---|
| remotechat | 远程接收并执行提示,实时流式返回令牌 |
| remotestatus |
报告节点运行状态:运行时间、活动任务数、最后错误、连接状态 |
| remote_restart | 无需人工干预安全重启OpenClaw进程。重启前会取消并报告待执行任务。 |
| remote_trigger | 远程触发执行OpenClaw工作流/任务 |
远程命令仅限于已声明的能力,无法执行任意系统级操作。
配置
| 键 | 必需 | 描述 |
|---|
| relayurl | ✅ | 中继服务器的WebSocket URL |
| nodeid |
✅ | 此OpenClaw节点的唯一标识符 |
| auth_token | ✅ | 用于向中继认证的密钥令牌 |
消息协议
入站(中继 → 节点)
| type | 操作 |
|---|
| prompt | 通过OpenClaw提示运行器执行,流式返回响应令牌 |
| status |
返回节点运行状态负载 |
| restart | 取消待处理任务,报告任务状态,然后优雅重启 |
| workflow | 执行指定的OpenClaw任务/工作流 |
出站(节点 → 中继)
json
{ node
id: ..., uptime: 3600, activetasks: 2, last
error: null, connectionstate: online }
- - 响应流:每个令牌发送 { type: token, requestid: ..., content: ... }
- 响应完成:{ type: done, requestid: ... }
- 状态:包含 request_id 的完整心跳负载
外部端点
| 端点 | 协议 | 发送数据 | 接收数据 |
|---|
| wss://<relayurl>/connect | WebSocket(TLS) | authtoken、node_id、心跳负载、提示响应令牌 | 中继命令:prompt、status、restart、workflow |
不连接其他外部端点。所有网络活动仅限于配置的 relay_url。
安全与隐私
离开您机器的数据
- - authtoken — 在WebSocket握手期间发送一次,用于认证节点
- nodeid — 随每次心跳和响应发送,用于标识节点
- 心跳数据 — 运行时间(秒)、活动任务数、最后错误字符串、连接状态
- 提示响应令牌 — 响应 prompt 命令时流式返回给中继
- 工作流完成状态 — 触发的工作流成功/错误信息
保留在您机器上的数据
- - 所有本地AI模型执行和推理
- 本地文件系统内容——从不读取或传输
- 环境变量(上述三个声明的变量除外)
- 系统信息、IP地址或硬件详情——从不收集
网络态势
- - 仅出站 — 该技能从不打开监听端口或接受入站连接
- TLS加密 — 所有WebSocket连接使用 wss://(TLS 1.2+)
- 无数据持久化 — 中继服务器不存储提示内容或响应令牌;实时转发
信任声明
安装此技能即表示您将OpenClaw实例连接到配置的 relay_url 上的外部中继服务器。 提示内容和响应令牌通过此中继实时传输。仅当您信任中继服务器的运营者时才安装此技能。默认中继(wss://relay.privaclaw.com)由项目维护者运营。
运行保障
- - 即使中继断开,本地AI执行仍继续
- 中继不会将节点暴露给入站流量
- 远程操作受能力范围限制 — 只能调用已声明的能力
- 重启前会报告待处理任务 — 无静默失败
安装
最简单的方式——使用可视化设置向导:
👉 打开您的仪表板,访问 /skill/privaclaw,通过UI配置所有内容——生成节点ID、测试连接、一键导出配置。
或手动配置:
- 1. 将技能添加到您的OpenClaw实例
- 配置 relayurl、nodeid 和 auth_token
- 启动OpenClaw——中继连接将自动建立
预期用途
该技能用原生安全中继通道取代了基于外部消息的Telegram或Discord控制层,专为OpenClaw交互设计。适用于需要可靠远程访问其OpenClaw节点且无需暴露基础设施的团队和个人。