[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M7A7XF2FYS7QPHSGECHQREYA":3,"skill-same:01M7A7XF2FYS7QPHSGECHQREYA":104},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":16,"sourceHtmlUrl":17,"categories":18,"keywords":19,"publishedAt":20,"linkOnly":21,"markdownContent":22,"markdownBody":23,"frontMatter":24,"refName":49,"commitSha":50,"skillDirectory":51,"forksCount":14,"repositoryHtmlUrl":52,"repositoryHomepageUrl":6,"ownerHtmlUrl":53,"ownerBlogUrl":6,"ownerDescription":54,"updatedAt":55,"install":56,"resources":69},"01M7A7XF2FYS7QPHSGECHQREYA","implementing-container-image-minimal-base-with-distroless",null,"Reduces container attack surface by building application images on Google distroless base images that ship only the application runtime - no shell, package manager, or OS utilities - using multi-stage build patterns plus debugging and scanning techniques adapted to distroless. Use when hardening container images, cutting attack surface in a container architecture, or answering an assessment finding about bloated base images. Keywords: distroless, multi-stage build, no shell, nonroot tag, debug image, scratch, attack surface. Do not use for scanning an image for known CVEs - use scanning-docker-images-with-trivy.","NeelakshSaxena\u002FVayu","NeelakshSaxena","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F87892838?v=4","01M7A3B9YFS6F6N9DD1787DT86","Neelaksh Saxena","01M7A3B9ZKBT09MNMPX2XN69BY",0,"Apache-2.0","https:\u002F\u002Fgithub.com\u002FNeelakshSaxena\u002FVayu\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fimplementing-container-image-minimal-base-with-distroless\u002FLICENSE","https:\u002F\u002Fgithub.com\u002FNeelakshSaxena\u002FVayu\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fimplementing-container-image-minimal-base-with-distroless\u002FSKILL.md",[],[],"2026-11-15 14:19:17",false,"---\nname: implementing-container-image-minimal-base-with-distroless\ndescription: >-\n  Reduces container attack surface by building application images on Google distroless base\n  images that ship only the application runtime - no shell, package manager, or OS utilities -\n  using multi-stage build patterns plus debugging and scanning techniques adapted to\n  distroless. Use when hardening container images, cutting attack surface in a container\n  architecture, or answering an assessment finding about bloated base images. Keywords:\n  distroless, multi-stage build, no shell, nonroot tag, debug image, scratch, attack surface.\n  Do not use for scanning an image for known CVEs - use scanning-docker-images-with-trivy.\ndomain: cybersecurity\nsubdomain: container-security\ntags:\n- distroless\n- container-images\n- minimal-base\n- attack-surface\n- docker\n- security-hardening\n- supply-chain\n- kubernetes\nversion: '1.0'\nauthor: mahipal\nlicense: Apache-2.0\nnist_csf:\n- PR.PS-01\n- PR.IR-01\n- ID.AM-08\n- DE.CM-01\nmitre_attack:\n- T1610\n- T1611\n- T1609\n- T1525\n- T1195\n---\n\n# Implementing Container Image Minimal Base with Distroless\n\n## Overview\n\nGoogle distroless images contain only your application and its runtime dependencies, without package managers, shells, or other programs found in standard Linux distributions. By eliminating unnecessary OS components, distroless images achieve up to 95% reduction in attack surface compared to traditional base images like ubuntu or debian. Major projects including Kubernetes itself, Knative, and Tekton use distroless images in production. As of 2025, Docker also offers Hardened Images (DHI) as an open-source alternative for minimal container bases.\n\n\n## When to Use\n\n- When deploying or configuring implementing container image minimal base with distroless capabilities in your environment\n- When establishing security controls aligned to compliance requirements\n- When building or improving security architecture for this domain\n- When conducting security assessments that require this implementation\n\n## Prerequisites\n\n- Docker 20.10+ or compatible container build tool (Buildah, Kaniko)\n- Multi-stage Dockerfile knowledge\n- Application compiled as a static binary or with runtime bundled\n- Container registry for image storage\n\n## Available Distroless Images\n\n| Image | Use Case | Size |\n|-------|----------|------|\n| `gcr.io\u002Fdistroless\u002Fstatic-debian12` | Statically compiled binaries (Go, Rust) | ~2MB |\n| `gcr.io\u002Fdistroless\u002Fbase-debian12` | Dynamically linked binaries needing glibc | ~20MB |\n| `gcr.io\u002Fdistroless\u002Fcc-debian12` | C\u002FC++ applications needing libstdc++ | ~25MB |\n| `gcr.io\u002Fdistroless\u002Fjava21-debian12` | Java 21 applications | ~220MB |\n| `gcr.io\u002Fdistroless\u002Fpython3-debian12` | Python 3 applications | ~50MB |\n| `gcr.io\u002Fdistroless\u002Fnodejs22-debian12` | Node.js 22 applications | ~130MB |\n\n## Multi-Stage Build Patterns\n\n### Go Application\n\n```dockerfile\n# Build stage\nFROM golang:1.22-bookworm AS builder\nWORKDIR \u002Fapp\nCOPY go.mod go.sum .\u002F\nRUN go mod download\nCOPY . .\nRUN CGO_ENABLED=0 GOOS=linux go build -ldflags=\"-s -w\" -o \u002Fserver .\u002Fcmd\u002Fserver\n\n# Runtime stage - static distroless\nFROM gcr.io\u002Fdistroless\u002Fstatic-debian12:nonroot\nCOPY --from=builder \u002Fserver \u002Fserver\nUSER nonroot:nonroot\nENTRYPOINT [\"\u002Fserver\"]\n```\n\n### Java Application\n\n```dockerfile\n# Build stage\nFROM maven:3.9-eclipse-temurin-21 AS builder\nWORKDIR \u002Fapp\nCOPY pom.xml .\nRUN mvn dependency:go-offline\nCOPY src .\u002Fsrc\nRUN mvn package -DskipTests\n\n# Runtime stage - Java distroless\nFROM gcr.io\u002Fdistroless\u002Fjava21-debian12:nonroot\nCOPY --from=builder \u002Fapp\u002Ftarget\u002Fapp.jar \u002Fapp.jar\nUSER nonroot:nonroot\nENTRYPOINT [\"java\", \"-jar\", \"\u002Fapp.jar\"]\n```\n\n### Python Application\n\n```dockerfile\n# Build stage\nFROM python:3.12-bookworm AS builder\nWORKDIR \u002Fapp\nCOPY requirements.txt .\nRUN pip install --no-cache-dir --target=\u002Fdeps -r requirements.txt\nCOPY . .\n\n# Runtime stage - Python distroless\nFROM gcr.io\u002Fdistroless\u002Fpython3-debian12:nonroot\nWORKDIR \u002Fapp\nCOPY --from=builder \u002Fdeps \u002Fdeps\nCOPY --from=builder \u002Fapp \u002Fapp\nENV PYTHONPATH=\u002Fdeps\nUSER nonroot:nonroot\nENTRYPOINT [\"python3\", \"\u002Fapp\u002Fmain.py\"]\n```\n\n### Node.js Application\n\n```dockerfile\n# Build stage\nFROM node:22-bookworm AS builder\nWORKDIR \u002Fapp\nCOPY package*.json .\u002F\nRUN npm ci --production\nCOPY . .\n\n# Runtime stage - Node distroless\nFROM gcr.io\u002Fdistroless\u002Fnodejs22-debian12:nonroot\nWORKDIR \u002Fapp\nCOPY --from=builder \u002Fapp .\nUSER nonroot:nonroot\nCMD [\"server.js\"]\n```\n\n## Security Benefits\n\n### Attack Surface Comparison\n\n| Component | Ubuntu | Alpine | Distroless |\n|-----------|--------|--------|-----------|\n| Shell (bash\u002Fsh) | Yes | Yes | No |\n| Package manager | apt | apk | No |\n| coreutils | Full | BusyBox | No |\n| curl\u002Fwget | Yes | Yes | No |\n| User management | Yes | Yes | No |\n| Known CVEs (typical) | 50-200+ | 5-20 | 0-5 |\n| Image size (base) | ~77MB | ~7MB | ~2-20MB |\n\n### Security Implications\n\n- **No shell**: Attackers cannot exec into containers to run commands\n- **No package manager**: Cannot install additional tools or malware\n- **No coreutils**: No `cat`, `ls`, `find`, `curl` for reconnaissance\n- **Minimal CVEs**: Fewer packages means fewer vulnerabilities to patch\n- **Non-root by default**: `:nonroot` tag runs as UID 65534\n\n## Debugging Distroless Containers\n\nSince distroless has no shell, use these techniques for debugging:\n\n### Debug Image Variant\n\n```dockerfile\n# Use debug variant in non-production environments only\nFROM gcr.io\u002Fdistroless\u002Fbase-debian12:debug\n# Includes busybox shell at \u002Fbusybox\u002Fsh\n```\n\n```bash\n# Exec into debug variant\nkubectl exec -it pod-name -- \u002Fbusybox\u002Fsh\n```\n\n### Ephemeral Debug Containers (Kubernetes 1.25+)\n\n```bash\n# Attach a debug container with full tooling\nkubectl debug -it pod-name --image=busybox:1.36 --target=app-container\n```\n\n### Crane\u002FDive for Image Inspection\n\n```bash\n# Inspect image layers without running\ncrane export gcr.io\u002Fdistroless\u002Fstatic-debian12 - | tar -tf - | head -50\n\n# Analyze image layers\ndive gcr.io\u002Fdistroless\u002Fstatic-debian12\n```\n\n## Image Scanning Results\n\nTypical vulnerability comparison using Trivy:\n\n```bash\n# Scan Ubuntu-based image\ntrivy image myapp:ubuntu\n# Result: 47 vulnerabilities (3 CRITICAL, 12 HIGH)\n\n# Scan Distroless-based image\ntrivy image myapp:distroless\n# Result: 2 vulnerabilities (0 CRITICAL, 0 HIGH)\n```\n\n## References\n\n- [GoogleContainerTools\u002Fdistroless GitHub](https:\u002F\u002Fgithub.com\u002FGoogleContainerTools\u002Fdistroless)\n- [Distroless Images - Docker Documentation](https:\u002F\u002Fdocs.docker.com\u002Fdhi\u002Fcore-concepts\u002Fdistroless\u002F)\n- [Alpine, Distroless, or Scratch? - Google Cloud](https:\u002F\u002Fmedium.com\u002Fgoogle-cloud\u002Falpine-distroless-or-scratch-caac35250e0b)\n- [Docker Hardened Images](https:\u002F\u002Fwww.infoq.com\u002Fnews\u002F2025\u002F12\u002Fdocker-hardened-images\u002F)\n","# Implementing Container Image Minimal Base with Distroless\n\n## Overview\n\nGoogle distroless images contain only your application and its runtime dependencies, without package managers, shells, or other programs found in standard Linux distributions. By eliminating unnecessary OS components, distroless images achieve up to 95% reduction in attack surface compared to traditional base images like ubuntu or debian. Major projects including Kubernetes itself, Knative, and Tekton use distroless images in production. As of 2025, Docker also offers Hardened Images (DHI) as an open-source alternative for minimal container bases.\n\n\n## When to Use\n\n- When deploying or configuring implementing container image minimal base with distroless capabilities in your environment\n- When establishing security controls aligned to compliance requirements\n- When building or improving security architecture for this domain\n- When conducting security assessments that require this implementation\n\n## Prerequisites\n\n- Docker 20.10+ or compatible container build tool (Buildah, Kaniko)\n- Multi-stage Dockerfile knowledge\n- Application compiled as a static binary or with runtime bundled\n- Container registry for image storage\n\n## Available Distroless Images\n\n| Image | Use Case | Size |\n|-------|----------|------|\n| `gcr.io\u002Fdistroless\u002Fstatic-debian12` | Statically compiled binaries (Go, Rust) | ~2MB |\n| `gcr.io\u002Fdistroless\u002Fbase-debian12` | Dynamically linked binaries needing glibc | ~20MB |\n| `gcr.io\u002Fdistroless\u002Fcc-debian12` | C\u002FC++ applications needing libstdc++ | ~25MB |\n| `gcr.io\u002Fdistroless\u002Fjava21-debian12` | Java 21 applications | ~220MB |\n| `gcr.io\u002Fdistroless\u002Fpython3-debian12` | Python 3 applications | ~50MB |\n| `gcr.io\u002Fdistroless\u002Fnodejs22-debian12` | Node.js 22 applications | ~130MB |\n\n## Multi-Stage Build Patterns\n\n### Go Application\n\n```dockerfile\n# Build stage\nFROM golang:1.22-bookworm AS builder\nWORKDIR \u002Fapp\nCOPY go.mod go.sum .\u002F\nRUN go mod download\nCOPY . .\nRUN CGO_ENABLED=0 GOOS=linux go build -ldflags=\"-s -w\" -o \u002Fserver .\u002Fcmd\u002Fserver\n\n# Runtime stage - static distroless\nFROM gcr.io\u002Fdistroless\u002Fstatic-debian12:nonroot\nCOPY --from=builder \u002Fserver \u002Fserver\nUSER nonroot:nonroot\nENTRYPOINT [\"\u002Fserver\"]\n```\n\n### Java Application\n\n```dockerfile\n# Build stage\nFROM maven:3.9-eclipse-temurin-21 AS builder\nWORKDIR \u002Fapp\nCOPY pom.xml .\nRUN mvn dependency:go-offline\nCOPY src .\u002Fsrc\nRUN mvn package -DskipTests\n\n# Runtime stage - Java distroless\nFROM gcr.io\u002Fdistroless\u002Fjava21-debian12:nonroot\nCOPY --from=builder \u002Fapp\u002Ftarget\u002Fapp.jar \u002Fapp.jar\nUSER nonroot:nonroot\nENTRYPOINT [\"java\", \"-jar\", \"\u002Fapp.jar\"]\n```\n\n### Python Application\n\n```dockerfile\n# Build stage\nFROM python:3.12-bookworm AS builder\nWORKDIR \u002Fapp\nCOPY requirements.txt .\nRUN pip install --no-cache-dir --target=\u002Fdeps -r requirements.txt\nCOPY . .\n\n# Runtime stage - Python distroless\nFROM gcr.io\u002Fdistroless\u002Fpython3-debian12:nonroot\nWORKDIR \u002Fapp\nCOPY --from=builder \u002Fdeps \u002Fdeps\nCOPY --from=builder \u002Fapp \u002Fapp\nENV PYTHONPATH=\u002Fdeps\nUSER nonroot:nonroot\nENTRYPOINT [\"python3\", \"\u002Fapp\u002Fmain.py\"]\n```\n\n### Node.js Application\n\n```dockerfile\n# Build stage\nFROM node:22-bookworm AS builder\nWORKDIR \u002Fapp\nCOPY package*.json .\u002F\nRUN npm ci --production\nCOPY . .\n\n# Runtime stage - Node distroless\nFROM gcr.io\u002Fdistroless\u002Fnodejs22-debian12:nonroot\nWORKDIR \u002Fapp\nCOPY --from=builder \u002Fapp .\nUSER nonroot:nonroot\nCMD [\"server.js\"]\n```\n\n## Security Benefits\n\n### Attack Surface Comparison\n\n| Component | Ubuntu | Alpine | Distroless |\n|-----------|--------|--------|-----------|\n| Shell (bash\u002Fsh) | Yes | Yes | No |\n| Package manager | apt | apk | No |\n| coreutils | Full | BusyBox | No |\n| curl\u002Fwget | Yes | Yes | No |\n| User management | Yes | Yes | No |\n| Known CVEs (typical) | 50-200+ | 5-20 | 0-5 |\n| Image size (base) | ~77MB | ~7MB | ~2-20MB |\n\n### Security Implications\n\n- **No shell**: Attackers cannot exec into containers to run commands\n- **No package manager**: Cannot install additional tools or malware\n- **No coreutils**: No `cat`, `ls`, `find`, `curl` for reconnaissance\n- **Minimal CVEs**: Fewer packages means fewer vulnerabilities to patch\n- **Non-root by default**: `:nonroot` tag runs as UID 65534\n\n## Debugging Distroless Containers\n\nSince distroless has no shell, use these techniques for debugging:\n\n### Debug Image Variant\n\n```dockerfile\n# Use debug variant in non-production environments only\nFROM gcr.io\u002Fdistroless\u002Fbase-debian12:debug\n# Includes busybox shell at \u002Fbusybox\u002Fsh\n```\n\n```bash\n# Exec into debug variant\nkubectl exec -it pod-name -- \u002Fbusybox\u002Fsh\n```\n\n### Ephemeral Debug Containers (Kubernetes 1.25+)\n\n```bash\n# Attach a debug container with full tooling\nkubectl debug -it pod-name --image=busybox:1.36 --target=app-container\n```\n\n### Crane\u002FDive for Image Inspection\n\n```bash\n# Inspect image layers without running\ncrane export gcr.io\u002Fdistroless\u002Fstatic-debian12 - | tar -tf - | head -50\n\n# Analyze image layers\ndive gcr.io\u002Fdistroless\u002Fstatic-debian12\n```\n\n## Image Scanning Results\n\nTypical vulnerability comparison using Trivy:\n\n```bash\n# Scan Ubuntu-based image\ntrivy image myapp:ubuntu\n# Result: 47 vulnerabilities (3 CRITICAL, 12 HIGH)\n\n# Scan Distroless-based image\ntrivy image myapp:distroless\n# Result: 2 vulnerabilities (0 CRITICAL, 0 HIGH)\n```\n\n## References\n\n- [GoogleContainerTools\u002Fdistroless GitHub](https:\u002F\u002Fgithub.com\u002FGoogleContainerTools\u002Fdistroless)\n- [Distroless Images - Docker Documentation](https:\u002F\u002Fdocs.docker.com\u002Fdhi\u002Fcore-concepts\u002Fdistroless\u002F)\n- [Alpine, Distroless, or Scratch? - Google Cloud](https:\u002F\u002Fmedium.com\u002Fgoogle-cloud\u002Falpine-distroless-or-scratch-caac35250e0b)\n- [Docker Hardened Images](https:\u002F\u002Fwww.infoq.com\u002Fnews\u002F2025\u002F12\u002Fdocker-hardened-images\u002F)\n",{"name":5,"tags":25,"author":34,"domain":35,"license":15,"version":36,"nist_csf":37,"subdomain":42,"description":7,"mitre_attack":43},[26,27,28,29,30,31,32,33],"distroless","container-images","minimal-base","attack-surface","docker","security-hardening","supply-chain","kubernetes","mahipal","cybersecurity","1.0",[38,39,40,41],"PR.PS-01","PR.IR-01","ID.AM-08","DE.CM-01","container-security",[44,45,46,47,48],"T1610","T1611","T1609","T1525","T1195","main","7540bbccf0c1ded6156a467b02c95b61ad62413f",".agents\u002Fskills\u002Fimplementing-container-image-minimal-base-with-distroless","https:\u002F\u002Fgithub.com\u002FNeelakshSaxena\u002FVayu","https:\u002F\u002Fgithub.com\u002FNeelakshSaxena","Currently exploring the intersection of tech","2026-09-11 03:02:31",{"source":8,"skillName":5,"commands":57,"prompt":67,"zipAvailable":68},[58,61,64],{"tool":59,"command":60},"npx","npx skills add NeelakshSaxena\u002FVayu --skill implementing-container-image-minimal-base-with-distroless",{"tool":62,"command":63},"bunx","bunx skills add NeelakshSaxena\u002FVayu --skill implementing-container-image-minimal-base-with-distroless",{"tool":65,"command":66},"pnpm","pnpm dlx skills add NeelakshSaxena\u002FVayu --skill implementing-container-image-minimal-base-with-distroless","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FNeelakshSaxena\u002FVayu\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fimplementing-container-image-minimal-base-with-distroless\u002FSKILL.md",true,[70,76,80,86,90,94,100],{"path":71,"resourceType":72,"resourceTypeDesc":73,"sizeBytes":74,"sourceHtmlUrl":75},"assets\u002Ftemplate.md","ASSET","资产文件",732,"https:\u002F\u002Fgithub.com\u002FNeelakshSaxena\u002FVayu\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fimplementing-container-image-minimal-base-with-distroless\u002Fassets\u002Ftemplate.md",{"path":77,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":79,"sourceHtmlUrl":16},"LICENSE","许可证",11255,{"path":81,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":84,"sourceHtmlUrl":85},"references\u002Fapi-reference.md","REFERENCE","参考文档",1666,"https:\u002F\u002Fgithub.com\u002FNeelakshSaxena\u002FVayu\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fimplementing-container-image-minimal-base-with-distroless\u002Freferences\u002Fapi-reference.md",{"path":87,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":88,"sourceHtmlUrl":89},"references\u002Fstandards.md",626,"https:\u002F\u002Fgithub.com\u002FNeelakshSaxena\u002FVayu\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fimplementing-container-image-minimal-base-with-distroless\u002Freferences\u002Fstandards.md",{"path":91,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":92,"sourceHtmlUrl":93},"references\u002Fworkflows.md",756,"https:\u002F\u002Fgithub.com\u002FNeelakshSaxena\u002FVayu\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fimplementing-container-image-minimal-base-with-distroless\u002Freferences\u002Fworkflows.md",{"path":95,"resourceType":96,"resourceTypeDesc":97,"sizeBytes":98,"sourceHtmlUrl":99},"scripts\u002Fagent.py","SCRIPT","脚本",5914,"https:\u002F\u002Fgithub.com\u002FNeelakshSaxena\u002FVayu\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fimplementing-container-image-minimal-base-with-distroless\u002Fscripts\u002Fagent.py",{"path":101,"resourceType":96,"resourceTypeDesc":97,"sizeBytes":102,"sourceHtmlUrl":103},"scripts\u002Fprocess.py",6930,"https:\u002F\u002Fgithub.com\u002FNeelakshSaxena\u002FVayu\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fimplementing-container-image-minimal-base-with-distroless\u002Fscripts\u002Fprocess.py",[105,112,119,126,133,140],{"skillNo":106,"name":107,"nameZh":6,"description":108,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":109,"categories":110,"keywords":111,"publishedAt":20},"01M7ACCCVNCFKMA9X6D15X6G98","runpodctl","Runpod CLI for managing GPU\u002FCPU workloads from the terminal — pods, serverless endpoints, templates, network volumes, Hub deploys, models, SSH, and file transfer (send\u002Freceive). Use for terminal\u002FCI\u002Fscripting, Hub browse\u002Fdeploy, SSH setup, `doctor`, or when the Runpod MCP tools are not connected. For structured tool calls in an MCP-enabled session, prefer runpod-mcp.","https:\u002F\u002Fgithub.com\u002FNeelakshSaxena\u002FVayu\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Frunpodctl\u002FSKILL.md",[],[],{"skillNo":113,"name":114,"nameZh":6,"description":115,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":116,"categories":117,"keywords":118,"publishedAt":20},"01M7ACC63SRHEA5KMCHSMZK2TC","runpod","Start here for any Runpod task — running GPU\u002FCPU pods, deploying serverless endpoints, templates, network volumes, building images, or understanding how Runpod works. Routes to the right skill (runpod-mcp, runpodctl, flash, companion-clis, runpod-usage, runpod-templates, runpod-migrate) and indexes two dozen live-verified end-to-end examples (golden paths) — use it when the lane is unclear, and for any multi-step or provisioning task even when it is not.","https:\u002F\u002Fgithub.com\u002FNeelakshSaxena\u002FVayu\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Frunpod\u002FSKILL.md",[],[],{"skillNo":120,"name":121,"nameZh":6,"description":122,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":123,"categories":124,"keywords":125,"publishedAt":20},"01M7ACC0Q1C89N9BZBV91CTQTF","runpod-usage","How Runpod works and how to work it — pods vs serverless, GPU\u002FVRAM selection, storage, building a container, networking, plus the agentic pod development loop (provision → ssh-exec → set up → poll readiness) and on-pod install hygiene (uv\u002Fapt). Use to answer \"how does X work\", \"which GPU\", \"how do I build a container\", or \"how do I stand up a workload on a pod\". Guidance, not a tool — execute with runpodctl, runpod-mcp, or flash.","https:\u002F\u002Fgithub.com\u002FNeelakshSaxena\u002FVayu\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Frunpod-usage\u002FSKILL.md",[],[],{"skillNo":127,"name":128,"nameZh":6,"description":129,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":130,"categories":131,"keywords":132,"publishedAt":20},"01M7ACBRPE345GF5GM5B8P8RRC","runpod-templates","Runpod's official prebuilt pod templates (ComfyUI, PyTorch, and others): what each image ships, which ports and paths it uses, how to pick one, how to pin a version, and what is missing on first boot. Use when a task says \"run \u003CX> on a pod\" and an official template already covers it, instead of building an image — and when a user needs help with or wants to fix something about a Runpod template they are already running (won't boot, can't reach the UI, missing models, wrong CUDA line, broken ComfyUI workflow metadata on imported workflows): start here and route onward. Deploy with runpodctl or runpod-mcp; end-to-end walkthroughs live in the runpod router's golden paths.","https:\u002F\u002Fgithub.com\u002FNeelakshSaxena\u002FVayu\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Frunpod-templates\u002FSKILL.md",[],[],{"skillNo":134,"name":135,"nameZh":6,"description":136,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":137,"categories":138,"keywords":139,"publishedAt":20},"01M7ACBJATHKVX1TWES2F44GY8","runpod-migrate","Migrate a codebase from the Runpod GraphQL API or REST v1 to REST v2 — inventory which parts use which API version, rewrite the call sites, flag breaking changes, and verify. Use when someone asks to move to v2, asks what v2 would change, or asks which Runpod API their code is on. For managing infrastructure rather than migrating code, use runpod-mcp or runpodctl.","https:\u002F\u002Fgithub.com\u002FNeelakshSaxena\u002FVayu\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Frunpod-migrate\u002FSKILL.md",[],[],{"skillNo":141,"name":142,"nameZh":6,"description":143,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":144,"categories":145,"keywords":146,"publishedAt":20},"01M7ACBC7GHVH6T9YEAPCG2AP8","runpod-mcp","Manage Runpod infrastructure — pods, serverless endpoints, jobs, templates, network volumes, container-registry auth, GPU\u002FCPU catalog, and billing — via the Runpod MCP server's structured tool calls. Use when the Runpod MCP tools (create-pod, list-endpoints, …) are connected in this session, or to connect them (hosted OAuth or local npx). Prefer this over runpodctl for plain infra CRUD when MCP is available; use runpodctl for the terminal, file transfer, or SSH setup.","https:\u002F\u002Fgithub.com\u002FNeelakshSaxena\u002FVayu\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Frunpod-mcp\u002FSKILL.md",[],[]]