{
  "schemaVersion": "1.0",
  "item": {
    "slug": "computer-use",
    "name": "Computer Use",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/Ram-Raghav-S/computer-use",
    "canonicalUrl": "https://clawhub.ai/Ram-Raghav-S/computer-use",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/computer-use",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=computer-use",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "scripts/click.sh",
      "scripts/cursor_position.sh",
      "scripts/drag.sh",
      "scripts/hold_key.sh",
      "scripts/key.sh"
    ],
    "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/computer-use"
    },
    "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/computer-use",
    "agentPageUrl": "https://openagent3.xyz/skills/computer-use/agent",
    "manifestUrl": "https://openagent3.xyz/skills/computer-use/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/computer-use/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": "Computer Use Skill",
        "body": "Full desktop GUI control for headless Linux servers. Creates a virtual display (Xvfb + XFCE) so you can run and control desktop applications on VPS/cloud instances without a physical monitor."
      },
      {
        "title": "Environment",
        "body": "Display: :99\nResolution: 1024x768 (XGA, Anthropic recommended)\nDesktop: XFCE4 (minimal — xfwm4 + panel only)"
      },
      {
        "title": "Quick Setup",
        "body": "Run the setup script to install everything (systemd services, flicker-free VNC):\n\n./scripts/setup-vnc.sh\n\nThis installs:\n\nXvfb virtual display on :99\nMinimal XFCE desktop (xfwm4 + panel, no xfdesktop)\nx11vnc with stability flags\nnoVNC for browser access\n\nAll services auto-start on boot and auto-restart on crash."
      },
      {
        "title": "Actions Reference",
        "body": "ActionScriptArgumentsDescriptionscreenshotscreenshot.sh—Capture screen → base64 PNGcursor_positioncursor_position.sh—Get current mouse X,Ymouse_movemouse_move.shx yMove mouse to coordinatesleft_clickclick.shx y leftLeft click at coordinatesright_clickclick.shx y rightRight clickmiddle_clickclick.shx y middleMiddle clickdouble_clickclick.shx y doubleDouble clicktriple_clickclick.shx y tripleTriple click (select line)left_click_dragdrag.shx1 y1 x2 y2Drag from start to endleft_mouse_downmouse_down.sh—Press mouse buttonleft_mouse_upmouse_up.sh—Release mouse buttontypetype_text.sh\"text\"Type text (50 char chunks, 12ms delay)keykey.sh\"combo\"Press key (Return, ctrl+c, alt+F4)hold_keyhold_key.sh\"key\" secsHold key for durationscrollscroll.shdir amt [x y]Scroll up/down/left/rightwaitwait.shsecondsWait then screenshotzoomzoom.shx1 y1 x2 y2Cropped region screenshot"
      },
      {
        "title": "Usage Examples",
        "body": "export DISPLAY=:99\n\n# Take screenshot\n./scripts/screenshot.sh\n\n# Click at coordinates\n./scripts/click.sh 512 384 left\n\n# Type text\n./scripts/type_text.sh \"Hello world\"\n\n# Press key combo\n./scripts/key.sh \"ctrl+s\"\n\n# Scroll down\n./scripts/scroll.sh down 5"
      },
      {
        "title": "Workflow Pattern",
        "body": "Screenshot — Always start by seeing the screen\nAnalyze — Identify UI elements and coordinates\nAct — Click, type, scroll\nScreenshot — Verify result\nRepeat"
      },
      {
        "title": "Tips",
        "body": "Screen is 1024x768, origin (0,0) at top-left\nClick to focus before typing in text fields\nUse ctrl+End to jump to page bottom in browsers\nMost actions auto-screenshot after 2 sec delay\nLong text is chunked (50 chars) with 12ms keystroke delay"
      },
      {
        "title": "Live Desktop Viewing (VNC)",
        "body": "Watch the desktop in real-time via browser or VNC client."
      },
      {
        "title": "Connect via Browser",
        "body": "# SSH tunnel (run on your local machine)\nssh -L 6080:localhost:6080 your-server\n\n# Open in browser\nhttp://localhost:6080/vnc.html"
      },
      {
        "title": "Connect via VNC Client",
        "body": "# SSH tunnel\nssh -L 5900:localhost:5900 your-server\n\n# Connect VNC client to localhost:5900"
      },
      {
        "title": "SSH Config (recommended)",
        "body": "Add to ~/.ssh/config for automatic tunneling:\n\nHost your-server\n  HostName your.server.ip\n  User your-user\n  LocalForward 6080 127.0.0.1:6080\n  LocalForward 5900 127.0.0.1:5900\n\nThen just ssh your-server and VNC is available."
      },
      {
        "title": "System Services",
        "body": "# Check status\nsystemctl status xvfb xfce-minimal x11vnc novnc\n\n# Restart if needed\nsudo systemctl restart xvfb xfce-minimal x11vnc novnc"
      },
      {
        "title": "Service Chain",
        "body": "xvfb → xfce-minimal → x11vnc → novnc\n\nxvfb: Virtual display :99 (1024x768x24)\nxfce-minimal: Watchdog that runs xfwm4+panel, kills xfdesktop\nx11vnc: VNC server with -noxdamage for stability\nnovnc: WebSocket proxy with heartbeat for connection stability"
      },
      {
        "title": "Opening Applications",
        "body": "export DISPLAY=:99\n\n# Chrome — only use --no-sandbox if the kernel lacks user namespace support.\n# Check: cat /proc/sys/kernel/unprivileged_userns_clone\n#   1 = sandbox works, do NOT use --no-sandbox\n#   0 = sandbox fails, --no-sandbox required as fallback\n# Using --no-sandbox when unnecessary causes instability and crashes.\nif [ \"$(cat /proc/sys/kernel/unprivileged_userns_clone 2>/dev/null)\" = \"0\" ]; then\n    google-chrome --no-sandbox &\nelse\n    google-chrome &\nfi\n\nxfce4-terminal &                # Terminal\nthunar &                        # File manager\n\nNote: Snap browsers (Firefox, Chromium) have sandbox issues on headless servers. Use Chrome .deb instead:\n\nwget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb\nsudo dpkg -i google-chrome-stable_current_amd64.deb\nsudo apt-get install -f"
      },
      {
        "title": "Manual Setup",
        "body": "If you prefer manual setup instead of setup-vnc.sh:\n\n# Install packages\nsudo apt install -y xvfb xfce4 xfce4-terminal xdotool scrot imagemagick dbus-x11 x11vnc novnc websockify\n\n# Run the setup script (generates systemd services, masks xfdesktop, starts everything)\n./scripts/setup-vnc.sh\n\nIf you prefer fully manual setup, the setup-vnc.sh script generates all systemd service files inline -- read it for the exact service definitions."
      },
      {
        "title": "VNC shows black screen",
        "body": "Check if xfwm4 is running: pgrep xfwm4\nRestart desktop: sudo systemctl restart xfce-minimal"
      },
      {
        "title": "VNC flickering/flashing",
        "body": "Ensure xfdesktop is masked (check /usr/bin/xfdesktop)\nxfdesktop causes flicker due to clear→draw cycles on Xvfb"
      },
      {
        "title": "VNC disconnects frequently",
        "body": "Check noVNC has --heartbeat 30 flag\nCheck x11vnc has -noxdamage flag"
      },
      {
        "title": "x11vnc crashes (SIGSEGV)",
        "body": "Add -noxdamage -noxfixes flags\nThe DAMAGE extension causes crashes on Xvfb"
      },
      {
        "title": "Requirements",
        "body": "Installed by setup-vnc.sh:\n\nxvfb xfce4 xfce4-terminal xdotool scrot imagemagick dbus-x11 x11vnc novnc websockify"
      }
    ],
    "body": "Computer Use Skill\n\nFull desktop GUI control for headless Linux servers. Creates a virtual display (Xvfb + XFCE) so you can run and control desktop applications on VPS/cloud instances without a physical monitor.\n\nEnvironment\nDisplay: :99\nResolution: 1024x768 (XGA, Anthropic recommended)\nDesktop: XFCE4 (minimal — xfwm4 + panel only)\nQuick Setup\n\nRun the setup script to install everything (systemd services, flicker-free VNC):\n\n./scripts/setup-vnc.sh\n\n\nThis installs:\n\nXvfb virtual display on :99\nMinimal XFCE desktop (xfwm4 + panel, no xfdesktop)\nx11vnc with stability flags\nnoVNC for browser access\n\nAll services auto-start on boot and auto-restart on crash.\n\nActions Reference\nAction\tScript\tArguments\tDescription\nscreenshot\tscreenshot.sh\t—\tCapture screen → base64 PNG\ncursor_position\tcursor_position.sh\t—\tGet current mouse X,Y\nmouse_move\tmouse_move.sh\tx y\tMove mouse to coordinates\nleft_click\tclick.sh\tx y left\tLeft click at coordinates\nright_click\tclick.sh\tx y right\tRight click\nmiddle_click\tclick.sh\tx y middle\tMiddle click\ndouble_click\tclick.sh\tx y double\tDouble click\ntriple_click\tclick.sh\tx y triple\tTriple click (select line)\nleft_click_drag\tdrag.sh\tx1 y1 x2 y2\tDrag from start to end\nleft_mouse_down\tmouse_down.sh\t—\tPress mouse button\nleft_mouse_up\tmouse_up.sh\t—\tRelease mouse button\ntype\ttype_text.sh\t\"text\"\tType text (50 char chunks, 12ms delay)\nkey\tkey.sh\t\"combo\"\tPress key (Return, ctrl+c, alt+F4)\nhold_key\thold_key.sh\t\"key\" secs\tHold key for duration\nscroll\tscroll.sh\tdir amt [x y]\tScroll up/down/left/right\nwait\twait.sh\tseconds\tWait then screenshot\nzoom\tzoom.sh\tx1 y1 x2 y2\tCropped region screenshot\nUsage Examples\nexport DISPLAY=:99\n\n# Take screenshot\n./scripts/screenshot.sh\n\n# Click at coordinates\n./scripts/click.sh 512 384 left\n\n# Type text\n./scripts/type_text.sh \"Hello world\"\n\n# Press key combo\n./scripts/key.sh \"ctrl+s\"\n\n# Scroll down\n./scripts/scroll.sh down 5\n\nWorkflow Pattern\nScreenshot — Always start by seeing the screen\nAnalyze — Identify UI elements and coordinates\nAct — Click, type, scroll\nScreenshot — Verify result\nRepeat\nTips\nScreen is 1024x768, origin (0,0) at top-left\nClick to focus before typing in text fields\nUse ctrl+End to jump to page bottom in browsers\nMost actions auto-screenshot after 2 sec delay\nLong text is chunked (50 chars) with 12ms keystroke delay\nLive Desktop Viewing (VNC)\n\nWatch the desktop in real-time via browser or VNC client.\n\nConnect via Browser\n# SSH tunnel (run on your local machine)\nssh -L 6080:localhost:6080 your-server\n\n# Open in browser\nhttp://localhost:6080/vnc.html\n\nConnect via VNC Client\n# SSH tunnel\nssh -L 5900:localhost:5900 your-server\n\n# Connect VNC client to localhost:5900\n\nSSH Config (recommended)\n\nAdd to ~/.ssh/config for automatic tunneling:\n\nHost your-server\n  HostName your.server.ip\n  User your-user\n  LocalForward 6080 127.0.0.1:6080\n  LocalForward 5900 127.0.0.1:5900\n\n\nThen just ssh your-server and VNC is available.\n\nSystem Services\n# Check status\nsystemctl status xvfb xfce-minimal x11vnc novnc\n\n# Restart if needed\nsudo systemctl restart xvfb xfce-minimal x11vnc novnc\n\nService Chain\nxvfb → xfce-minimal → x11vnc → novnc\n\nxvfb: Virtual display :99 (1024x768x24)\nxfce-minimal: Watchdog that runs xfwm4+panel, kills xfdesktop\nx11vnc: VNC server with -noxdamage for stability\nnovnc: WebSocket proxy with heartbeat for connection stability\nOpening Applications\nexport DISPLAY=:99\n\n# Chrome — only use --no-sandbox if the kernel lacks user namespace support.\n# Check: cat /proc/sys/kernel/unprivileged_userns_clone\n#   1 = sandbox works, do NOT use --no-sandbox\n#   0 = sandbox fails, --no-sandbox required as fallback\n# Using --no-sandbox when unnecessary causes instability and crashes.\nif [ \"$(cat /proc/sys/kernel/unprivileged_userns_clone 2>/dev/null)\" = \"0\" ]; then\n    google-chrome --no-sandbox &\nelse\n    google-chrome &\nfi\n\nxfce4-terminal &                # Terminal\nthunar &                        # File manager\n\n\nNote: Snap browsers (Firefox, Chromium) have sandbox issues on headless servers. Use Chrome .deb instead:\n\nwget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb\nsudo dpkg -i google-chrome-stable_current_amd64.deb\nsudo apt-get install -f\n\nManual Setup\n\nIf you prefer manual setup instead of setup-vnc.sh:\n\n# Install packages\nsudo apt install -y xvfb xfce4 xfce4-terminal xdotool scrot imagemagick dbus-x11 x11vnc novnc websockify\n\n# Run the setup script (generates systemd services, masks xfdesktop, starts everything)\n./scripts/setup-vnc.sh\n\n\nIf you prefer fully manual setup, the setup-vnc.sh script generates all systemd service files inline -- read it for the exact service definitions.\n\nTroubleshooting\nVNC shows black screen\nCheck if xfwm4 is running: pgrep xfwm4\nRestart desktop: sudo systemctl restart xfce-minimal\nVNC flickering/flashing\nEnsure xfdesktop is masked (check /usr/bin/xfdesktop)\nxfdesktop causes flicker due to clear→draw cycles on Xvfb\nVNC disconnects frequently\nCheck noVNC has --heartbeat 30 flag\nCheck x11vnc has -noxdamage flag\nx11vnc crashes (SIGSEGV)\nAdd -noxdamage -noxfixes flags\nThe DAMAGE extension causes crashes on Xvfb\nRequirements\n\nInstalled by setup-vnc.sh:\n\nxvfb xfce4 xfce4-terminal xdotool scrot imagemagick dbus-x11 x11vnc novnc websockify"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/Ram-Raghav-S/computer-use",
    "publisherUrl": "https://clawhub.ai/Ram-Raghav-S/computer-use",
    "owner": "Ram-Raghav-S",
    "version": "1.2.1",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/computer-use",
    "downloadUrl": "https://openagent3.xyz/downloads/computer-use",
    "agentUrl": "https://openagent3.xyz/skills/computer-use/agent",
    "manifestUrl": "https://openagent3.xyz/skills/computer-use/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/computer-use/agent.md"
  }
}