Community编程与开发github.com

节点连接诊断

诊断OpenClaw Control UI浏览器及原生Android、iOS或macOS节点连接在路由、认证、配对、二维码/设置码及重连状态中的故障。

节点连接诊断 是什么?

该技能提供了一套系统化的诊断流程,用于解决OpenClaw网络中单个客户端与特定Gateway之间的连接问题。它从锁定目标环境开始,然后根据客户端类型(Control UI浏览器或原生移动端/节点)进行分类,并通过Gateway日志观察失败尝试以识别具体故障阶段。技能详细说明了如何验证路由(包括Tailscale配置)、处理浏览器端的认证和配对流程,以及安全地管理原生客户端的二维码/设置码。其最终目标是确保客户端能够成功连接并维持身份验证,同时避免误判中间状态。该技能适用于所有支持OpenClaw的平台,包括macOS、Windows、Linux以及移动设备。

兼容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/clawdbot/clawdbot/tree/main/skills/node-connect

Installed? Explore more 编程与开发 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

节点连接诊断 是做什么的?

目标:修复一个特定客户端与一个特定Gateway之间的连接,并验证该客户端的新建连接。

1. 锁定目标

在进行任何更改之前,记录目标环境/配置文件、OpenClaw二进制文件、配置/状态根目录、Gateway URL/端口和服务。

  • 对每个配置、日志、服务、设备和节点命令,使用指定的部署包装/配置文件。
  • 切勿偏离到裸露的 openclaw、验证环境或类似命名的部署。
  • 如果全局可执行文件已过时,则通过其所有者调用目标。
  • 验证状态、配置、日志和进程标识描述的是同一个Gateway。

在更改配对或认证之前,先识别目标Gateway。

2. 对客户端进行分类

在选择命令之前,根据请求和Gateway日志进行分类:

  • Control UI浏览器: 用户提到浏览器、仪表板、Control UI或webchat;日志显示 client=openclaw-control-ui 或 mode=webchat。
  • 原生移动端/节点: 官方应用显示连接、扫描二维码或设置码;日志/请求元数据显示原生客户端或 role=node。

手机可以是任一客户端。不要对手机浏览器使用 openclaw qr 或 openclaw nodes status;这些属于原生移动端/节点配对。

3. 观察失败尝试

通过已锁定的目标运行以下命令:

openclaw gateway status --deep
openclaw logs --follow --json
openclaw devices list
openclaw config get gateway.mode
openclaw config get gateway.bind
openclaw config get gateway.remote.url
openclaw config get gateway.auth.mode
openclaw config get gateway.auth.allowTailscale
openclaw config get gateway.tailscale.mode

让客户端在日志实时输出时重试一次。关联其客户端ID、模式、平台、地址、认证结果、设备ID、用户和关闭代码。忽略其他已配对的设备。

解释第一个失败的转换:

  • 没有匹配的Gateway尝试:路由、DNS、TLS、来源或代理问题。
  • token_missing、password_missing、不匹配或Tailscale身份失败:认证在配对之前失败,因此空的待处理列表是预期的。
  • pairing required:路由和认证成功;批准准确的待处理请求。
  • authenticated user connected / webchat connected:匹配确切的客户端;如果后跟 1006,则保留认证/配对并检查生命周期、传输、代理或重连。
  • 没有应用层连接日志的 1006 不能证明认证/配对;检查之前的握手转换。

4. 验证路由

选择一种拓扑结构:同一台机器、局域网、Tailnet或公共反向代理。不要混合使用。

  • 浏览器Control UI需要HTTPS或localhost用于浏览器设备身份。远程明文HTTP Tailnet/局域网URL不是有效的替代品。
  • gateway.tailscale.mode=off 表示OpenClaw未管理Serve/Funnel。这并不能证明Tailscale或外部管理的Serve路由不存在。
  • 当涉及Tailscale时,检查实时状态,而不是从OpenClaw配置推断:
tailscale status --json
tailscale serve status --json

将客户端的URL与到达已锁定Gateway的监听器/代理路由匹配。

5A. Control UI浏览器通道

在查找配对请求之前,先恢复浏览器认证:

  • 对于令牌/密码认证,在Control UI设置中输入凭证。切勿将永久机密放在聊天、日志或URL中。
  • 首选在Gateway主机上使用 openclaw dashboard 进行一次性签名交接。仅当操作员能够检索该主机的剪贴板时才使用 --no-open,并将主机浏览器/剪贴板置于代理工具之外。切勿捕获 dashboard --json:它可能暴露交接信息和共享凭证。切勿转发、重写或向远程手机发送环回交接URL。
  • 对于Tailscale Serve,验证实时路由和转发身份。仅针对预期的信任边界启用 gateway.auth.allowTailscale。经过验证的Tailscale Control UI认证与浏览器设备身份可以跳过配对。

认证成功后:

  • 重试;切勿从预认证尝试推断配对。令牌/密码认证可能揭示 pairing required;经过验证的Tailscale身份可以跳过它。
  • 如果日志显示 pairing required,则重新列出设备并批准准确的请求ID。
  • 成功的已验证Tailscale连接可能不会创建待处理或已配对设备行,这是正确的。
  • 在重复出现 1006 后,保留认证/配对并检查重连证据。

5B. 原生移动端/节点通道

通过已锁定的目标检查原生路由,同时不暴露设置凭证:

openclaw qr --json | jq '{gatewayUrl, gatewayUrls, auth, access, accessDowngraded, urlSource}'

对于控制远程Gateway的CLI,在 --json 之前添加 --remote;它将选择 gateway.remote.url 和远程凭证。如果不可用脱敏过滤器,则不要在代理可见的输出中运行原始QR JSON。

验证 gatewayUrl 和 urlSource。设置码等同于密码:让操作员从 Control UI → 设备 → 配对设备 复制它,或在代理工具外部的终端中运行 openclaw qr --setup-code-only 并直接粘贴到官方应用中。切勿通过代理/聊天/工具输出中继它。在URL/认证修复或过期后生成新的码。

如果应用报告 pairing required:

openclaw devices list
openclaw devices approve --latest   # 仅预览;退出时不批准
openclaw devices approve <requestId>
openclaw nodes status

--latest 仅预览当前请求;切勿将其视为批准。在确切的ID命令之前立即重新列出,因为重试可能取代先前的请求。切勿按位置、时间或相似性批准。

6. 关联并完成

在批准之前,匹配可用的请求、设备/公钥、客户端、模式/角色、平台、地址、用户和重试时间事实。

仅在最终更改后的新尝试证明所有适用检查后,才能声明成功:

  • 确切的客户端到达已锁定的Gateway;
  • 预期的认证成功;
  • 浏览器完成初始请求,或原生节点出现在 openclaw nodes status 中;
  • 批准使用了确切的请求ID;以及
  • 没有立即发生认证、配对或重连失败。

二维码/设置码、启动的浏览器、空的待处理列表、批准、配对设备计数或Tailscale ping仅证明了一个转换。

报告诊断结果、选择的路由/认证通道、确切的客户端证据以及任何剩余的失败转换。

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

1password

Set up and use 1Password CLI for sign-in, desktop integration, and reading or injecting secrets.

acp-router

Route plain-language requests for Claude Code, Cursor, Copilot, OpenClaw ACP, OpenCode, Gemini CLI, Qwen, Kiro, Kimi, iFlow, Factory Droid, Kilocode, or explicit ACP harness work into either OpenClaw ACP runtime sessions or direct acpx-driven sessions ("telephone game" flow). For coding-agent thread requests, read this skill first, then use only `sessions_spawn` for thread creation. Codex chat binding defaults to the native Codex app-server plugin unless ACP is explicit or background spawn needs ACP.

add-model-provider

Add and live-prove a model provider with non-interactive config one-liners, without exposing credentials.

agent-transcript

Requested GitHub PR/issue agent transcripts: redact, trim, preview, and insert safely.

apple-notes

Create, view, edit, delete, search, move, or export Apple Notes via the memo CLI on macOS.

apple-reminders

List, add, edit, complete, or delete Apple Reminders and reminder lists via remindctl.

auto-qa

Run OpenClaw-wide autonomous QA and live/stress campaigns across independent subsystem lanes, with verified fixes and a resumable evidence report.

autoreview

Structured code review through the shared OpenClaw agent-skills installation.

bear-notes

Create, search, and manage Bear notes via grizzly CLI.

blacksmith-testbox

Run Blacksmith Testbox for CI-parity checks, secrets, hosted services, migrations, or builds local cannot reproduce.

block-kit

Use proactively for structured or interactive Slack replies, and when asked to author or validate native Slack Block Kit JSON.

blogwatcher

Monitor blogs and RSS/Atom feeds for updates using the blogwatcher CLI.

blucli

BluOS CLI (blu) for discovery, playback, grouping, and volume.

bluebubbles

Send and manage iMessages via BlueBubbles, including attachments, tapbacks, edits, replies, and groups.

browser-automation

Use when controlling web pages with the OpenClaw browser tool, especially multi-step flows, login checks, tab management, or recovery from stale refs/timeouts.

camsnap

Capture frames or clips from RTSP/ONVIF cameras and local webcams, including USB pan/tilt/zoom control.

canvas

Present HTML on connected OpenClaw node canvases, navigate/eval/snapshot, and debug canvas host URLs.

channel-message-flows

Use when running QA Lab channel message flow evidence.

clawdtributor

Clawtributor PRs here, last week or another window: discover conversation refs, recheck GitHub, rank by impact.

clawhub

Search ClawHub for plugins by default, or skills when explicitly requested; install, verify, update, uninstall, publish, or sync skills.

相关技能