{
  "schemaVersion": "1.0",
  "item": {
    "slug": "create-new-openclaw-in-gcp",
    "name": "Create New Openclaw Instance on GCP VM",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/Divide-By-0/create-new-openclaw-in-gcp",
    "canonicalUrl": "https://clawhub.ai/Divide-By-0/create-new-openclaw-in-gcp",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/create-new-openclaw-in-gcp",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=create-new-openclaw-in-gcp",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/create-new-openclaw-in-gcp"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/create-new-openclaw-in-gcp",
    "agentPageUrl": "https://openagent3.xyz/skills/create-new-openclaw-in-gcp/agent",
    "manifestUrl": "https://openagent3.xyz/skills/create-new-openclaw-in-gcp/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/create-new-openclaw-in-gcp/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "OpenClaw Cloud Setup Skill",
        "body": "Deploy OpenClaw to GCP with Tailscale and Brave Search."
      },
      {
        "title": "Required Environment Variables",
        "body": "export OPENCLAW_PROJECT_ID=\"your-gcp-project\"\nexport OPENCLAW_USERNAME=\"your-ssh-username\"\nexport ANTHROPIC_TOKEN=\"sk-ant-oat01-...\"   # Keep secret\nexport BRAVE_API_KEY=\"...\"                   # Keep secret"
      },
      {
        "title": "Quick Start",
        "body": "chmod +x openclaw-quick-setup.sh\n./openclaw-quick-setup.sh"
      },
      {
        "title": "Manual Setup (Copy-Paste)",
        "body": "# Set variables first (see above)\nZONE=\"us-central1-a\"\nVM=\"openclaw\"\n\n# Create VM\ngcloud compute instances create \"$VM\" \\\n  --project=\"$OPENCLAW_PROJECT_ID\" --zone=\"$ZONE\" \\\n  --machine-type=e2-medium \\\n  --image-family=debian-12 --image-project=debian-cloud \\\n  --boot-disk-size=10GB \\\n  --metadata=ssh-keys=\"${OPENCLAW_USERNAME}:$(cat ~/.ssh/id_ed25519.pub)\"\n\nIP=$(gcloud compute instances describe \"$VM\" \\\n  --project=\"$OPENCLAW_PROJECT_ID\" --zone=\"$ZONE\" \\\n  --format='get(networkInterfaces[0].accessConfigs[0].natIP)')\n\n# Wait for SSH, then run setup\nsleep 30\nssh -o StrictHostKeyChecking=no \"${OPENCLAW_USERNAME}@${IP}\" \"\nset -euo pipefail\nsudo apt-get update && sudo apt-get install -y git curl ufw jq\ncurl -fsSL https://tailscale.com/install.sh | sh\n\"\n\n# Manual: authorize Tailscale\nssh \"${OPENCLAW_USERNAME}@${IP}\" \"sudo tailscale up\"\n\n# Continue setup\nssh \"${OPENCLAW_USERNAME}@${IP}\" \"\nset -euo pipefail\nsudo ufw allow 22/tcp && sudo ufw allow in on tailscale0 && echo y | sudo ufw enable\necho 'nameserver 8.8.8.8' | sudo tee -a /etc/resolv.conf\ncurl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash\nsource ~/.nvm/nvm.sh && nvm install 22\nsource ~/.nvm/nvm.sh && npm install -g openclaw@latest\n\"\n\n# Configure OpenClaw (credentials via stdin)\nssh \"${OPENCLAW_USERNAME}@${IP}\" '\nsource ~/.nvm/nvm.sh\nopenclaw onboard --non-interactive --accept-risk \\\n  --auth-choice token --token-provider anthropic \\\n  --token \"$(cat)\" --gateway-bind loopback --install-daemon\n' <<< \"$ANTHROPIC_TOKEN\"\n\n# Add Brave key + enable Tailscale auth\nssh \"${OPENCLAW_USERNAME}@${IP}\" \"\nset -euo pipefail\nmkdir -p ~/.config/systemd/user/openclaw-gateway.service.d\ncat > ~/.config/systemd/user/openclaw-gateway.service.d/brave.conf << CONF\n[Service]\nEnvironment=\\\"BRAVE_API_KEY=\\$(cat)\\\"\nCONF\nchmod 600 ~/.config/systemd/user/openclaw-gateway.service.d/brave.conf\nsystemctl --user daemon-reload\nsource ~/.nvm/nvm.sh\njq '.gateway.auth.allowTailscale = true' ~/.openclaw/openclaw.json > /tmp/oc.json\nmv /tmp/oc.json ~/.openclaw/openclaw.json\nchmod 600 ~/.openclaw/openclaw.json\nopenclaw gateway restart\nsudo tailscale serve --bg 18789\n\" <<< \"$BRAVE_API_KEY\"\n\n# Get dashboard URL\nssh \"${OPENCLAW_USERNAME}@${IP}\" \"tailscale serve status\"\n\n# After first browser access, approve device\nssh \"${OPENCLAW_USERNAME}@${IP}\" 'source ~/.nvm/nvm.sh && openclaw devices list'\n# Then: openclaw devices approve <REQUEST_ID>"
      },
      {
        "title": "Key Learnings",
        "body": "IssueSolutione2-micro OOMUse e2-medium (4GB minimum)nodesource failuresUse nvm for Node.js 22DNS broken after TailscaleAdd 8.8.8.8 to /etc/resolv.confBrave key in config rejectedUse systemd env var drop-inDashboard \"pairing required\"Run openclaw devices approve <id>"
      },
      {
        "title": "Security Notes",
        "body": "Credentials passed via stdin (<<<), not command-line args\nConfig files set to chmod 600\nGateway binds to loopback, exposed only via Tailscale\nUFW blocks all inbound except SSH and Tailscale"
      }
    ],
    "body": "OpenClaw Cloud Setup Skill\n\nDeploy OpenClaw to GCP with Tailscale and Brave Search.\n\nRequired Environment Variables\nexport OPENCLAW_PROJECT_ID=\"your-gcp-project\"\nexport OPENCLAW_USERNAME=\"your-ssh-username\"\nexport ANTHROPIC_TOKEN=\"sk-ant-oat01-...\"   # Keep secret\nexport BRAVE_API_KEY=\"...\"                   # Keep secret\n\nQuick Start\nchmod +x openclaw-quick-setup.sh\n./openclaw-quick-setup.sh\n\nManual Setup (Copy-Paste)\n# Set variables first (see above)\nZONE=\"us-central1-a\"\nVM=\"openclaw\"\n\n# Create VM\ngcloud compute instances create \"$VM\" \\\n  --project=\"$OPENCLAW_PROJECT_ID\" --zone=\"$ZONE\" \\\n  --machine-type=e2-medium \\\n  --image-family=debian-12 --image-project=debian-cloud \\\n  --boot-disk-size=10GB \\\n  --metadata=ssh-keys=\"${OPENCLAW_USERNAME}:$(cat ~/.ssh/id_ed25519.pub)\"\n\nIP=$(gcloud compute instances describe \"$VM\" \\\n  --project=\"$OPENCLAW_PROJECT_ID\" --zone=\"$ZONE\" \\\n  --format='get(networkInterfaces[0].accessConfigs[0].natIP)')\n\n# Wait for SSH, then run setup\nsleep 30\nssh -o StrictHostKeyChecking=no \"${OPENCLAW_USERNAME}@${IP}\" \"\nset -euo pipefail\nsudo apt-get update && sudo apt-get install -y git curl ufw jq\ncurl -fsSL https://tailscale.com/install.sh | sh\n\"\n\n# Manual: authorize Tailscale\nssh \"${OPENCLAW_USERNAME}@${IP}\" \"sudo tailscale up\"\n\n# Continue setup\nssh \"${OPENCLAW_USERNAME}@${IP}\" \"\nset -euo pipefail\nsudo ufw allow 22/tcp && sudo ufw allow in on tailscale0 && echo y | sudo ufw enable\necho 'nameserver 8.8.8.8' | sudo tee -a /etc/resolv.conf\ncurl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash\nsource ~/.nvm/nvm.sh && nvm install 22\nsource ~/.nvm/nvm.sh && npm install -g openclaw@latest\n\"\n\n# Configure OpenClaw (credentials via stdin)\nssh \"${OPENCLAW_USERNAME}@${IP}\" '\nsource ~/.nvm/nvm.sh\nopenclaw onboard --non-interactive --accept-risk \\\n  --auth-choice token --token-provider anthropic \\\n  --token \"$(cat)\" --gateway-bind loopback --install-daemon\n' <<< \"$ANTHROPIC_TOKEN\"\n\n# Add Brave key + enable Tailscale auth\nssh \"${OPENCLAW_USERNAME}@${IP}\" \"\nset -euo pipefail\nmkdir -p ~/.config/systemd/user/openclaw-gateway.service.d\ncat > ~/.config/systemd/user/openclaw-gateway.service.d/brave.conf << CONF\n[Service]\nEnvironment=\\\"BRAVE_API_KEY=\\$(cat)\\\"\nCONF\nchmod 600 ~/.config/systemd/user/openclaw-gateway.service.d/brave.conf\nsystemctl --user daemon-reload\nsource ~/.nvm/nvm.sh\njq '.gateway.auth.allowTailscale = true' ~/.openclaw/openclaw.json > /tmp/oc.json\nmv /tmp/oc.json ~/.openclaw/openclaw.json\nchmod 600 ~/.openclaw/openclaw.json\nopenclaw gateway restart\nsudo tailscale serve --bg 18789\n\" <<< \"$BRAVE_API_KEY\"\n\n# Get dashboard URL\nssh \"${OPENCLAW_USERNAME}@${IP}\" \"tailscale serve status\"\n\n# After first browser access, approve device\nssh \"${OPENCLAW_USERNAME}@${IP}\" 'source ~/.nvm/nvm.sh && openclaw devices list'\n# Then: openclaw devices approve <REQUEST_ID>\n\nKey Learnings\nIssue\tSolution\ne2-micro OOM\tUse e2-medium (4GB minimum)\nnodesource failures\tUse nvm for Node.js 22\nDNS broken after Tailscale\tAdd 8.8.8.8 to /etc/resolv.conf\nBrave key in config rejected\tUse systemd env var drop-in\nDashboard \"pairing required\"\tRun openclaw devices approve <id>\nSecurity Notes\nCredentials passed via stdin (<<<), not command-line args\nConfig files set to chmod 600\nGateway binds to loopback, exposed only via Tailscale\nUFW blocks all inbound except SSH and Tailscale"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/Divide-By-0/create-new-openclaw-in-gcp",
    "publisherUrl": "https://clawhub.ai/Divide-By-0/create-new-openclaw-in-gcp",
    "owner": "Divide-By-0",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/create-new-openclaw-in-gcp",
    "downloadUrl": "https://openagent3.xyz/downloads/create-new-openclaw-in-gcp",
    "agentUrl": "https://openagent3.xyz/skills/create-new-openclaw-in-gcp/agent",
    "manifestUrl": "https://openagent3.xyz/skills/create-new-openclaw-in-gcp/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/create-new-openclaw-in-gcp/agent.md"
  }
}