Safactory Workflows
AI45Lab/SAfactory
Integrate a benchmark or custom environment into SAfactory using fixed adapter templates and local contract tests, optionally run Docker/RJob evaluation, or prepare GRPO/RL training.
Check progress for a detached KERMT run (pretrain, finetune, or any kermtrundetached invocation).
$ npx skills add NVIDIA/skills --skill kermt-monitor -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install NVIDIA/skills kermt-monitor --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/NVIDIA/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/bionemo-kermt-monitor .claude/skills/kermt-monitor && rm -rf skills-srcUse ~/.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/
Install the "kermt-monitor" agent skill from https://github.com/NVIDIA/skills/tree/main/skills/bionemo-kermt-monitor into .claude/skills/kermt-monitor/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "kermt-monitor", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/NVIDIA/skills/tree/main/skills/bionemo-kermt-monitorType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add NVIDIA/skills --skill kermt-monitor -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install NVIDIA/skills kermt-monitor --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/NVIDIA/skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/bionemo-kermt-monitor .agents/skills/kermt-monitor && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "kermt-monitor" agent skill from https://github.com/NVIDIA/skills/tree/main/skills/bionemo-kermt-monitor into .agents/skills/kermt-monitor/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "kermt-monitor", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add NVIDIA/skills --skill kermt-monitor -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install NVIDIA/skills kermt-monitor --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/NVIDIA/skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/bionemo-kermt-monitor .cursor/skills/kermt-monitor && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "kermt-monitor" agent skill from https://github.com/NVIDIA/skills/tree/main/skills/bionemo-kermt-monitor into .cursor/skills/kermt-monitor/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "kermt-monitor", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/NVIDIA/skills.git --path skills/bionemo-kermt-monitor--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add NVIDIA/skills --skill kermt-monitor -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install NVIDIA/skills kermt-monitor --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/NVIDIA/skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/bionemo-kermt-monitor .gemini/skills/kermt-monitor && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "kermt-monitor" agent skill from https://github.com/NVIDIA/skills/tree/main/skills/bionemo-kermt-monitor into .gemini/skills/kermt-monitor/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "kermt-monitor", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install NVIDIA/skills kermt-monitorInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add NVIDIA/skills --skill kermt-monitor -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/NVIDIA/skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/bionemo-kermt-monitor .github/skills/kermt-monitor && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "kermt-monitor" agent skill from https://github.com/NVIDIA/skills/tree/main/skills/bionemo-kermt-monitor into .github/skills/kermt-monitor/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "kermt-monitor", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add NVIDIA/skills --skill kermt-monitor -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install NVIDIA/skills kermt-monitor --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/NVIDIA/skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/bionemo-kermt-monitor .opencode/skills/kermt-monitor && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "kermt-monitor" agent skill from https://github.com/NVIDIA/skills/tree/main/skills/bionemo-kermt-monitor into .opencode/skills/kermt-monitor/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "kermt-monitor", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
kermt-monitorCheck progress for a detached KERMT run (pretrain, finetune, or any kermtrundetached invocation).
Kermt Monitor is an agent skill from NVIDIA/skills, published by the product's own GitHub organization. Check progress for a detached KERMT run (pretrain, finetune, or any kermtrundetached invocation). Reads run.json, queries docker for container state, tails the pretrain/finetune log, and parses progress lines (epoch, step, val loss).
Its SKILL.md is about 1.8k tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files (for example `BENCHMARK.md`, `evals/evals.json` and `skill-card.md`). Compatibility notes: Requires docker and jq. Designed for Claude Code, Codex, and Nemotron.
It sits in DevOps & Cloud, covering Fine-tuning and Containers. It works with Docker. The repository describes itself as: Agent Skills for NVIDIA products — install into Claude Code, Codex, and other coding agents to run Physical AI, robotics, simulation, CUDA, and RAG workflows end to end. The licence is Apache-2.0.
8 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 14a98ae. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
jqdockerFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use docker, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Requires docker and jq. Designed for Claude Code, Codex, and Nemotron.
From compatibility in the SKILL.md frontmatter.
Kermt Monitor loads about 1.8k tokens when it runs. Until then it costs about 62 tokens; SKILL.md has 608 words of instructions outside code blocks.
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.
The automated check found no risky patterns in SKILL.md.
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); files beside SKILL.md are not scanned.
The full file from NVIDIA/skills at commit 14a98ae, republished under its Apache-2.0 licence (© NVIDIA). 608 words, ~1,774 tokens.
.claude/skills/kermt-monitor/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.Companion skill for any KERMT workflow that runs detached: the three pretrain
skills (kermt-continue-pretrain, kermt-pretrain-scratch,
kermt-add-cmim-pretrain) plus kermt-finetune. kermt-infer and
kermt-embed run blocking by default and don't need this skill, but if a
user launches them detached on purpose the monitor still works (the
workflow-dispatch in step 4 handles unknown workflows by tailing the
most-recent log file in the run dir). Reads the run directory's run.json,
queries docker for the container's state, surfaces the latest progress,
and either tails or follows the log.
None. This skill only reads disk + queries docker; no GPU compute.
One of:
<run-dir> — a positional argument pointing at the directory containing
run.json (e.g. runs/continue-pretrain_2026-05-17T10-23Z). Preferred.--container <name-or-id> — direct container reference; the skill still
reads run.json from the run dir referenced inside the container's
inspect output if available, but works degraded-mode without it.Optional:
--lines N — number of trailing log lines to print (default 50).--follow — stream docker logs -f until ^C. Useful for "watch the
loss". Without it, the skill is one-shot and exits.--json — emit a structured status report instead of human-readable text.
Useful when the parent agent wants to take downstream action.Let RUN_DIR=$1 (or whatever path the user supplies).
Locate the manifest.
MANIFEST=$RUN_DIR/run.jsonRefuse to proceed if it doesn't exist; surface a helpful message
pointing the user at the run-dir convention (runs/<workflow>_<ts>/).
Parse the manifest (Python helper):
workflow=$(jq -r .workflow $MANIFEST)
container_name=... # not directly in run.json today; the skill that
# launched stored it in run.json under
# container.name during launch (see below note).
logs_dir=$(jq -r .logs_dir $MANIFEST)
image_tag=$(jq -r .container.image_tag $MANIFEST)
started_at=$(jq -r .started_at $MANIFEST)Query docker for container state.
docker ps --filter "name=$container_name" --format \
'{{.ID}}\t{{.Status}}\t{{.CreatedAt}}'If absent, fall back to docker inspect $container_name --format '{{.State.Status}} (exit {{.State.ExitCode}})' to see whether the
container exited (ok or failed) or was removed (--rm after exit).
Find the live log file.
case "$workflow" in
continue-pretrain|pretrain-scratch) LOG=$logs_dir/pretrain_ddp.log ;;
finetune) LOG=$logs_dir/finetune.log ;;
*) LOG=$(ls -1t $logs_dir/*.log 2>/dev/null | head -n 1) ;;
esacThe manifest's workflow field disambiguates pretrain (pretrain_ddp.log)
from finetune (finetune.log). Other workflows fall back to the
most-recently-modified .log in $logs_dir.
Show the latest progress.
tail -n $LINES $LOG for the raw recent output.Current epoch: 12/100 step: 4523/9000 val_loss: 0.832 (best 0.821 @ step 4100)<metric> (e.g. val_mae for regression,
val_auc for classification — read args_applied.metric from run.json)Fold 0 epoch 12/30 val_mae 0.187 (best 0.182 @ epoch 9)Wall-clock: 1h 23m since started_at; ETA ~6h remaining.Final test-metrics block (finetune, on completion). If workflow is
finetune AND the container has exited cleanly (State.Status=exited,
ExitCode=0) AND $RUN_DIR/ckpt/fold_*/test_result.csv exists, parse it
and emit a per-task metric table:
Final test metrics (per task):
Target MAE
HLM_clearance 0.187
RLM_clearance 0.213
MDR1-MDCK_efflux 0.241
solubility_pH6.8 0.156The metric column matches args_applied.metric (mae for regression, auc
for classification, etc.). For multi-fold or ensemble runs, average across
folds/models and note ± std if std > 0. Skip silently if no
test_result.csv exists (run incomplete or no test split was emitted).
If --follow, stream live logs.
docker logs -f $container_nameWraps until ^C.
Stop / cleanup hints (printed at end of one-shot mode):
To stop: docker stop $container_name
To remove: docker rm $container_name
To re-run: `$(jq -r .cmd_replay $MANIFEST)`run.json, never touch the
container's checkpoint dir. The monitor only inspects.docker stop; if they ask to abandon, leave it
running and just exit.The run.json schema as currently written does not yet include the launched
container name — kermt_run_detached prints it to stdout but the runner
script doesn't capture it into run.json. The monitor falls back to a
filesystem-based lookup: list runs/<workflow>_*/ directories and match by
mtime; or accept --container <name> explicitly. Follow-up: have the
launching skill record container name into run.json before exiting.
KERMT continue-pretrain · runs/continue-pretrain_2026-05-17T10-23Z
Container : kermt-continue-pretrain-… (Up 1 hour, status: running)
Image : kermt:latest@sha256:…
Repo : 2fe00f9 (clean)
Started : 2026-05-17T10:23:14Z (1h 23m ago)
Workflow : continue-pretrain, pretrain_mode=hybrid, world_size=2
Latest log (last 50 lines from $LOG):
[Epoch 12/100] step 4523/9000 loss 0.832 lr 1.2e-4
[val] step 4100 val_loss 0.821 (new best)
...
Progress: epoch 12/100, ~12% done. ETA ~6h.
TensorBoard: tensorboard --logdir $RUN_DIR/logs/tb
Replay command: $(jq -r .cmd_replay $RUN_DIR/run.json)© NVIDIA, 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
SKILL.md and 4 other files in skills/bionemo-kermt-monitor of NVIDIA/skills.
Open the folder on GitHubat commit 14a98ae
We found 3 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in NVIDIA/skills, which our catalogue first saw on October 7, 2026.
Kermt Monitor 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Kermt Monitor this skillNVIDIA/skills | 3.6k | 1 repos | ~1.8k | Automated safety check: Pass | Apache-2.0 | |
| Safactory WorkflowsAI45Lab/SAfactory | 236 | — | ~1.8k | Automated safety check: Pass | None | |
| Megatron-LM Base Image BumpNVIDIA/Megatron-LM | 18k | — | ~2.8k | Automated safety check: Pass | Apache-2.0 | |
| Opik Local Dev Environmentcomet-ml/opik | 22k | — | ~734 | Automated safety check: Pass | Apache-2.0 | |
| Generate Nemo Gym Envadithya-s-k/FineEnvs | 461 | — | ~2.1k | Automated safety check: Pass | Apache-2.0 | |
| Cosmos3 Env TroubleshootNVIDIA/cosmos-framework | 560 | — | ~1.3k | Automated safety check: Notes | Custom licence |
AI45Lab/SAfactory
Integrate a benchmark or custom environment into SAfactory using fixed adapter templates and local contract tests, optionally run Docker/RJob evaluation, or prepare GRPO/RL training.
NVIDIA/Megatron-LM
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.
comet-ml/opik
Starts, rebuilds, and troubleshoots the Opik local dev stack, including an optional Comet Platform integration mode for the Opik team.
adithya-s-k/FineEnvs
Builds a NeMo Gym (NVIDIA) variant of an RL environment. An agent skill from adithya-s-k/FineEnvs.
NVIDIA/cosmos-framework
Diagnose and fix Cosmos3 environment, installation, and runtime errors.
brevdev/workshop-build-an-agent
This skill should be used when the user wants to set up, install, deploy, bootstrap, or "spin up" the Build-an-Agent workshop (a.k.a.
NVIDIA/skills
A skill your agent uses when the user wants to deploy, run, debug, tear down, or call the REST API of the RTVI-CV 2D detection / tracking microservice.
NVIDIA/skills
Generates, validates, compares and explains HOLOLINK_def.svh macro files for the HSB IP, using bundled Python scripts and asking before it writes anything.
NVIDIA/skills
Runs and validates an end-to-end Mission Control demo in a locally installed Isaac Sim, with a Nova Carter robot driven through a Python server.
NVIDIA/skills
Orchestrates defect image generation for PCBA, metal surface and glass inspection with NVIDIA Cosmos AnomalyGen on OSMO, from cold-start Day 0 to real-photo Day 1 labeling.
NVIDIA/skills
Orchestrates video data augmentation and auto-labeling workflows on OSMO, from flow selection and preflight checks to submission, monitoring and output download.
NVIDIA/skills
Runs NVIDIA TAO Data Services KPI analysis on object detection results, comparing predictions to ground truth and writing per-class precision, recall and AP to a CSV.
Works with
Categories
Check progress for a detached KERMT run (pretrain, finetune, or any kermtrundetached invocation). Kermt Monitor is an agent skill from NVIDIA/skills, published by the product's own GitHub organization. Check progress for a detached KERMT run (pretrain, finetune, or any kermtrundetached invocation).
Kermt Monitor fits situations like: tasks that involve Fine-tuning; tasks that involve Containers.
Run `npx skills add NVIDIA/skills --skill kermt-monitor -a claude-code`. Or copy the skill folder (skills/bionemo-kermt-monitor in NVIDIA/skills) into .claude/skills/kermt-monitor in your project. Claude Code loads it when a task matches its description.
Run `npx skills add NVIDIA/skills --skill kermt-monitor -a codex`. Or copy the skill folder (skills/bionemo-kermt-monitor in NVIDIA/skills) into .agents/skills/kermt-monitor in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add NVIDIA/skills --skill kermt-monitor -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/kermt-monitor, .gemini/skills/kermt-monitor, .github/skills/kermt-monitor and .opencode/skills/kermt-monitor in your project.
Going by SKILL.md and its folder, Kermt Monitor needs the command-line tools its instructions call (jq and docker). Our summary lists: Python 3; Docker. Compatibility (from SKILL.md): Requires docker and jq. Designed for Claude Code, Codex, and Nemotron..
SKILL.md contains no URLs. Its commands use docker, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Kermt Monitor is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.8k tokens (SKILL.md is roughly 7.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Kermt Monitor: Safactory Workflows (AI45Lab/SAfactory, 236 stars), Megatron-LM Base Image Bump (NVIDIA/Megatron-LM, 18k stars), Opik Local Dev Environment (comet-ml/opik, 22k stars) and Generate Nemo Gym Env (adithya-s-k/FineEnvs, 461 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
NVIDIA (a GitHub organization, an official publisher) maintains it in NVIDIA/skills, which has 3,555 GitHub stars. The repository holds 390 skills in this directory. The repository was last updated on October 9, 2026.
Source: NVIDIA/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.