Generated banner for Tao Setup Nvidia Gpu Host
Generated logo for Tao Setup Nvidia Gpu Host

Tao Setup Nvidia Gpu Host

NVIDIAOfficialCreated by NVIDIA Corporation

  • Skill
  • Workflow
  • Cloud and DevOps
  • Apache-2.0
  • Medium risk
  • Has scripts

From the author

Host setup for TAO GPU backends. Checks and, after user approval, installs minimum-compatible NVIDIA driver, CUDA Toolkit, and NVIDIA Container Toolkit versions for Docker/local-Docker and Kubernetes GPU worker hosts. TAO-wide defaults can be overridden by the selected model's runtime profile. The `--check-only` path works on any Linux distribution; `--install` automates debian-family (Ubuntu/Debian/Pop!_OS/Mint/Zorin/Raspbian), rhel-family (Fedora/RHEL/Rocky/AlmaLinux), and suse-family (openSUSE/SLES) hosts, and prints actionable manual-install steps for everything else. Use when the user asks to "set up an NVIDIA GPU host", "check TAO Docker GPU runtime", or prepare a Kubernetes GPU worker for TAO.
— the description by NVIDIA Corporation

AutoGineer summary

Written by AutoGineer from the skill’s own files, not by the author

This skill provides a robust mechanism to check, install, and verify the essential NVIDIA GPU software stack required for running TAO workflows on Docker or Kubernetes backends. It ensures that the host meets minimum version requirements for the NVIDIA driver, CUDA Toolkit, and NVIDIA Container Toolkit. The tool supports automated installation on major Linux distribution families (Debian, RHEL, and SUSE) and provides clear, actionable guidance for manual setup on unsupported distributions. It is designed to be used as a preflight check before executing GPU-intensive tasks.

What it does

  • Probes the host for NVIDIA driver, CUDA, and Container Toolkit versions.
  • Automates the installation of required GPU packages on Debian, RHEL, and SUSE-based systems.
  • Configures the NVIDIA Docker runtime for seamless GPU container integration.
  • Validates host readiness against TAO-wide or model-specific runtime requirements.
  • Provides manual installation instructions for unsupported Linux distributions.
  • Manages Docker engine installation and user group permissions for non-root access.

When to use it

  • Before running TAO workflows on local Docker or Kubernetes backends.
  • When troubleshooting GPU runtime issues in a TAO environment.
  • To prepare a new GPU worker node for a Kubernetes cluster.
  • To verify that a host meets the minimum version requirements for a specific model.

Advantages

  • Ensures consistent GPU environments across different Linux distributions.
  • Reduces manual configuration errors by automating repository and package setup.
  • Provides a safe, read-only check mode to preview system status without modification.
  • Supports model-specific runtime overrides for specialized requirements.
  • Offers clear, actionable feedback for manual intervention when automation is not possible.

Usage examples

“Check if my local Docker host is ready for TAO.”
The agent runs the script in --check-only mode, reporting the status of the NVIDIA driver, CUDA, and Container Toolkit, and confirms if the environment meets TAO minimums.
“Set up my Ubuntu host for TAO GPU training.”
The agent executes the installation workflow, adding necessary NVIDIA repositories, installing required packages, and configuring the Docker runtime after user approval.
“Verify my Kubernetes GPU worker node for TAO.”
The agent checks the worker node's GPU runtime and reports whether it is correctly configured to support TAO workloads.

Install

  1. Download the skill as a ZIP:

    https://mp-staging.autogineer.com/agent-skills/nvidia/tao-setup-nvidia-gpu-host/download
  2. Unzip it into the cross-client skills folder of your project:

    mkdir -p .agents/skills && unzip tao-setup-nvidia-gpu-host.zip -d .agents/skills

Documentation by NVIDIA Corporation

NVIDIA GPU Host Setup

Standalone install? If this session was not initialized by the TAO skill bank plugin, run the tao-setup skill first (host preflight, credentials, cross-skill discovery).

Use this setup skill before TAO workflows run on the docker, local-docker, or kubernetes backend. The TAO-wide default minimums are:

  • NVIDIA driver >=580 (open kernel module preferred)

  • CUDA Toolkit >=13.0

  • NVIDIA Container Toolkit >=1.19.0

  • Docker engine — only installed for docker / local-docker backends and only when Docker is missing. The package picked depends on the distro family (docker.io on Debian-family by default, moby-engine / docker-ce from download.docker.com on RHEL-family, docker on SUSE-family). Pass --skip-docker-install to opt out.

The check is safe and read-only by default — it works on any Linux distribution because it only probes nvidia-smi, the CUDA toolkit path, the installed container-toolkit package version (via dpkg/rpm/the nvidia-ctk binary version), and the Docker daemon's NVIDIA runtime.

Installation must be explicitly authorized by the user and rerun with --install. The install path is automated for these distro families:

FamilyTested distrosManagerNotes
debianUbuntu 22.04 / 24.04, Debian 12 (and derivatives Pop!_OS, Mint, Zorin, Raspbian, KDE Neon, etc. via UBUNTU_CODENAME / VERSION_CODENAME)apt-getAdds NVIDIA cuda-keyring + Container Toolkit .list. Docker via docker.io (override $DOCKER_PACKAGE_DEBIAN).
rhelFedora 39+, RHEL / Rocky / AlmaLinux 9 and 10dnf (or yum)Adds NVIDIA cuda-<distro>.repo + Container Toolkit .repo. Docker via Fedora moby-engine when available, otherwise docker-ce from download.docker.com.
suseopenSUSE Leap 15, SLES 15zypperAdds the same NVIDIA .repo files. Docker via the distribution docker package.
other (Arch, Alpine, Gentoo, NixOS, FreeBSD, …)n/an/a--install exits with a clear error listing the version targets and the NVIDIA install-guide URLs. Install manually, then rerun --check-only.

Quick Start

From the skill bank root:

# Check the local Docker backend host.
bash skills/platform/tao-setup-nvidia-gpu-host/scripts/setup-nvidia-gpu-host.sh --backend docker --check-only

# Install or repair after user approval.
bash skills/platform/tao-setup-nvidia-gpu-host/scripts/setup-nvidia-gpu-host.sh --backend docker --install

# Check a Kubernetes GPU worker host.
bash skills/platform/tao-setup-nvidia-gpu-host/scripts/setup-nvidia-gpu-host.sh --backend kubernetes --check-only

⚠️ Note — running non-interactively (agent/skill runs): a skill run has no terminal, so the installer's Continue? [y/N] prompt cannot be answered. After running --check-only to preview and getting the user's approval, append the assume-yes flag (--yes) to the --install command so it proceeds without a prompt — this auto-confirms installation of system packages (NVIDIA driver, CUDA Toolkit, NVIDIA Container Toolkit, and Docker for Docker backends) and modifies the host, so only do this on a host you control. A person running --install directly at a terminal gets the prompt instead.

Workflow Contract

Docker and Kubernetes workflows must run the check before submitting GPU work:

SB="${TAO_SKILL_BANK_PATH:-${TAO_SKILL_BANK_ROOT:-$PWD}}"
SETUP_SCRIPT="${SB}/skills/platform/tao-setup-nvidia-gpu-host/scripts/setup-nvidia-gpu-host.sh"

bash "$SETUP_SCRIPT" --backend docker --check-only || {
  echo "MISSING: TAO GPU host runtime is not ready."
  echo "After user approval, run (append --yes for non-interactive agent runs):"
  echo "  bash \"$SETUP_SCRIPT\" --backend docker --install"
  exit 1
}

Never install silently. If the check fails, explain what is missing, ask the user to authorize the fix, then run the install command and rerun the check.

Model Runtime Override Contract

Platform defaults apply when a model has no override. A model that needs a different validated host stack declares it in references/skill_info.yaml:

runtime_requirements:
  gpu_host:
    min_driver_version: '<version>'
    min_cuda_version: '<version>'
    min_container_toolkit_version: '<version>'

Read those values before the final platform preflight and pass them to the matching --min-*-version flags. Model minimums take precedence for that workflow only; do not rewrite the platform defaults or requirements for other models. Version checks use numeric lower bounds, so later compatible releases pass. Always retain the selected-image GPU smoke test because a version bound cannot prove support for a particular GPU architecture.

What The Installer Does

The installer dispatches on the detected distribution family. On every supported family it adds NVIDIA's CUDA and Container Toolkit repositories (if missing), installs packages that satisfy the active minimums, optionally installs Docker, wires the NVIDIA Docker runtime, and adds the invoking user to the docker group.

Common steps (all families):

  1. Adds NVIDIA's CUDA repository if missing (apt cuda-keyring deb, cuda-<distro>.repo for dnf/zypper).

  2. Adds NVIDIA's Container Toolkit repository if missing (.list for apt, .repo for dnf/zypper).

  3. Installs the matching kernel header / devel package for the running kernel.

  4. Installs the current open-driver and Container Toolkit packages from the configured repositories plus the CUDA Toolkit package selected by --min-cuda-version, then verifies all three against the active minimums.

  5. For Docker backends and when Docker is missing, installs Docker (override / opt-out flags below), enables/starts the daemon, then runs nvidia-ctk runtime configure --runtime=docker and restarts Docker when systemctl is available.

  6. Adds the invoking user ($SUDO_USER if available, else $USER) to the docker group so subsequent shells can run docker without sudo — opt out with --skip-docker-group. The new group membership does not take effect in the current shell: log out and back in, or run newgrp docker in each new shell.

  7. Attempts modprobe nvidia so verification can pass before reboot.

Family-specific package selections:

Stepdebian-familyrhel-familysuse-family
Kernel headerslinux-headers-$(uname -r)kernel-devel-$(uname -r), kernel-headers-$(uname -r)kernel-default-devel
Drivercurrent nvidia-open (override: $NVIDIA_DRIVER_PACKAGE_DEBIAN)current nvidia-driver-cuda, kmod-nvidia-open-dkms (override: $NVIDIA_DRIVER_PACKAGE_RHEL, $NVIDIA_DRIVER_KMOD_RHEL)current nvidia-open-driver-G06-signed-kmp-default (override: $NVIDIA_DRIVER_PACKAGE_SUSE)
CUDA toolkitpackage derived from the active minimum, such as cuda-toolkit-13-0samesame
Container Toolkitcurrent nvidia-container-toolkit + base/tools/libs, then minimum-version validationsamesame
Dockerdocker.io (override: $DOCKER_PACKAGE_DEBIAN)moby-engine+moby-cli on Fedora when available, else docker-ce docker-ce-cli containerd.io from download.docker.comdocker

Verification

After installation, verify:

nvidia-smi
nvcc --version
docker info --format '{{json .Runtimes}}' | grep nvidia
sudo docker run --rm --runtime=nvidia --gpus all "$TAO_IMAGE" nvidia-smi -L

The detected driver, CUDA Toolkit, and Container Toolkit versions must meet the active TAO-wide or model-specific minimums. Then run the selected image's GPU smoke test; version comparison alone is not sufficient compatibility proof.

For a Cosmos backend, extend that smoke with the backend contract's Python and entrypoint checks. Cosmos Framework must execute /workspace/.venv/bin/python as a non-root UID, import cosmos_framework.callbacks.tao_status, find native torchrun, and verify the A100 PatchEmbed compatibility marker when the host reports compute capability 8.0. Cosmos-RL must resolve its requested action executable, import system PyAV for video workflows, resolve the restricted FFmpeg h264_cuvid decoder, load libnvcuvid.so.1, verify the backward-safe linear Qwen3-VL PatchEmbed marker, and verify its checkpoint loader accepts the prepared qwen3_vl directory. A container that only passes nvidia-smi is not ready for Cosmos training.

Kubernetes Notes

For self-managed Kubernetes clusters, run the host installer on every GPU worker node or bake the same package set into the node image before installing the NVIDIA GPU Operator or device plugin.

The workflow check also warns if kubectl is available but the cluster reports no nvidia.com/gpu allocatable capacity. In that case, install/configure the NVIDIA GPU Operator after the worker host runtime is ready:

helm repo add nvidia https://helm.ngc.nvidia.com/nvidia
helm repo update
helm install --wait gpu-operator -n gpu-operator --create-namespace nvidia/gpu-operator

Managed Kubernetes providers may own driver installation through node images or GPU Operator policy. Do not overwrite a provider-managed GPU node without user approval and a rollback plan.

Failure Modes

Unsupported distribution family: --install automates debian-, rhel-, and suse-family hosts. On Arch, Alpine, Gentoo, NixOS, FreeBSD, or anything without /etc/os-release (e.g. macOS), the script exits with a clear error that lists the four version targets and the upstream NVIDIA install-guide URLs:

  • https://docs.nvidia.com/cuda/cuda-installation-guide-linux/

  • https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html

  • https://docs.docker.com/engine/install/

Install those four pieces using your distribution's package manager and rerun the script with --check-only to verify. The check is universally portable — it only queries the binaries / package databases — so once the runtime is in place the workflow contract is satisfied regardless of the underlying distro.

Unsupported Ubuntu/Debian derivative: When ID is e.g. pop, mint, zorin, raspbian, or another debian-family derivative, the script maps the host onto the upstream Ubuntu/Debian CUDA repo via UBUNTU_CODENAME / VERSION_CODENAME (focal/jammy/noble → Ubuntu 20.04/22.04/24.04; bullseye/bookworm/trixie → Debian 11/12/12). If the host's codename doesn't match a known upstream release, --install exits with the same manual-install guidance described above.

Docker not installed: --check-only reports MISSING: Docker is not installed and prints the exact rerun command appropriate to the detected distro family. The default --install path installs Docker (docker.io / moby-engine / docker-ce / docker depending on family), enables/starts the daemon, configures the NVIDIA runtime, and adds the invoking user to the docker group. If you prefer to manage Docker yourself, install it before rerunning the script or pass --skip-docker-install.

Docker installed but docker run still needs sudo: The script adds the invoking user to the docker group, but Linux only refreshes group membership on a new login session. Log out and back in, or run newgrp docker in each new shell, until the new membership is active.

Docker runtime still missing: Restart Docker, then rerun nvidia-ctk runtime configure --runtime=docker.

Detected version is below the active minimum: Rerun the same command with --install after approval, preserving any model-specific --min-*-version flags. Package-name environment overrides select distribution-specific driver packages but do not weaken the minimum-version checks.

Driver installed but nvidia-smi fails: Load the module with sudo modprobe nvidia or reboot. Secure Boot may require MOK enrollment on systems where it is enabled.

Kubernetes still has no GPU capacity: Confirm the driver works on each GPU node with nvidia-smi, then check the GPU Operator/device plugin pods and node labels.

Files

Requirements and compatibility

Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta

“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.

Needs: Declares allowed tools, Needs a command-line tool, Needs Python, Needs Node.js

The author says: Runs `--check-only` on any Linux distribution. `--install` automates Ubuntu 22.04/24.04 + Debian 12 (apt), Fedora + RHEL/Rocky/AlmaLinux 9/10 (dnf), and openSUSE Leap / SLES 15 (zypper). Requires sudo/root, internet access to NVIDIA package repositories (and download.docker.com on rhel-family), and an x86_64 or aarch64 (sbsa) host. Other distributions (Arch, Alpine, Gentoo, NixOS, …) get a clear error that names the version targets and the NVIDIA install-guide URL.

Security

What our scanner noticed· Medium risk

  • Large base64-encoded blobs
  • Scripts that your agent may run

This skill includes scripts that your agent may run. Read them before you use it.

A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.

Attribution and licence

Created by
NVIDIA Corporation
Publisher
NVIDIA (Official)
Source
NVIDIA/skills · skills/tao-setup-nvidia-gpu-host · commit fce3cca
Licence
Apache License 2.0 (redistribution allowed)
  • LICENSE (added by AutoGineer from LICENSE-APACHE)
  • ATTRIBUTION.md (written by AutoGineer)
Synced

AutoGineer is not affiliated with or endorsed by NVIDIA Corporation or NVIDIA.

Download ZIP

The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download tao-setup-nvidia-gpu-host.zip