{
  "schemaVersion": "1.0",
  "item": {
    "slug": "proxmox-full",
    "name": "Proxmox Full",
    "source": "tencent",
    "type": "skill",
    "category": "AI 智能",
    "sourceUrl": "https://clawhub.ai/mSarheed/proxmox-full",
    "canonicalUrl": "https://clawhub.ai/mSarheed/proxmox-full",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/proxmox-full",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=proxmox-full",
    "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/proxmox-full"
    },
    "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/proxmox-full",
    "agentPageUrl": "https://openagent3.xyz/skills/proxmox-full/agent",
    "manifestUrl": "https://openagent3.xyz/skills/proxmox-full/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/proxmox-full/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": "Proxmox VE - Full Management",
        "body": "Complete control over Proxmox VE hypervisor via REST API."
      },
      {
        "title": "Setup",
        "body": "export PVE_URL=\"https://192.168.1.10:8006\"\nexport PVE_TOKEN=\"user@pam!tokenid=secret-uuid\"\n\nCreate API token: Datacenter → Permissions → API Tokens → Add (uncheck Privilege Separation)"
      },
      {
        "title": "Auth Header",
        "body": "AUTH=\"Authorization: PVEAPIToken=$PVE_TOKEN\""
      },
      {
        "title": "Cluster & Nodes",
        "body": "# Cluster status\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/cluster/status\" | jq\n\n# List nodes\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/nodes\" | jq '.data[] | {node, status, cpu: (.cpu*100|round), mem_pct: (.mem/.maxmem*100|round)}'\n\n# Node details\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/status\" | jq"
      },
      {
        "title": "List VMs & Containers",
        "body": "# All VMs on node\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu\" | jq '.data[] | {vmid, name, status}'\n\n# All LXC on node\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/lxc\" | jq '.data[] | {vmid, name, status}'\n\n# Cluster-wide (all VMs + LXC)\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/cluster/resources?type=vm\" | jq '.data[] | {node, type, vmid, name, status}'"
      },
      {
        "title": "VM/Container Control",
        "body": "# Start\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu/{vmid}/status/start\"\n\n# Stop (immediate)\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu/{vmid}/status/stop\"\n\n# Shutdown (graceful)\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu/{vmid}/status/shutdown\"\n\n# Reboot\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu/{vmid}/status/reboot\"\n\n# For LXC: replace /qemu/ with /lxc/"
      },
      {
        "title": "Create LXC Container",
        "body": "# Get next available VMID\nNEWID=$(curl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/cluster/nextid\" | jq -r '.data')\n\n# Create container\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/lxc\" \\\n  -d \"vmid=$NEWID\" \\\n  -d \"hostname=my-container\" \\\n  -d \"ostemplate=local:vztmpl/debian-12-standard_12.2-1_amd64.tar.zst\" \\\n  -d \"storage=local-lvm\" \\\n  -d \"rootfs=local-lvm:8\" \\\n  -d \"memory=1024\" \\\n  -d \"swap=512\" \\\n  -d \"cores=2\" \\\n  -d \"net0=name=eth0,bridge=vmbr0,ip=dhcp\" \\\n  -d \"password=changeme123\" \\\n  -d \"start=1\"\n\nLXC Parameters:\n\nParamExampleDescriptionvmid200Container IDhostnamemyctContainer hostnameostemplatelocal:vztmpl/debian-12-...Template pathstoragelocal-lvmStorage for rootfsrootfslocal-lvm:8Root disk (8GB)memory1024RAM in MBswap512Swap in MBcores2CPU coresnet0name=eth0,bridge=vmbr0,ip=dhcpNetwork configpasswordsecretRoot passwordssh-public-keysssh-rsa ...SSH keys (URL encoded)unprivileged1Unprivileged containerstart1Start after creation"
      },
      {
        "title": "Create VM",
        "body": "# Get next VMID\nNEWID=$(curl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/cluster/nextid\" | jq -r '.data')\n\n# Create VM\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu\" \\\n  -d \"vmid=$NEWID\" \\\n  -d \"name=my-vm\" \\\n  -d \"memory=2048\" \\\n  -d \"cores=2\" \\\n  -d \"sockets=1\" \\\n  -d \"cpu=host\" \\\n  -d \"net0=virtio,bridge=vmbr0\" \\\n  -d \"scsi0=local-lvm:32\" \\\n  -d \"scsihw=virtio-scsi-pci\" \\\n  -d \"ide2=local:iso/ubuntu-22.04.iso,media=cdrom\" \\\n  -d \"boot=order=scsi0;ide2;net0\" \\\n  -d \"ostype=l26\"\n\nVM Parameters:\n\nParamExampleDescriptionvmid100VM IDnamemyvmVM namememory2048RAM in MBcores2CPU cores per socketsockets1CPU socketscpuhostCPU typenet0virtio,bridge=vmbr0Networkscsi0local-lvm:32Disk (32GB)ide2local:iso/file.iso,media=cdromISOostypel26 (Linux), win11OS typebootorder=scsi0;ide2Boot order"
      },
      {
        "title": "Clone VM/Container",
        "body": "# Clone VM\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu/{vmid}/clone\" \\\n  -d \"newid=201\" \\\n  -d \"name=cloned-vm\" \\\n  -d \"full=1\" \\\n  -d \"storage=local-lvm\"\n\n# Clone LXC\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/lxc/{vmid}/clone\" \\\n  -d \"newid=202\" \\\n  -d \"hostname=cloned-ct\" \\\n  -d \"full=1\" \\\n  -d \"storage=local-lvm\"\n\nClone Parameters:\n\nParamDescriptionnewidNew VMIDname/hostnameNew namefull1=full clone, 0=linked clonestorageTarget storagetargetTarget node (for migration)"
      },
      {
        "title": "Convert to Template",
        "body": "# Convert VM to template\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu/{vmid}/template\"\n\n# Convert LXC to template\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/lxc/{vmid}/template\""
      },
      {
        "title": "Snapshots",
        "body": "# List snapshots\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu/{vmid}/snapshot\" | jq '.data[] | {name, description}'\n\n# Create snapshot\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu/{vmid}/snapshot\" \\\n  -d \"snapname=before-update\" \\\n  -d \"description=Snapshot before system update\"\n\n# Rollback\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu/{vmid}/snapshot/{snapname}/rollback\"\n\n# Delete snapshot\ncurl -sk -X DELETE -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu/{vmid}/snapshot/{snapname}\""
      },
      {
        "title": "Backups",
        "body": "# Start backup\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/vzdump\" \\\n  -d \"vmid={vmid}\" \\\n  -d \"storage=local\" \\\n  -d \"mode=snapshot\" \\\n  -d \"compress=zstd\"\n\n# List backups\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/storage/{storage}/content?content=backup\" | jq\n\n# Restore backup\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu\" \\\n  -d \"vmid=300\" \\\n  -d \"archive=local:backup/vzdump-qemu-100-2024_01_01-12_00_00.vma.zst\" \\\n  -d \"storage=local-lvm\""
      },
      {
        "title": "Storage & Templates",
        "body": "# List storage\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/storage\" | jq '.data[] | {storage, type, avail, used}'\n\n# List available templates\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/storage/local/content?content=vztmpl\" | jq '.data[] | .volid'\n\n# List ISOs\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/storage/local/content?content=iso\" | jq '.data[] | .volid'\n\n# Download template\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/aplinfo\" \\\n  -d \"storage=local\" \\\n  -d \"template=debian-12-standard_12.2-1_amd64.tar.zst\""
      },
      {
        "title": "Tasks",
        "body": "# Recent tasks\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/tasks?limit=10\" | jq '.data[] | {upid, type, status}'\n\n# Task status\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/tasks/{upid}/status\" | jq\n\n# Task log\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/tasks/{upid}/log\" | jq -r '.data[].t'"
      },
      {
        "title": "Delete VM/Container",
        "body": "# Delete VM (must be stopped)\ncurl -sk -X DELETE -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu/{vmid}\"\n\n# Delete LXC\ncurl -sk -X DELETE -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/lxc/{vmid}\"\n\n# Force delete (purge)\ncurl -sk -X DELETE -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu/{vmid}?purge=1&destroy-unreferenced-disks=1\""
      },
      {
        "title": "Quick Reference",
        "body": "ActionEndpointMethodList nodes/nodesGETList VMs/nodes/{node}/qemuGETList LXC/nodes/{node}/lxcGETCreate VM/nodes/{node}/qemuPOSTCreate LXC/nodes/{node}/lxcPOSTClone/nodes/{node}/qemu/{vmid}/clonePOSTStart/nodes/{node}/qemu/{vmid}/status/startPOSTStop/nodes/{node}/qemu/{vmid}/status/stopPOSTSnapshot/nodes/{node}/qemu/{vmid}/snapshotPOSTDelete/nodes/{node}/qemu/{vmid}DELETENext ID/cluster/nextidGET"
      },
      {
        "title": "Notes",
        "body": "Use -k for self-signed certs\nAPI tokens don't need CSRF\nReplace {node} with node name (e.g., pve)\nReplace {vmid} with VM/container ID\nUse qemu for VMs, lxc for containers\nAll create/clone operations return task UPID for tracking"
      }
    ],
    "body": "Proxmox VE - Full Management\n\nComplete control over Proxmox VE hypervisor via REST API.\n\nSetup\nexport PVE_URL=\"https://192.168.1.10:8006\"\nexport PVE_TOKEN=\"user@pam!tokenid=secret-uuid\"\n\n\nCreate API token: Datacenter → Permissions → API Tokens → Add (uncheck Privilege Separation)\n\nAuth Header\nAUTH=\"Authorization: PVEAPIToken=$PVE_TOKEN\"\n\nCluster & Nodes\n# Cluster status\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/cluster/status\" | jq\n\n# List nodes\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/nodes\" | jq '.data[] | {node, status, cpu: (.cpu*100|round), mem_pct: (.mem/.maxmem*100|round)}'\n\n# Node details\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/status\" | jq\n\nList VMs & Containers\n# All VMs on node\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu\" | jq '.data[] | {vmid, name, status}'\n\n# All LXC on node\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/lxc\" | jq '.data[] | {vmid, name, status}'\n\n# Cluster-wide (all VMs + LXC)\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/cluster/resources?type=vm\" | jq '.data[] | {node, type, vmid, name, status}'\n\nVM/Container Control\n# Start\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu/{vmid}/status/start\"\n\n# Stop (immediate)\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu/{vmid}/status/stop\"\n\n# Shutdown (graceful)\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu/{vmid}/status/shutdown\"\n\n# Reboot\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu/{vmid}/status/reboot\"\n\n# For LXC: replace /qemu/ with /lxc/\n\nCreate LXC Container\n# Get next available VMID\nNEWID=$(curl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/cluster/nextid\" | jq -r '.data')\n\n# Create container\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/lxc\" \\\n  -d \"vmid=$NEWID\" \\\n  -d \"hostname=my-container\" \\\n  -d \"ostemplate=local:vztmpl/debian-12-standard_12.2-1_amd64.tar.zst\" \\\n  -d \"storage=local-lvm\" \\\n  -d \"rootfs=local-lvm:8\" \\\n  -d \"memory=1024\" \\\n  -d \"swap=512\" \\\n  -d \"cores=2\" \\\n  -d \"net0=name=eth0,bridge=vmbr0,ip=dhcp\" \\\n  -d \"password=changeme123\" \\\n  -d \"start=1\"\n\n\nLXC Parameters:\n\nParam\tExample\tDescription\nvmid\t200\tContainer ID\nhostname\tmyct\tContainer hostname\nostemplate\tlocal:vztmpl/debian-12-...\tTemplate path\nstorage\tlocal-lvm\tStorage for rootfs\nrootfs\tlocal-lvm:8\tRoot disk (8GB)\nmemory\t1024\tRAM in MB\nswap\t512\tSwap in MB\ncores\t2\tCPU cores\nnet0\tname=eth0,bridge=vmbr0,ip=dhcp\tNetwork config\npassword\tsecret\tRoot password\nssh-public-keys\tssh-rsa ...\tSSH keys (URL encoded)\nunprivileged\t1\tUnprivileged container\nstart\t1\tStart after creation\nCreate VM\n# Get next VMID\nNEWID=$(curl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/cluster/nextid\" | jq -r '.data')\n\n# Create VM\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu\" \\\n  -d \"vmid=$NEWID\" \\\n  -d \"name=my-vm\" \\\n  -d \"memory=2048\" \\\n  -d \"cores=2\" \\\n  -d \"sockets=1\" \\\n  -d \"cpu=host\" \\\n  -d \"net0=virtio,bridge=vmbr0\" \\\n  -d \"scsi0=local-lvm:32\" \\\n  -d \"scsihw=virtio-scsi-pci\" \\\n  -d \"ide2=local:iso/ubuntu-22.04.iso,media=cdrom\" \\\n  -d \"boot=order=scsi0;ide2;net0\" \\\n  -d \"ostype=l26\"\n\n\nVM Parameters:\n\nParam\tExample\tDescription\nvmid\t100\tVM ID\nname\tmyvm\tVM name\nmemory\t2048\tRAM in MB\ncores\t2\tCPU cores per socket\nsockets\t1\tCPU sockets\ncpu\thost\tCPU type\nnet0\tvirtio,bridge=vmbr0\tNetwork\nscsi0\tlocal-lvm:32\tDisk (32GB)\nide2\tlocal:iso/file.iso,media=cdrom\tISO\nostype\tl26 (Linux), win11\tOS type\nboot\torder=scsi0;ide2\tBoot order\nClone VM/Container\n# Clone VM\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu/{vmid}/clone\" \\\n  -d \"newid=201\" \\\n  -d \"name=cloned-vm\" \\\n  -d \"full=1\" \\\n  -d \"storage=local-lvm\"\n\n# Clone LXC\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/lxc/{vmid}/clone\" \\\n  -d \"newid=202\" \\\n  -d \"hostname=cloned-ct\" \\\n  -d \"full=1\" \\\n  -d \"storage=local-lvm\"\n\n\nClone Parameters:\n\nParam\tDescription\nnewid\tNew VMID\nname/hostname\tNew name\nfull\t1=full clone, 0=linked clone\nstorage\tTarget storage\ntarget\tTarget node (for migration)\nConvert to Template\n# Convert VM to template\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu/{vmid}/template\"\n\n# Convert LXC to template\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/lxc/{vmid}/template\"\n\nSnapshots\n# List snapshots\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu/{vmid}/snapshot\" | jq '.data[] | {name, description}'\n\n# Create snapshot\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu/{vmid}/snapshot\" \\\n  -d \"snapname=before-update\" \\\n  -d \"description=Snapshot before system update\"\n\n# Rollback\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu/{vmid}/snapshot/{snapname}/rollback\"\n\n# Delete snapshot\ncurl -sk -X DELETE -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu/{vmid}/snapshot/{snapname}\"\n\nBackups\n# Start backup\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/vzdump\" \\\n  -d \"vmid={vmid}\" \\\n  -d \"storage=local\" \\\n  -d \"mode=snapshot\" \\\n  -d \"compress=zstd\"\n\n# List backups\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/storage/{storage}/content?content=backup\" | jq\n\n# Restore backup\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu\" \\\n  -d \"vmid=300\" \\\n  -d \"archive=local:backup/vzdump-qemu-100-2024_01_01-12_00_00.vma.zst\" \\\n  -d \"storage=local-lvm\"\n\nStorage & Templates\n# List storage\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/storage\" | jq '.data[] | {storage, type, avail, used}'\n\n# List available templates\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/storage/local/content?content=vztmpl\" | jq '.data[] | .volid'\n\n# List ISOs\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/storage/local/content?content=iso\" | jq '.data[] | .volid'\n\n# Download template\ncurl -sk -X POST -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/aplinfo\" \\\n  -d \"storage=local\" \\\n  -d \"template=debian-12-standard_12.2-1_amd64.tar.zst\"\n\nTasks\n# Recent tasks\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/tasks?limit=10\" | jq '.data[] | {upid, type, status}'\n\n# Task status\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/tasks/{upid}/status\" | jq\n\n# Task log\ncurl -sk -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/tasks/{upid}/log\" | jq -r '.data[].t'\n\nDelete VM/Container\n# Delete VM (must be stopped)\ncurl -sk -X DELETE -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu/{vmid}\"\n\n# Delete LXC\ncurl -sk -X DELETE -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/lxc/{vmid}\"\n\n# Force delete (purge)\ncurl -sk -X DELETE -H \"$AUTH\" \"$PVE_URL/api2/json/nodes/{node}/qemu/{vmid}?purge=1&destroy-unreferenced-disks=1\"\n\nQuick Reference\nAction\tEndpoint\tMethod\nList nodes\t/nodes\tGET\nList VMs\t/nodes/{node}/qemu\tGET\nList LXC\t/nodes/{node}/lxc\tGET\nCreate VM\t/nodes/{node}/qemu\tPOST\nCreate LXC\t/nodes/{node}/lxc\tPOST\nClone\t/nodes/{node}/qemu/{vmid}/clone\tPOST\nStart\t/nodes/{node}/qemu/{vmid}/status/start\tPOST\nStop\t/nodes/{node}/qemu/{vmid}/status/stop\tPOST\nSnapshot\t/nodes/{node}/qemu/{vmid}/snapshot\tPOST\nDelete\t/nodes/{node}/qemu/{vmid}\tDELETE\nNext ID\t/cluster/nextid\tGET\nNotes\nUse -k for self-signed certs\nAPI tokens don't need CSRF\nReplace {node} with node name (e.g., pve)\nReplace {vmid} with VM/container ID\nUse qemu for VMs, lxc for containers\nAll create/clone operations return task UPID for tracking"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/mSarheed/proxmox-full",
    "publisherUrl": "https://clawhub.ai/mSarheed/proxmox-full",
    "owner": "mSarheed",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/proxmox-full",
    "downloadUrl": "https://openagent3.xyz/downloads/proxmox-full",
    "agentUrl": "https://openagent3.xyz/skills/proxmox-full/agent",
    "manifestUrl": "https://openagent3.xyz/skills/proxmox-full/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/proxmox-full/agent.md"
  }
}