companion-clis — Claude Code skill: what it does, how to install
Use this skill to guide Runpod work with the HuggingFace, GitHub, Docker, and AWS command-line tools. It fits tasks involving models, worker repositories, images, or network volumes.
npx skills add runpod/runpod-plugins-official --skill companion-clis -a claude-codeWhat companion-clis does
The skill points an agent to the relevant CLI reference. hf fetches Hub models for caching or image builds; gh handles worker repositories and releases; docker builds and pushes images; and aws accesses network-volume storage through Runpod’s S3 API. Each tool has its own authentication and command guide, with setup instructions kept separate.
Credentials for the selected service are needed before use. Runpod S3 operations require Runpod-issued keys, plus the volume’s datacenter and the matching endpoint on each command. For Docker images, use --platform=linux/amd64 and an explicit semantic tag rather than latest. On Windows, the hf and gh setup guides use WSL2, so keep paths and credentials in the environment where those tools run.
What it helps with
- fetch a HuggingFace model for a Docker image
- manage a worker repository and publish a release
- build and push an image for Runpod
- transfer files to a network volume through Runpod’s S3 API
Example prompts for the agent
- Fetch a HuggingFace model so I can include it in a Docker image for Runpod.
- Prepare a release for this worker repository with
ghso the Hub can index it. - Build an image for Runpod and push it to Docker Hub with an explicit tag.
How to install companion-clis
1Skills CLI (Vercel)
npx skills add runpod/runpod-plugins-official --skill companion-clis -a claude-code2Manually: put the files in place
~/.claude/skills/companion-clis/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/companion-clis/
1Skills CLI (Vercel)
npx skills add runpod/runpod-plugins-official --skill companion-clis -a codex2Manually: put the files in place
.agents/skills/companion-clis/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add runpod/runpod-plugins-official --skill companion-clis -a cursor2Manually: put the files in place
.cursor/skills/companion-clis/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install runpod/runpod-plugins-official companion-clis2Manually: put the files in place
.github/skills/companion-clis/SKILL.md1Skills CLI (Vercel)
npx skills add runpod/runpod-plugins-official --skill companion-clis -a gemini-cli2Platform CLI
gemini skills install https://github.com/runpod/runpod-plugins-official --path plugins/runpod/skills/companion-clisManually: put the files in place
.devin/skills/companion-clis/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add runpod/runpod-plugins-official --skill companion-clis -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about companion-clis
How do I install companion-clis in Claude Code?
Run npx skills add runpod/runpod-plugins-official --skill companion-clis -a claude-code. The skill file is placed at ~/.claude/skills/companion-clis/SKILL.md.
What does companion-clis do?
It guides agents through using HuggingFace, GitHub, Docker, and AWS CLIs for Runpod workflows. The skill directs each task to that tool’s command and authentication reference.
What credentials do I need for network-volume access?
Runpod’s S3 API uses your Runpod user ID as the access key and an S3 API key as the secret. Commands also need the volume’s datacenter and its endpoint.
Source text
SKILL.md · Apache-2.0
--- name: companion-clis description: Companion CLIs for Runpod workflows — HuggingFace, GitHub, Docker, and AWS. Use runpod-build-template for complete template project authoring, and the ComfyUI model-repair guide in runpod-templates for imported workflows lacking model download metadata. compatibility: Linux, macOS, Windows metadata: author: runpod version: "1.8.0" # x-release-please-version concepts: [container-image, network-volume, hub-repo] license: Apache-2.0 --- # Companion CLIs For creating or improving a documented template project, start with [runpod-build-template](../runpod-build-template/SKILL.md); return here for the selected CLI operation. Four CLIs commonly needed alongside Runpod. Each has its own **credentials + command reference** in [`reference/`](reference/) — plus a one-time `<cli>-setup.md` for install (only opened if the CLI isn't installed). Load only the one the task needs, not all four. If the request starts with an imported ComfyUI workflow whose model filenames lack verified URLs or hashes, route to the [ComfyUI model-repair guide](../runpod-templates/reference/comfyui-model-repair.md) in runpod-templates. Return here when the exact Hugging Face repository/file is already known and the task is simply to download, cache, or bake that artifact. | CLI | Use it to | Full reference | |-----|-----------|----------------| | `hf` (HuggingFace) | Download models from the Hub to cache/bake into images | [reference/huggingface.md](reference/huggingface.md) | | `gh` (GitHub) | Manage worker repos + cut releases (Hub indexes releases) | [reference/github.md](reference/github.md) | | `docker` | Build/validate/push images to Docker Hub for Runpod to pull | [reference/docker.md](reference/docker.md) | | `aws` (S3) | Read/write network-volume storage over Runpod's S3 API | [reference/aws.md](reference/aws.md) | Each requires credentials before use. Read the per-tool reference for auth steps and commands; install is a separate one-time `<cli>-setup.md`. These CLIs are usually one step inside a larger job. For the whole job the verified example is in [runpod/golden-paths/README.md](../runpod/golden-paths/README.md) — baking vs mounting a model ([25](../runpod/golden-paths/25-bake-vs-mount/README.md)), building a minimal image ([22](../runpod/golden-paths/22-minimal-pod-image/README.md)), or moving data to a network volume ([07](../runpod/golden-paths/07-network-volume-handoff.md)). These are third-party CLIs on their own release trains, so **`<cli> --help` is authoritative for flags and subcommands** — the references here cover the Runpod-specific usage and the traps, not the tool's full surface. Check `--help` before reporting that one of them cannot do something. ## Windows: choose the shell, then set up WSL2 if needed Check existing native, WSL2 or remote tools before installing another copy. The Windows `hf` and `gh` setup recipes in this skill use WSL2 and their Linux installers. If choosing that route and WSL2 is missing, run this in PowerShell as Administrator, then restart if prompted: ```powershell wsl --install ``` Afterward open the Ubuntu app to finish setup, then follow the **Linux** instructions in each reference. Keep commands, credentials and paths in the selected environment. File authoring alone does not require installing these CLIs. ## HuggingFace CLI Download models locally so they're cached for a Docker build/run. Auth and `hf download` recipes: **[reference/huggingface.md](reference/huggingface.md)** (install: [reference/huggingface-setup.md](reference/huggingface-setup.md)). - Use the standalone `hf` CLI, **not** `pip install huggingface_hub` (that's the older `huggingface-cli` with different syntax). - Auth via `hf auth login`, or `export HF_TOKEN=hf_...` (env var wins over saved token). ## GitHub CLI Manage worker repositories and cut releases. Auth and commands: **[reference/github.md](reference/github.md)** (install + SSH-key setup: [reference/github-setup.md](reference/github-setup.md)). - **The Hub indexes releases, not commits** — every Hub listing update needs a new `gh release create`. - One SSH key (`ssh-keygen -t ed25519`) registers with both GitHub (`gh ssh-key add`) and HuggingFace (paste in browser). ## Docker Build, validate, and push images to Docker Hub. Credentials and commands: **[reference/docker.md](reference/docker.md)** (install: [reference/docker-setup.md](reference/docker-setup.md)). - **Always build `--platform=linux/amd64`** — Runpod runs on x86 Linux. - **Always use explicit semantic tags; never `latest`** — `latest` doesn't track the newest push, so workers can silently pull the wrong image. - Docker Hub auth uses a **personal access token**, not your password. For private images, register the credential once in Console → Container Registry Settings. ## AWS CLI Access network-volume storage over Runpod's S3-compatible API (bucket name = network volume ID). Credentials, region rules, and commands: **[reference/aws.md](reference/aws.md)** (install: [reference/aws-setup.md](reference/aws-setup.md)). - Runpod's S3 API, **not AWS**: access key = Runpod **user id** (`user_...`), secret = S3 API key (`rps_...`). - **S3 API keys are Console-only.** No `runpodctl`/REST/GraphQL creates them — if they're not already in `~/.aws/credentials`/env and S3 access is needed, **stop and ask the user** to generate them (Settings > S3 API Keys). - Every command needs `--region DATACENTER --endpoint-url https://s3api-DATACENTER.runpod.io/` (datacenter = the volume's DC, not an AWS region). - For large/many-file transfers with reliable resume, see [reference/aws.md → optional resumable volume transfers](reference/aws.md#optional-resumable-volume-transfers-community-tool).
© runpod · Apache-2.0 · runpod/runpod-plugins-official