runpod

Review·Scanned 2/17/2026

This skill manages RunPod GPU instances, SSH connections, and mounts pod filesystems via runpodctl and sshfs. It reads/uses SSH keys (~/.runpod/ssh/RunPod-Key, ~/.ssh/runpod_key), reads RUNPOD_SSH_KEY/RUNPOD_KNOWN_HOSTS, and runs shell/network commands to connect to remote pods.

from clawhub.ai·v64fb57d·4.6 KB·0 installs
Scanned from 1.0.1 at 64fb57d · Transparency log ↗
$ vett add clawhub.ai/andrewharp/runpodReview findings below

RunPod Skill

Manage RunPod GPU cloud instances, SSH connections, and filesystem access.

Prerequisites

brew install runpod/runpodctl/runpodctl
runpodctl config --apiKey "your-api-key"

SSH Key: runpodctl manages SSH keys in ~/.runpod/ssh/:

runpodctl ssh add-key

View and manage keys at: https://console.runpod.io/user/settings

Mount script configuration: The mount script checks ~/.ssh/runpod_key first, then falls back to runpodctl's default key. Override with:

export RUNPOD_SSH_KEY="$HOME/.runpod/ssh/RunPod-Key"

Host keys are stored separately in ~/.runpod/ssh/known_hosts (isolated from your main SSH config). Uses StrictHostKeyChecking=accept-new to verify hosts on reconnect while allowing new RunPod instances.

Quick Reference

runpodctl get pod                    # List pods
runpodctl get pod <id>               # Get pod details
runpodctl start pod <id>             # Start pod
runpodctl stop pod <id>              # Stop pod
runpodctl ssh connect <id>           # Get SSH command
runpodctl send <file>                # Send file to pod
runpodctl receive <code>             # Receive file from pod

Common Operations

Create Pod

# Without volume
runpodctl create pod --name "my-pod" --gpuType "NVIDIA GeForce RTX 4090" --imageName "runpod/pytorch:1.0.2-cu1281-torch280-ubuntu2404"

# With volume (100GB at /workspace)
runpodctl create pod --name "my-pod" --gpuType "NVIDIA GeForce RTX 4090" --imageName "runpod/pytorch:1.0.2-cu1281-torch280-ubuntu2404" --volumeSize 100 --volumePath "/workspace"

Important: When using a volume (--volumeSize), always specify --volumePath too. Without it:

error creating container: ... invalid mount config for type "volume": field Target must not be empty

SSH to Pod

# Get SSH command
runpodctl ssh connect <pod_id>

# Connect directly (copy command from above)
ssh -p <port> root@<ip> -i ~/.ssh/runpod_key

Mount Pod Filesystem (SSHFS)

./scripts/mount_pod.sh <pod_id> [base_dir]

Mounts pod to ~/pods/<pod_id> by default.

Access files:

ls ~/pods/<pod_id>/
cat ~/pods/<pod_id>/workspace/my-project/train.py

Unmount:

fusermount -u ~/pods/<pod_id>

Helper Script

ScriptPurpose
mount_pod.shMount pod filesystem via SSHFS (no runpodctl equivalent)

Web Service Access

Proxy URLs:

https://<pod_id>-<port>.proxy.runpod.net

Common ports:

  • 8188: ComfyUI
  • 7860: Gradio
  • 8888: Jupyter
  • 8080: Dev tools