Agent skill

Compass Doctor

by NVlabs in NVlabs/COMPASS

Diagnose why COMPASS isn't working: container, GPU, activated shell, assets, Isaac Sim init, checkpoint validity.

Apache-2.0Auto-check: notesDevOps & Cloud

Install Compass Doctor

skills CLI
$ npx skills add NVlabs/COMPASS --skill compass-doctor -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install NVlabs/COMPASS compass-doctor --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/NVlabs/COMPASS.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/compass-doctor .claude/skills/compass-doctor && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
compass-doctor
GitHub stars
145
Token cost
~1.4k tokens
SKILL.md length
589 words
Files
2 (incl. scripts)
Skills in repo
3
Repo updated
First seen
Licence
Apache-2.0

At a glance

Diagnose why COMPASS isn't working: container, GPU, activated shell, assets, Isaac Sim init, checkpoint validity.

  • Works in 3 steps: Run the diagnostic script → Interpret the output → Recommend the next skill
  • The user reports vague COMPASS errors — training wont start
  • SKILL.md covers When NOT to use this skill, Workflow, Common patterns and Key File Locations
  • Runs Shell scripts from its folder; calls bash and python; needs HF_TOKEN and WANDB_API_KEY

What it does

Compass Doctor is an agent skill from NVlabs/COMPASS. Diagnose why COMPASS isn't working: container, GPU, activated shell, assets, Isaac Sim init, checkpoint validity. Use whenever the user reports vague COMPASS errors — "training won't start", "something's wrong", "why is this failing" — even without the word "debug". Make sure to use this when the user mentions COMPASS isn't behaving and doesn't have a more specific intent.

Its SKILL.md is about 1.4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including scripts (for example `scripts/compass_status.sh`).

It sits in DevOps & Cloud. It works with Docker. The repository describes itself as: Cross-embOdiment Mobility Policy via ResiduAl RL and Skill Synthesis. The licence is Apache-2.0.

When your agent uses it

  • The user reports vague COMPASS errors — training wont start
  • Somethings wrong
  • Why is this failing — even without the word debug
  • Mentions COMPASS isnt behaving and doesnt have a more specific intent

Example prompts

  • “training won”
  • “something”
  • “why is this failing”
  • “/compass-doctor”

Requirements

  • Python 3
  • A Bash shell
  • Docker
  • A credential in WANDB_API_KEY
  • Pre-approved tools (allowed-tools): Bash, Read, Grep, Glob

Workflow steps

3 steps, taken from the step headings in SKILL.md.

  1. Run the diagnostic script
  2. Interpret the output
  3. Recommend the next skill

What it can do on your machine

Read from SKILL.md and the folder at commit 8060f7c. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Bash
    • Read
    • Grep
    • Glob

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/ (Shell), which the agent can run.

    Shell commands in SKILL.md call:

    • bash
    • python

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • HF_TOKEN
    • WANDB_API_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Compass Doctor loads about 1.4k tokens when it runs. Until then it costs about 98 tokens; SKILL.md has 589 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~98
When it runs · the whole SKILL.md, loaded when a task matches
~1.4k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Bash, Read, Grep, Glob

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from NVlabs/COMPASS at commit 8060f7c, republished under its Apache-2.0 licence (© NVlabs). 589 words, ~1,438 tokens.

Download SKILL.mdSave it as .claude/skills/compass-doctor/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
compass-doctor
description
Diagnose why COMPASS isn't working: container, GPU, activated shell, assets, Isaac Sim init, checkpoint validity. Use whenever the user reports vague COMPASS errors — "training won't start", "something's wrong", "why is this failing" — even without the word "debug". Make sure to use this when the user mentions COMPASS isn't behaving and doesn't have a more specific intent.
allowed-tools
Bash, Read, Grep, Glob

You produce a diagnostic snapshot of a COMPASS dev environment and report what's working and what's broken. Read-only by design — you report problems but never auto-fix them. Once you've identified the root cause, point the user at the specialty skill that owns the fix.

This skill is the place users land when training "just won't start" or something obscure breaks. The goal is to surface the actual root cause in one screen, not to chase the symptom.

When NOT to use this skill

  • The user knows what they want to do (train, evaluate, etc.) and just needs the workflow → /compass.
  • The user wants to add a robot platform → /compass-newembodiment.
  • A specific error message has a clear fix in the handbook → quote the relevant page; debug isn't needed.

Workflow

Step 1: Run the diagnostic script

The skill bundles scripts/compass_status.sh which runs all checks in parallel and prints a markdown table:

bash
# dangerouslyDisableSandbox: true (script touches nvidia-smi)
bash <SKILL_BASE_DIR>/scripts/compass_status.sh

Output looks like:

| Status | Check | Detail |
|---|---|---|
| ✓ | Container | compass-rl up |
| ✓ | Activated shell | shim dir on PATH |
| ✓ | GPU | NVIDIA H100 80GB HBM3, 79980 MiB |
| ✓ | Base ckpt | ./assets/x_mobility.ckpt (1.2G) |
| ✓ | USDs | 8 entries in ./assets/usd/ |
| ✓ | Recent log | /tmp/isaaclab/logs/2026-05-08_14-23-02 |

For deeper diagnostics (slower, ~30s — runs Isaac Sim init headless to surface kit-init errors that don't show up in the quick check):

bash
bash <SKILL_BASE_DIR>/scripts/compass_status.sh --deep

For checkpoint-specific issues (verifies a .pt file is a valid torch checkpoint and not corrupted):

bash
bash <SKILL_BASE_DIR>/scripts/compass_status.sh --ckpt <PATH_TO_CKPT>
Step 2: Interpret the output

The table is the report; just relay it to the user. Then add a one-paragraph interpretation: which row is the root cause, and what to do about it.

Failed checkMost likely causeWhere to fix
ContainerContainer hasn't been started./docker/run.sh up (or ./docker/run.sh build if image missing)
Activated shellUser invoked Claude in a fresh shellsource ./docker/activate then retry
GPUDriver issue OR sandbox blocking nvidia-smiCheck dangerouslyDisableSandbox: true was set; if persists, check host driver with nvidia-smi from the host shell
Base ckpt / USDsAssets not downloaded yet./docker/run.sh assets (needs HF_TOKEN)
Recent logNo training has run yet (informational)Not a failure — just confirms a clean state
Isaac Sim initContainer build broken OR GPU not exposedTry ./docker/run.sh down && ./docker/run.sh build
Ckpt loadFile corrupt OR wrong torch versionRe-download / re-train; if re-train, route to /compass
Show full SKILL.md (253 more words)Show less
Step 3: Recommend the next skill

Don't try to fix the issue yourself — different fixes belong to different skills:

Root cause classRecommended next skill
Setup issue (container, assets, activated shell)/compass (Setup COMPASS section)
Training-time issue (config, ckpt path, env name)/compass (Train section)
New robot platform missing/compass-newembodiment

Anti-pattern guard: don't run fixes yourself. The user benefits from understanding what went wrong; running fixes blind hides root causes.


Common patterns

"Training crashed silently"

Look for the most-recent kit log:

bash
find ~/.local/share/ov/pkg/isaac-sim-* -name "kit_*.log" 2>/dev/null | head -1 | xargs tail -100

Common silent-crash causes:

  • GPU OOM (look for "out of memory" / "CUDA error" near the tail).
  • USD asset missing (look for "Failed to load" / file-path lines).
  • Quaternion convention mismatch on a custom embodiment (look for "wxyz" / "xyzw").
"Pre-flight passes but python run.py … still errors"

Confirm the user is in an activated shell. The script checks PATH for the shim dir but a user can run scripts in any shell — verify with:

bash
which python
# Should resolve to a /tmp/compass-shims.* path

If which python resolves to /usr/bin/python or similar, the shell isn't activated even if other env vars suggest it is.

"OSMO submission fails on osmo workflow submit"

That's an OSMO-side issue, not a local one. Check:

bash
test -n "${WANDB_API_KEY:-}" && echo "WANDB_API_KEY set" || echo "WANDB_API_KEY MISSING"
test -n "${HF_TOKEN:-}" && echo "HF_TOKEN set" || echo "HF_TOKEN MISSING"
test -n "${COMPASS_OSMO_REGISTRY:-}" && echo "registry set" || echo "registry MISSING (or pass --image)"

If all set, route the user to /compass (OSMO submission section in that skill body).


Key File Locations

FilePurpose
<SKILL_BASE_DIR>/scripts/compass_status.shThe diagnostic script; usable as a standalone CLI
./docker/run.shContainer lifecycle (status / up / down / build / assets / shell)
./docker/activateShell activate script (sets up python/pip shims)
./assets/Asset bind-mount (USDs + base ckpt)
/tmp/isaaclab/logs/Training run logs (latest is most useful)
~/.local/share/ov/pkg/isaac-sim-*/kit_*.logKit logs for crash diagnostics

© NVlabs, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file (scripts) in .claude/skills/compass-doctor of NVlabs/COMPASS.

  • SKILL.md
  • scripts/compass_status.sh

Open the folder on GitHubat commit 8060f7c

Compare with similar skills

Compass Doctor next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Compass Doctor compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Compass Doctor this skillNVlabs/COMPASS145—~1.4kAutomated safety check: NotesApache-2.0
Iron Proxy Gateway for NanoClawnanocoai/nanoclaw31k—~4.6kAutomated safety check: NotesMIT
GreptimeDB Dev Docker ImageGreptimeTeam/greptimedb6.7k—~4kAutomated safety check: NotesApache-2.0
Senior DevOps Toolkitmaslennikov-ig/claude-code-orchestrator-kit2606 repos~1.1kAutomated safety check: NotesCustom licence
LangBot Deployment Guidelangbot-app/LangBot18k—~1.2kAutomated safety check: NotesApache-2.0
Build Openshell Mxc WindowsNVIDIA/OpenShell16k—~4.9kAutomated safety check: PassApache-2.0

Similar skills

  • Installs or refreshes Iron Proxy and its Iron Control web console for NanoClaw, with a local Docker setup, database, credentials and a human approval bridge.

    31k GitHub stars~4.6k tokensUpdated yesterday
    DevOps & CloudAuto-check: notes
  • GreptimeDB Dev Docker Image

    GreptimeTeam/greptimedb

    Packages a locally built GreptimeDB debug binary into a development-only Docker image for local-cluster testing, with an optional push to a dev registry.

    6.7k GitHub stars~4k tokensUpdated today
    DevOps & CloudAuto-check: notes
  • Senior DevOps Toolkit

    maslennikov-ig/claude-code-orchestrator-kit

    Comprehensive DevOps skill for CI/CD, infrastructure automation, containerization, and cloud platforms (AWS, GCP, Azure). Includes pipeline setup…

    260 GitHub starsUsed in 6 repos~1.1k tokens
    DevOps & CloudAuto-check: notes
  • LangBot Deployment Guide

    langbot-app/LangBot

    Deploys and configures a LangBot instance with Docker Compose or Kubernetes, covering config.yaml, the Box sandbox runtime, the plugin runtime and the global API key.

    18k GitHub stars~1.2k tokensUpdated yesterday
    DevOps & CloudAuto-check: notes
  • Official

    Maintain and validate OpenShell's build-only Windows MSVC lane for x64 and ARM64.

    16k GitHub stars~4.9k tokensUpdated today
    DevOps & CloudAuto-check passed
  • Megatron-LM Base Image Bump

    NVIDIA/Megatron-LM

    Official

    Moves Megatron-LM CI to a newer NVIDIA PyTorch base image, updating both the GitHub and GitLab pins together and handling the CI follow-up.

    18k GitHub stars~2.8k tokensUpdated today
    DevOps & CloudAuto-check passed

More from NVlabs/COMPASS

  • Compass

    NVlabs/COMPASS

    Front-door for COMPASS — training, evaluation, SAGE scene workflows (search / USD conversion / scene registration), and OSMO cloud submission.

    145 GitHub stars~5.4k tokensUpdated today
    Auto-check: notes
  • Compass Newembodiment

    NVlabs/COMPASS

    Onboard a new robot platform to COMPASS: generate robot ArticulationCfg + per-embodiment envcfg, register in EmbodimentEnvCfgMap, smoke-test the spawn with --numenvs 1.

    145 GitHub stars~2k tokensUpdated today
    Auto-check: notes

Works with

Categories

Questions about Compass Doctor

What does Compass Doctor do?

Diagnose why COMPASS isn't working: container, GPU, activated shell, assets, Isaac Sim init, checkpoint validity. Compass Doctor is an agent skill from NVlabs/COMPASS. Diagnose why COMPASS isn't working: container, GPU, activated shell, assets, Isaac Sim init, checkpoint validity.

When should I use Compass Doctor?

Compass Doctor fits situations like: the user reports vague COMPASS errors — training wont start; somethings wrong; why is this failing — even without the word debug; mentions COMPASS isnt behaving and doesnt have a more specific intent.

How do I install Compass Doctor in Claude Code?

Run `npx skills add NVlabs/COMPASS --skill compass-doctor -a claude-code`. Or copy the skill folder (.claude/skills/compass-doctor in NVlabs/COMPASS) into .claude/skills/compass-doctor in your project. Claude Code loads it when a task matches its description.

How do I install Compass Doctor in Codex?

Run `npx skills add NVlabs/COMPASS --skill compass-doctor -a codex`. Or copy the skill folder (.claude/skills/compass-doctor in NVlabs/COMPASS) into .agents/skills/compass-doctor in your project. Codex loads it when a task matches its description.

Can I use Compass Doctor in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add NVlabs/COMPASS --skill compass-doctor -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/compass-doctor, .gemini/skills/compass-doctor, .github/skills/compass-doctor and .opencode/skills/compass-doctor in your project.

What does Compass Doctor need to run?

Going by SKILL.md and its folder, Compass Doctor needs a shell for the scripts in its folder, the command-line tools its instructions call (bash and python) and credentials named HF_TOKEN and WANDB_API_KEY. Our summary lists: Python 3; A Bash shell; Docker; A credential in WANDB_API_KEY. Its frontmatter pre-approves these tools: Bash, Read, Grep, Glob.

Does Compass Doctor access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Compass Doctor safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Compass Doctor use?

Compass Doctor is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Compass Doctor use?

About 1.4k tokens (SKILL.md is roughly 5.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Compass Doctor?

Skills that share tags, products or a category with Compass Doctor: Iron Proxy Gateway for NanoClaw (nanocoai/nanoclaw, 31k stars), GreptimeDB Dev Docker Image (GreptimeTeam/greptimedb, 6.7k stars), Senior DevOps Toolkit (maslennikov-ig/claude-code-orchestrator-kit, 260 stars) and LangBot Deployment Guide (langbot-app/LangBot, 18k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Compass Doctor?

NVlabs (a GitHub organization) maintains it in NVlabs/COMPASS, which has 145 GitHub stars. The repository holds 3 skills in this directory. The repository was last updated on October 9, 2026.

Source: NVlabs/COMPASS on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.