Skip to content
Back to skills

Environments

ASecurity

Set up reproducible robotics environments with uv, Docker, or GPU hosts.

  • 34 stars
  • 0 votes
  • 0 copies
  • 5 views
  • Added September 19, 2026
ai-agentspythongodockerdocumentation

Security analysis

A100/100

Pro scans all 11 files and shows the line behind each finding

Scanned September 19, 2026

npx -y skills add robium-ai/robium --skill environments --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Environments?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Environments
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/robium-ai-environments/badge)](https://www.skillsdirectory.com/skills/robium-ai-environments)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: environments
description: Set up reproducible robotics environments with uv, Docker, or GPU hosts.
---

# Environments

Define the runtime contract before writing around machine-specific accidents.
Local and remote runs should differ only where the hardware genuinely differs.

## Choose the smallest sufficient boundary

- **uv:** pure-Python robotics, ML, data, and tooling without required system
  packages. Commit the lockfile and run project commands through `uv run`.
- **Docker:** ROS 2, native libraries, apt packages, an exact Linux userspace,
  or deployment as a container.
- **Docker plus uv:** use Docker for the system layer and a project environment
  for substantial Python dependencies; do not turn the image's system Python
  into an untracked package set.
- **Remote GPU host:** use when the workload has no viable local hardware path.
  Record this as a deliberate exception to local/remote symmetry.

Preflight the actual machine before deciding. Confirm architecture, OS, Docker
daemon, accelerator, driver, disk, and available Python tooling. Use the Robium
doctor if present; fall back to direct probes when it is not.

## Keep the contract reproducible

- Pin Python and dependency resolution with a lockfile, or pin the container
  base and build inputs. Avoid `latest` for reproducible applications.
- Keep dependency declarations in one source of truth; do not preserve manual
  installation steps as hidden prerequisites.
- Match container CUDA/runtime requirements to the target host driver rather
  than the developer laptop.
- Design remote work as headless first. Use web visualization instead of making
  X forwarding part of the normal workflow.
- Test the same entry command in the target environment and prove important
  hardware, file, device, network, and display assumptions.
- Before claiming first-run reproducibility, run the complete setup from a
  clean project copy with the relevant package, model, and asset caches empty.
  A warm development checkout can hide broken fetch and bootstrap behavior.

## Go deeper only when needed

- Pure Python and lockfiles: [uv patterns](references/uv-patterns.md).
- ROS/system images, build layout, and parity: [Docker patterns](references/docker-patterns.md).
- NVIDIA passthrough and headless operation: [GPU and remote](references/gpu-and-remote.md).
- Real-robot LAN, Wi-Fi, DDS/NAT, and Mac host issues: [robot networking](references/robot-networking.md).
- Workloads that can exist only on cloud GPUs: [GPU cloud](references/gpu-cloud.md),
  then the relevant provider skill for provisioning.
- macOS, Apple Silicon, arm64, and cold-build evidence: [platform notes](PLATFORM-NOTES.md).
- Use the bundled examples only as starting shapes; verify all tags and install
  steps against current upstream documentation.

Cross into `integration` when multiple modules, containers, or transports must
be wired together. Cross into a deployment skill only after the image and
runtime contract work locally or in an equivalent target environment.

## Done

- A fresh machine can reproduce the environment from committed inputs.
- The same documented command starts the workload locally and remotely, except
  for named hardware flags.
- GPU, devices, network, files, and display behavior are verified on the target.
- Current details match official [uv](https://docs.astral.sh/uv/),
  [Docker](https://docs.docker.com/), ROS image, and
  [NVIDIA Container Toolkit](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/)
  documentation.

Files in this skill

  • PLATFORM-NOTES.md2.2 KB
  • SKILL.md3.5 KB
  • evals.yaml278 B
  • examples/Dockerfile.gpu-ml2.3 KB
  • examples/Dockerfile.ros21.7 KB
  • examples/pyproject-uv.toml1 KB
  • references/docker-patterns.md5.6 KB
  • references/gpu-and-remote.md5.1 KB
  • references/gpu-cloud.md2.8 KB
  • references/robot-networking.md4.8 KB
  • references/uv-patterns.md4.9 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.