cuopt-install — Claude Code skill: what it does, how to install
Installs NVIDIA cuOpt for Python, C, or as a REST server via pip, conda, or Docker, then verifies the setup. Helpful when configuring GPU-accelerated routing environments.
npx skills add NVIDIA/skills --skill cuopt-install -a claude-codeWhat cuopt-install does
The skill guides you through deploying NVIDIA cuOpt across different environments. It clarifies the target interface (Python, standalone C, or HTTP REST server), package manager (pip, conda, or Docker), and the exact CUDA version (12.x or 13.x). Matching the package suffix to the installed CUDA runtime is mandatory to prevent runtime mismatches. It also provides verification steps, such as checking Python imports, C headers, or pinging the /cuopt/health endpoint.
Hardware requirements are strict: an NVIDIA GPU with Compute Capability 7.0 or newer (Volta through modern architectures like V100, A100, H100, and RTX 20xx/30xx/40xx). Pascal-based cards like the GTX 10xx series are unsupported, which prevents running cuOpt on older GPUs. If you install the Python package cuopt-cuXX, it automatically pulls in the C library libcuopt-cuXX, while installing C alone will not provide Python bindings.
What it helps with
- select matching cuOpt install commands for pip, conda, or Docker
- align cuOpt packages with CUDA 12.x or 13.x runtimes
- deploy the cuOpt REST server locally or in a container
- verify Python imports, C headers, and the
/cuopt/healthendpoint
Example prompts for the agent
- Help me install cuOpt for Python with CUDA 12 using pip
- How do I run the cuOpt REST server in Docker and verify it?
- Install the standalone libcuopt C library using conda for CUDA 13
How to install cuopt-install
1Skills CLI (Vercel)
npx skills add NVIDIA/skills --skill cuopt-install -a claude-code2Manually: put the files in place
~/.claude/skills/cuopt-install/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/cuopt-install/
1Skills CLI (Vercel)
npx skills add NVIDIA/skills --skill cuopt-install -a codex2Manually: put the files in place
.agents/skills/cuopt-install/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add NVIDIA/skills --skill cuopt-install -a cursor2Manually: put the files in place
.cursor/skills/cuopt-install/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install NVIDIA/skills cuopt-install2Manually: put the files in place
.github/skills/cuopt-install/SKILL.md1Skills CLI (Vercel)
npx skills add NVIDIA/skills --skill cuopt-install -a gemini-cli2Platform CLI
gemini skills install https://github.com/NVIDIA/skills --path skills/cuopt-installManually: put the files in place
.devin/skills/cuopt-install/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add NVIDIA/skills --skill cuopt-install -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 cuopt-install
How do I install cuopt-install in Claude Code?
Run npx skills add NVIDIA/skills --skill cuopt-install -a claude-code in your terminal. This adds the skill to Claude Code for guiding cuOpt setups.
What does cuopt-install do?
It assists in installing NVIDIA cuOpt for Python, C, or REST server via pip, conda, or Docker. It also provides commands to verify that drivers, CUDA, and packages match.
Which GPUs are compatible with cuOpt?
It requires an NVIDIA GPU with Compute Capability 7.0 or newer, such as Volta, A100, H100, or RTX 20xx/30xx/40xx series. Pascal cards like GTX 10xx are not supported.
Source text
SKILL.md · Apache-2.0
---
name: cuopt-install
version: "26.10.00"
description: Install cuOpt for Python, C, or server via pip, conda, or Docker; verify the install. For building cuOpt from source, see cuopt-developer.
license: Apache-2.0
metadata:
author: NVIDIA cuOpt Team
tags:
- cuopt
- install
- deployment
- python
- server
---
# cuOpt Install (user)
Install cuOpt to *use* it from Python, C, or as a REST server. For building cuOpt from source to contribute or modify it, see `cuopt-developer`.
## System requirements
- **GPU**: NVIDIA Compute Capability ≥ 7.0 (Volta or newer). Examples: V100, A100, H100, RTX 20xx/30xx/40xx. Not supported: GTX 10xx (Pascal).
- **CUDA**: 12.x or 13.x. The package CUDA suffix must match the runtime CUDA (e.g. `cuopt-cu12` / `libcuopt-cu12` with CUDA 12).
- **Driver**: NVIDIA driver compatible with the CUDA version.
- `cuopt-cuXX` (Python) depends on `libcuopt-cuXX` (C), so installing the Python package also installs the C library and headers. Installing `libcuopt-cuXX` on its own does **not** install the Python API.
## Required questions
Ask these if not already clear:
1. **Interface** — Python, C, or REST server? Server can be called from any language via HTTP.
2. **CUDA version** — What is installed? Check with `nvcc --version` or `nvidia-smi`.
3. **Package manager** — pip, conda, or Docker preferred?
4. **Environment** — Local machine with GPU, cloud instance, Docker/Kubernetes, or remote/server (no local GPU)?
## Python API
**Choose one** — do not run both. The second install would override the first and can cause CUDA / package mismatch.
### pip
- **CUDA 13.x:**
```bash
pip install --extra-index-url=https://pypi.nvidia.com cuopt-cu13
```
- **CUDA 12.x:**
```bash
pip install --extra-index-url=https://pypi.nvidia.com 'cuopt-cu12==26.2.*'
```
### conda
```bash
conda install -c rapidsai -c conda-forge -c nvidia cuopt
```
### Verify
```python
import cuopt
print(cuopt.__version__)
from cuopt import routing
dm = routing.DataModel(n_locations=3, n_fleet=1, n_orders=2)
```
## C API
The C API ships in `libcuopt-cuXX`, which is also pulled in as a dependency of `cuopt-cuXX` — so if you already installed the Python package, the C library and headers are already present. Install `libcuopt` standalone only when you want the C API without Python. **Choose one** of pip or conda — do not run both.
### pip
- **CUDA 13.x:**
```bash
pip install --extra-index-url=https://pypi.nvidia.com libcuopt-cu13
```
- **CUDA 12.x:**
```bash
pip install --extra-index-url=https://pypi.nvidia.com 'libcuopt-cu12==26.2.*'
```
### conda
```bash
conda install -c rapidsai -c conda-forge -c nvidia libcuopt
```
### Verify
See [`references/verification_examples.md`](references/verification_examples.md)
for the canonical C-API header/library `find` commands (conda and pip/venv variants).
## Server (REST)
### pip
```bash
pip install --extra-index-url=https://pypi.nvidia.com cuopt-server-cu12 cuopt-sh-client
```
### conda
```bash
conda install -c rapidsai -c conda-forge -c nvidia cuopt-server cuopt-sh-client
```
### Docker
```bash
docker pull nvidia/cuopt:latest-cuda12.9-py3.13
docker run --gpus all -it --rm -p 8000:8000 nvidia/cuopt:latest-cuda12.9-py3.13
```
### Verify
```bash
python -m cuopt_server.cuopt_service --ip 0.0.0.0 --port 8000 &
sleep 5
curl -s http://localhost:8000/cuopt/health | jq .
```
## Common Issues
- `No module named 'cuopt'` → check `pip list | grep cuopt`, `which python`, reinstall with the correct extra-index-url.
- CUDA not available → run `nvidia-smi` and `nvcc --version`; ensure the package CUDA suffix (`cu12` vs `cu13`) matches the installed CUDA.
- Python vs C → `cuopt-cuXX` pulls in `libcuopt-cuXX` as a transitive dependency, so the C library (`libcuopt.so`) and headers (`cuopt_c.h`) are already available after installing the Python package. The reverse is **not** true: `libcuopt-cuXX` alone does not install the Python bindings.
## See also
- [verification_examples.md](references/verification_examples.md) — full verification recipes for Python, C, server, and Docker.
- `cuopt-developer` — build cuOpt from source and contribute to the codebase.
© NVIDIA cuOpt Team · Apache-2.0 · NVIDIA/skills