360 Secure SkillHub
360 安全技能中心

Remote Relay

为OpenClaw提供安全远程控制能力,将本地实例注册为中继网络的远程节点,仅通过出站WebSocket通信,无需暴露端口或依赖第三方消息工具。核心功能包括远程聊天、状态查询、安全重启、触发工作流;适合团队/个人需远程访问OpenClaw又不想暴露基础设施的场景。需配置三个必填环境变量,所有通信TLS加密,本地AI执行不受中继影响,远程操作限指定权限。

jason-czar
jason-czar
热度 34.30
最近更新 2026-05-11 17:27:00
分类:开发依赖:代码执行 / 第三方 API应用场景:API 集成 / 任务管理 / DevOps / 自动化脚本

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add remote-relay
Metadata
name
remote-relay
description
Secure outbound-only relay for remote OpenClaw control — no exposed ports, no SSH, no Telegram.
homepage
https://github.com/openclaw/remote-relay
metadata
{"clawdbot":{"emoji":"📡","requires":{"env":["RELAY_URL","NODE_ID","AUTH_TOKEN"]},"primaryEnv":"AUTH_TOKEN","files":["relayClient.ts","config.ts","capabilities.ts","index.ts"]}}

remote-relay

Enables secure remote communication between an OpenClaw instance and a relay server without exposing ports, requiring SSH, or relying on Telegram/Discord.

Description

The remote-relay 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
remote_chat Receive and execute prompts remotely, streaming tokens back in real time
remote_status 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
relay_url ✅ WebSocket URL of the relay server
node_id ✅ Unique identifier for this OpenClaw node
auth_token ✅ Secret token for authenticating with the relay

Message Protocol

Incoming (Relay → Node)

type Action
prompt Execute via OpenClaw prompt runner, stream response tokens back
status Return node health payload
restart Cancel pending tasks, report them, then gracefully restart
workflow Execute a named OpenClaw task/workflow

Outgoing (Node → Relay)

  • Heartbeat (every 15s):
    { "node_id": "...", "uptime": 3600, "active_tasks": 2, "last_error": null, "connection_state": "online" }
    
  • Response stream: { "type": "token", "request_id": "...", "content": "..." } per token
  • Response complete: { "type": "done", "request_id": "..." }
  • Status: Full heartbeat payload with request_id

External Endpoints

Endpoint Protocol Data Sent Data Received
wss://<relay_url>/connect WebSocket (TLS) auth_token, node_id, heartbeat payloads, prompt response tokens Relay commands: prompt, status, restart, workflow

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-terminal-cloud.fly.dev) 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/remote-relay 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
  2. Configure relay_url, node_id, and auth_token
  3. 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.