Runpod Templates
>-
- Skill ID
- runpod/runpod-plugins-official/runpod-templates
- Publisher
- runpod
- Repository
- runpod-plugins-official
- Installs
- 172
- Files
- 24
- License
- Apache-2.0
- Synced
- Sep 16, 2026
Open any RiverX project, open the Skills panel in the chat, and search for this identifier. The files are fetched from the source repository at install time.
runpod/runpod-plugins-official/runpod-templatesInstalls these files- SKILL.md
- evals/always-output-workflow.eval.md
- evals/ambiguous-filename.eval.md
- evals/api-inventory-only.eval.md
- evals/gated-model.eval.md
- evals/mixed-resolved-ambiguous-output.eval.md
- evals/nontechnical-handoff.eval.md
- evals/png-output-extraction.eval.md
- evals/repair-and-handoff.eval.md
- evals/runpoddirect-required-handoff.eval.md
- evals/support-intake.eval.md
- evals/template-recommendation.eval.md
- evals/unsafe-download-url.eval.md
- reference/comfyui-model-repair.md
- reference/comfyui-repair/metadata.md
- reference/comfyui-repair/resolution.md
- reference/comfyui-repair/runpoddirect.md
- reference/comfyui.md
- reference/pytorch.md
- scripts/apply_model_metadata.py
- scripts/extract_png_workflow.py
- scripts/inventory_workflow_models.py
- tests/test_model_metadata_scripts.py
- tests/test_png_workflow_extractor.py
What this skill tells the agent
Official Runpod templates
Prefer an official template over building an image. Runpod maintains prebuilt images for common workloads; deploying one is a create + poll, with no SSH install step. This skill is the reference for what those images actually are. It does not manage infrastructure — deploy with runpod-mcp (if connected) or runpodctl.
Terms — "template" vs the Hub
Two different products share the word "Hub", and conflating them derails discovery:
| Term | What it is | Runs as | Discover with |
|---|---|---|---|
| Pod template (this skill) | A saved pod config — image + ports + disk + env. The official ones appear on Console Hub template pages (console.runpod.io/hub/template/<id>) | a pod | runpodctl template list --type official / template search · REST GET /v2/catalog/templates |
| Hub repo / listing | A packaged serverless worker (e.g. runpod-workers/worker-comfyui) with a handler, deployed as an endpoint | serverless | runpodctl hub list / hub search · MCP list-hub-repos / deploy-hub-repo |
Same word, disjoint catalogs: hub search comfyui returns only the serverless worker and none of the official ComfyUI pod templates, and template search returns no Hub repos. In the REST v2 catalog, pod vs serverless templates are told apart by each entry's serverless flag.
What "official" means, and how to find them
A template is Runpod-maintained when it reports isRunpod: true. Anything else in search results is community-published: usable, but not covered by this skill and not version-guaranteed.
runpodctl template list --type official # the whole official set (14 as of 2026-08-25)
runpodctl template search <name> # by name; check isRunpod: true
runpodctl template get <template-id> # image, ports, portsConfig, disk + full readmetemplate get returns the template's readme — the description maintained alongside the image, and the authoritative answer when it disagrees with this skill. Take image tags, ports, and env from these commands, not from these files: the templates ship on their own release train and move faster than this repo. The reference files record the shape and the gotchas, which is the expensive part to rediscover.
⚠️ `runpodctl hub ...` is not how you find pod templates — see Terms.
To hand a user a Console link, use https://console.runpod.io/hub/template/<template-id>.
REST v2 has no template search — only slices you filter yourself
REST v2 has no query/search parameter for templates, so every "search" is a client-side filter over a fetched slice:
| Endpoint | Params | Returns | ||
|---|---|---|---|---|
GET /v2/catalog/templates | `source=official\ | verified\ | community (default official`) | the public catalog slice |
GET /v2/templates | none | only templates you own | ||
GET /v2/templates/{id} | — | one template, owned or catalog |
`official` (14) and `verified` (3) are fully enumerable; `community` is capped at 100 with pagination explicitly unsupported. A community template past that cap never enters a slice the API can return, and runpodctl template search reads those same server-side slices — so it has no view past the cap either. If a user names one you cannot find, ask them for the template id rather than concluding it does not exist.
isRunpod is a GraphQL/v1 field with no v2 equivalent — in v2, "official" is the source slice you requested, not a flag on the record.
Catalog entries carry `allowedCudaVersions`, which is the reliable way to pick between CUDA-line variants of the same template — pair it with runpodctl pod create --min-cuda-version instead of inferring from the GPU name.
The templates
| Workload | Reference | Deploy walkthrough |
|---|---|---|
| ComfyUI — image generation UI at a URL | `reference/comfyui.md` | golden path 02, variant B |
| PyTorch — general GPU base / dev box (2.1 → 2.9, incl. cluster + ROCm builds) | `reference/pytorch.md` | golden path 06 |
| Ubuntu — bare 20.04 / 22.04 / 24.04 (CPU category) | TODO | — |
| Network storage file browser (GPU + CPU) | TODO | golden path 07 |
Add a template by adding one file here and one row above. Do not create a new skill per template — the task shape is identical and every registered skill costs context in every session.
How to use a template reference
Each file under reference/ answers the same questions in the same order, so an agent can skim to the one it needs:
- Identity — template name, id, image, upstream source repo.
- Variants — CUDA/arch/GPU-generation splits and which to pick.
- Ports and credentials — what is exposed and any default login.
- Autostart — what is already running on boot, with the exact command.
- Paths — where the app, its config, and its data live (and what a network volume mount changes).
- Readiness — how long first boot takes and the exact signal for "actually serving".
Runningis never the signal. - What does not ship — the gap between "booted" and "usable", and how to close it programmatically rather than by clicking.
- Sizing — container disk and minimum VRAM.
- Version pinning — how to hold a known-good version.
One file is the exception: `reference/comfyui-model-repair.md` is a usage guide — a ComfyUI workflow repair procedure that drives the scripts in `scripts/` — not a 9-question template reference.
Routing onward — this skill is the hub, not the destination
A user asking about a template rarely wants the reference file itself; they want a template deployed, fixed, or replaced. Land here, identify which, and hand off:
| The user wants to… | Send them to |
|---|---|
| Deploy a template end to end | the matching golden path in the table above (index) — live-verified runs with real commands |
| Fix a pod that won't serve ("Running" but URL dead, 404/502) | the template's reference file, §Readiness — then `runpod-usage/reference/gotchas.md` |
| Fix a ComfyUI workflow whose models won't download (missing/broken model metadata, imported workflow or PNG) | the repair guide — it drives the repair scripts in `scripts/`. The official ComfyUI templates ship ComfyUI-RunpodDirect, so its automatic-download path applies |
| Add models / files to a running template pod | the template's reference file (§What does not ship), or companion-clis for generic Hugging Face transfers |
| Customize beyond what the template ships (pinned versions, extra nodes, lighter image) | `runpod-usage/reference/building-images.md` — build FROM the official base |
| A serverless worker, not a pod | not a pod template — Hub workers via runpodctl / runpod-mcp |
Reference files here answer what is in the image; they never duplicate a walkthrough or a repair procedure — they point at the owner.
