Every skill in the repo
Open a card for the real request shape, the parameters that matter, the artifacts you get back, and the failure mode — the specific mistake each SKILL.md exists to stop an agent making. Those are quoted from the skill files, not inferred.
No skill matches that filter.
The four skills that compose the others
The hard part of multi-step science is the handoff: what one service emits has to be
exactly what the next one accepts, and the filter between them decides what survives.
These skills own that glue and say so explicitly — protein-binder-design
calls its handoff contracts “the fragile glue” and declines to duplicate
per-NIM API detail. Click any stage to open that skill above.
What a skill actually is
A directory: one SKILL.md with YAML frontmatter and plain instructions,
a references/ folder the agent is told to load only when it needs to, and
a bounded eval case. Nothing harness-specific — the same directory installs into
Claude Code, Codex, and partner frameworks.
nim-skills/boltz2-nim/
├─ SKILL.md # the router
├─ references/
│ ├─ api.md # endpoints, schemas, docker flags
│ ├─ science.md # strengths, limits, handoffs
│ ├─ parameters.md # sampling, MSA, affinity tuning
│ ├─ validation.md # mmCIF / confidence / chemistry
│ └─ examples.md # compact payload patterns
└─ evals/
├─ evals.json # one bounded case
└─ config.yml
---
name: boltz2-nim
description: >
Use Boltz2 NIM for biomolecular structure prediction
and binding affinity. Invoke for Boltz2, protein
structures, protein-ligand/DNA/RNA complexes, SMILES
or CCD ligands, pIC50/IC50 affinity scoring, mmCIF
output, hosted NVIDIA API calls, or local Docker
deployment.
license: Apache-2.0 AND CC-BY-4.0
compatibility: "requests>=2.28"
allowed-tools: Bash, Read, Write, AskUserQuestion
---
# Boltz2 NIM
Predict biomolecular structures and optional ligand
affinity. Use this SKILL.md for first-pass hosted/local
usage; load supplemental files only when needed.
Progressive disclosure is the token story
Every NIM skill is a short router that names five reference files and instructs the agent to open them only when the task demands it. The KERMT skills go further and carry their own budget in a frontmatter comment — one is annotated “~165 lines, ~1900 tokens” against a stated cap of 500 lines and 5000 tokens.
Hosted and local are different APIs
Hosted NIMs live at health.api.nvidia.com/v1/… behind
Authorization: Bearer $NGC_API_KEY. Local containers come from
nvcr.io, need LOCAL_NIM_CACHE, and take no auth header
once ready — and their paths drop the /v1/. Several skills spend a
paragraph on that one difference because a local 404 is almost always
a stray /v1/.
The mounts are not uniform either: ProteinMPNN and MolMIM cache at
/home/nvs/.cache/nim while the rest use
/opt/nim/.cache.
How lift is measured
Each NIM skill ships one bounded evals/evals.json case.
astra-skill-eval turns it into Harbor tasks and runs the same prompt
twice — with the skill and without — against the real hosted endpoint, so whether
the agent even discovers the correct call is part of the score. Deterministic
RLVR-style graders for the local-GPU workflows are listed as TODO.
Dual-licensed
Source code under Apache-2.0, the skills and documentation under CC-BY-4.0. Individual skills reference third-party data sources with their own terms.