SkillHub

clawshow-gateway-connect

v1.0.4

Install and activate @bowong/clawshow-gateway in OpenClaw, then migrate existing Gateway channel configuration to ClawShow with rollback safety. Use when a user wants one-step plugin install plus config migration without repeating requirements each run, applying changes via Config RPC config.apply f...

Sourced from ClawHub, Authored by yudi-xiao

Installation

Please help me install the skill `clawshow-gateway-connect` from SkillHub official store. npx skills add yudi-xiao/clawshow-gateway-connect

Clawshow Gateway Connect

Execute a safe, minimal install-and-migrate flow from current OpenClaw settings to ClawShowGateway without breaking unrelated configuration.

Runtime Inputs

  • Required: authToken
  • Optional: relayUrl (default wss://clawshow-api.bowong.cc)
  • If authToken is missing, ask once and stop before editing.

Workflow

  1. Install ws dependency
  2. Run npm i ws in the project root before proceeding.
  3. Confirm installation succeeds before continuing.

  4. Identify current config source

  5. Search only OpenClaw gateway config files (*.json, *.yaml, *.yml) in the active project path.
  6. Do not read .env, secrets files, deployment manifests, or unrelated workspace files.
  7. Prefer editing the project-tracked config over user-global config when both exist.
  8. If multiple candidate files exist, pick the file currently used by the running Gateway process.

  9. Create rollback copy before edits

  10. Save a sibling backup copy of the target config file with timestamp suffix (for example .bak.20260313-1405).
  11. Never delete the backup in the same task.

  12. Check OpenClaw version gate (before plugin install)

  13. Query current OpenClaw version using the supported command only:
  14. openclaw version
  15. Compare against 2026.3.2 using OpenClaw's version ordering.
  16. If current version is earlier than 2026.3.2, upgrade OpenClaw using openclaw update first, then re-run:
  17. openclaw version
  18. Continue only after version check/upgrade is complete.

  19. Install plugin/package

  20. Install using OpenClaw plugin manager only:
  21. openclaw plugins install @bowong/clawshow-gateway
  22. Verify installation:
  23. openclaw plugins list
  24. Confirm package id is exactly @bowong/clawshow-gateway.
  25. If already installed, do not reinstall unless version repair is needed.

  26. Migrate channel config to ClawShow

  27. Ensure package id references @bowong/clawshow-gateway where plugin/package declarations are required.
  28. Ensure channel section exists under channels.clawshow.
  29. Set:
  30. channels.clawshow.enabled: true (required)
  31. channels.clawshow.relayUrl: "wss://clawshow-api.bowong.cc" (optional)
  32. channels.clawshow.authToken: "<real token>" (required)
  33. channels.clawshow.name: "ClawShow Gateway" (required)
  34. channels.clawshow.dmPolicy: "open" (required)
  35. channels.clawshow.allowFrom: ["*"] (required)
  36. Preserve unrelated channels, plugins, and runtime options unchanged.

  37. Remove conflicting legacy routing only when necessary

  38. If older channel config routes the same outbound traffic target, disable only the overlapping route.
  39. Do not remove entire legacy channel blocks unless user explicitly asks.

  40. Validate config shape

  41. Confirm JSON/YAML syntax after edit.
  42. Confirm required keys exist for ClawShow (authToken at minimum).
  43. Confirm package/plugin id and channel id are consistent (clawshow).
  44. Confirm enabled, relayUrl, authToken, name, dmPolicy, and allowFrom are directly under channels.clawshow (no default layer).

  45. Apply config (Config RPC only)

  46. Follow Config RPC (programmatic updates) exactly, using config.apply (full replace).
  47. Do not use direct file-edit-only activation, config.patch, or manual restart as the primary path.
  48. Execute:
  49. openclaw gateway call config.get --params '{}'
  50. Capture payload.hash as baseHash.
  51. Build the full post-migration config as one JSON5 string in raw.
  52. openclaw gateway call config.apply --params '{ "raw": "<full-json5-config>", "baseHash": "<hash>", "note": "migrate to @bowong/clawshow-gateway" }'
  53. Respect control-plane rate limits for write RPCs (config.apply, config.patch, update.run): 3 requests per 60 seconds per deviceId+clientIp.
  54. If apply fails due to stale hash/conflict, call config.get again, rebase on newest config, and retry once.

  55. Verify runtime behavior

  56. Do not force a manual restart here; config.apply already validates, writes, and restarts in one step.
  57. Run status/probe command if available.
  58. Do not send outbound test messages by default.
  59. Only send an external test message if the user explicitly asks for network verification.

  60. Report outcome

  61. Include the backup file path.
  62. Include verification command results.
  63. If verification is blocked, state the blocker and provide the exact next command.

Canonical Target Snippet

Use this structure when writing or repairing JSON config:

{
  "channels": {
    "clawshow": {
      "enabled": true,
      "relayUrl": "wss://clawshow-api.bowong.cc",
      "authToken": "YOUR_CLAWSHOW_AUTH_TOKEN",
      "name": "ClawShow Gateway",
      "dmPolicy": "open",
      "allowFrom": [
        "*"
      ]
    }
  }
}

Guardrails

  • Keep edits minimal and reversible.
  • Never invent secrets; leave placeholders for missing keys.
  • Never exfiltrate secrets from local files.
  • Never rewrite formatting style of the whole file.
  • Never remove unrelated keys to "clean up".