{
  "schemaVersion": "1.0",
  "item": {
    "slug": "remote-disk-mount",
    "name": "Remote Disk Mount",
    "source": "tencent",
    "type": "skill",
    "category": "通讯协作",
    "sourceUrl": "https://clawhub.ai/Leochens/remote-disk-mount",
    "canonicalUrl": "https://clawhub.ai/Leochens/remote-disk-mount",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/remote-disk-mount",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=remote-disk-mount",
    "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/remote-disk-mount"
    },
    "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/remote-disk-mount",
    "agentPageUrl": "https://openagent3.xyz/skills/remote-disk-mount/agent",
    "manifestUrl": "https://openagent3.xyz/skills/remote-disk-mount/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/remote-disk-mount/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": "Remote Disk Mount",
        "body": "⚠️ Security Note: This skill is for Debian/Ubuntu Linux only. Do NOT use on other OS without adaptation."
      },
      {
        "title": "⚠️ Security Guidelines",
        "body": "Never pass passwords on command line — Use credential files or interactive prompts instead\nConfirm with user before running sudo commands — Don't auto-execute privileged operations\nUse SSH keys for SFTP — Avoid password-based authentication\nMount untrusted storage with caution — It can expose local files"
      },
      {
        "title": "Step 1: Collect Info (Ask User)",
        "body": "Ask the user for:\n\nProtocol: SMB / FTP / SFTP / WebDAV?\nServer IP/hostname: e.g., 192.168.1.100 or nas.example.com\nUsername: (for SMB/FTP/SFTP)\nPassword: (will be used interactively, never shown in commands)\nShare name: (for SMB only, e.g., shared)\nMount point name: (optional, e.g., nas, backup)\n\n💡 Tip: Ask one question at a time, wait for response. Don't assume any values."
      },
      {
        "title": "Step 2: Check Environment",
        "body": "Run this to check/install deps based on protocol:\n\n# SMB\nsudo apt install smbclient cifs-utils -y\n\n# FTP\nsudo apt install curlftpfs -y\n\n# SFTP\nsudo apt install sshfs -y\n\n# WebDAV\nsudo apt install cadaver davfs2 -y"
      },
      {
        "title": "Step 3: Create Mount Point",
        "body": "mkdir -p ~/mount_<name>"
      },
      {
        "title": "SMB/CIFS",
        "body": "Credential file method:\n\n# 1. Create credential file\necho \"username=$USERNAME\" | sudo tee /root/.smbcredentials\necho \"password=$PASSWORD\" | sudo tee -a /root/.smbcredentials\nsudo chmod 600 /root/.smbcredentials\n\n# 2. Mount\nsudo mount.cifs //SERVER_IP/share ~/mount_name -o credentials=/root/.smbcredentials,uid=1000,gid=1000"
      },
      {
        "title": "FTP (curlftpfs)",
        "body": "Interactive password (recommended):\n\ncurlftpfs -o user=$USERNAME ftp://SERVER_IP/ ~/mount_name\n# Password will be prompted interactively - never shown in command"
      },
      {
        "title": "SFTP (SSHFS)",
        "body": "Key-based auth (recommended):\n\nsshfs $USERNAME@SERVER_IP:/ ~/mount_name -o uid=1000,gid=1000\n# Use -o identityfile=~/.ssh/id_rsa for key-based auth"
      },
      {
        "title": "WebDAV",
        "body": "sudo mount -t davfs http://SERVER_IP/webdav /mnt/webdav -o uid=1000,gid=1000\n# Password prompted interactively"
      },
      {
        "title": "Unmount",
        "body": "sudo umount /mountpoint\n# or for FUSE\nsudo fusermount -u /mountpoint"
      },
      {
        "title": "Checklist Before Running",
        "body": "Confirm OS is Debian/Ubuntu\n Get user confirmation before sudo commands\n Verify remote server is trusted\n Use SSH keys for SFTP instead of passwords\n Delete credential files after use if sensitive"
      }
    ],
    "body": "Remote Disk Mount\n\n⚠️ Security Note: This skill is for Debian/Ubuntu Linux only. Do NOT use on other OS without adaptation.\n\n⚠️ Security Guidelines\nNever pass passwords on command line — Use credential files or interactive prompts instead\nConfirm with user before running sudo commands — Don't auto-execute privileged operations\nUse SSH keys for SFTP — Avoid password-based authentication\nMount untrusted storage with caution — It can expose local files\n🚀 Workflow\nStep 1: Collect Info (Ask User)\n\nAsk the user for:\n\nProtocol: SMB / FTP / SFTP / WebDAV?\nServer IP/hostname: e.g., 192.168.1.100 or nas.example.com\nUsername: (for SMB/FTP/SFTP)\nPassword: (will be used interactively, never shown in commands)\nShare name: (for SMB only, e.g., shared)\nMount point name: (optional, e.g., nas, backup)\n\n💡 Tip: Ask one question at a time, wait for response. Don't assume any values.\n\nStep 2: Check Environment\n\nRun this to check/install deps based on protocol:\n\n# SMB\nsudo apt install smbclient cifs-utils -y\n\n# FTP\nsudo apt install curlftpfs -y\n\n# SFTP\nsudo apt install sshfs -y\n\n# WebDAV\nsudo apt install cadaver davfs2 -y\n\nStep 3: Create Mount Point\nmkdir -p ~/mount_<name>\n\nProtocol Details\nSMB/CIFS\n\nCredential file method:\n\n# 1. Create credential file\necho \"username=$USERNAME\" | sudo tee /root/.smbcredentials\necho \"password=$PASSWORD\" | sudo tee -a /root/.smbcredentials\nsudo chmod 600 /root/.smbcredentials\n\n# 2. Mount\nsudo mount.cifs //SERVER_IP/share ~/mount_name -o credentials=/root/.smbcredentials,uid=1000,gid=1000\n\nFTP (curlftpfs)\n\nInteractive password (recommended):\n\ncurlftpfs -o user=$USERNAME ftp://SERVER_IP/ ~/mount_name\n# Password will be prompted interactively - never shown in command\n\nSFTP (SSHFS)\n\nKey-based auth (recommended):\n\nsshfs $USERNAME@SERVER_IP:/ ~/mount_name -o uid=1000,gid=1000\n# Use -o identityfile=~/.ssh/id_rsa for key-based auth\n\nWebDAV\nsudo mount -t davfs http://SERVER_IP/webdav /mnt/webdav -o uid=1000,gid=1000\n# Password prompted interactively\n\nUnmount\nsudo umount /mountpoint\n# or for FUSE\nsudo fusermount -u /mountpoint\n\nChecklist Before Running\n Confirm OS is Debian/Ubuntu\n Get user confirmation before sudo commands\n Verify remote server is trusted\n Use SSH keys for SFTP instead of passwords\n Delete credential files after use if sensitive"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/Leochens/remote-disk-mount",
    "publisherUrl": "https://clawhub.ai/Leochens/remote-disk-mount",
    "owner": "Leochens",
    "version": "0.4.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/remote-disk-mount",
    "downloadUrl": "https://openagent3.xyz/downloads/remote-disk-mount",
    "agentUrl": "https://openagent3.xyz/skills/remote-disk-mount/agent",
    "manifestUrl": "https://openagent3.xyz/skills/remote-disk-mount/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/remote-disk-mount/agent.md"
  }
}