Nemo Rl Brev Etiquette
NVIDIAOfficialPublished by NVIDIA
- Skill
- Guidelines
- Cloud and DevOps
- Apache-2.0
- Medium risk
AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
This skill provides a structured approach to managing disk space and environment configuration on Brev instances. It establishes a clear separation between the source code repository located in /home/ubuntu/RL and the high-capacity /ephemeral volume used for heavy experiment artifacts, logs, and caches. By following these patterns, agents can prevent disk exhaustion, maintain clean git repositories, and securely handle sensitive credentials like W&B or Hugging Face tokens.
What it does
- Defines directory structures to separate source code from experiment data.
- Provides patterns for redirecting caches and temporary files to the /ephemeral volume.
- Outlines secure procedures for loading and managing environment variables from .env files.
- Establishes a checklist for monitoring disk capacity before and during long-running jobs.
- Standardizes the organization of experiment logs, checkpoints, and artifacts.
- Offers guidance on cleaning up experiment data without disrupting shared caches.
When to use it
- When launching NeMo-RL auto-research campaigns on a Brev instance.
- Before starting training jobs or experiments that generate large logs or checkpoints.
- When configuring environments that require authenticated access to W&B or Hugging Face.
- When managing shared caches for tools like PyTorch, Hugging Face, or pip.
- When disk space in the primary workspace is limited and requires offloading to /ephemeral.
Advantages
- Prevents workspace disk overflow by offloading heavy assets to /ephemeral.
- Keeps git repositories clean and focused on code rather than bulky artifacts.
- Ensures reproducible experiments by standardizing path management.
- Improves security by centralizing and protecting sensitive environment variables.
- Facilitates efficient resource usage through shared cache directories.
Usage examples
- “How should I configure my environment variables for a new NeMo-RL run on Brev?”
- The agent will guide you to store secrets in /home/ubuntu/RL/.env and provide the shell snippet to safely load them into the environment before execution.
- “I am running out of disk space on my Brev instance during a training job. What should I do?”
- The agent will instruct you to check disk usage with df -h, move large output directories to /ephemeral, and update your configuration to point cache and log paths to the /ephemeral volume.
Install
Download the skill as a ZIP:
https://autogineer.com/agent-skills/nvidia/nemo-rl-brev-etiquette/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip nemo-rl-brev-etiquette.zip -d .agents/skills
Documentation by NVIDIA
Brev Etiquette
Operate as though /home/ubuntu/RL is the source checkout and /ephemeral is the working storage for generated experiment state. Keep the repo small, reproducible, and easy to inspect. Move bulky run outputs to /ephemeral before launching anything expensive.
Storage Rules
Keep code edits, small config changes, committed experiment hypotheses, and concise reproducibility records under
/home/ubuntu/RL.Put generated experiment assets under
/ephemeral, including checkpoints, run logs, Ray temp directories, W&B offline files, profiler traces, evaluation dumps, rollout samples, and per-experiment artifacts.Keep reusable caches under one shared
/ephemeralcache root per user, not under each experiment. This includes Hugging Face models, dataset caches, PyTorch caches, Triton caches,uvcaches, and pip caches.Before a campaign or long run, check capacity with
df -h /home/ubuntu/RL /ephemeraland avoid starting if/ephemeralis missing or nearly full.Create a campaign root such as
/ephemeral/nemo-rl/${USER:-ubuntu}/nemo-rl-auto-research/<campaign>and use one subdirectory per experiment.Do not leave large files, cache directories, or generated outputs in the git checkout. If a tool defaults to the repo, override its output/cache path before running it.
Environment Secrets
Treat
/home/ubuntu/RL/.envas the local secret store. It may contain keys such asWANDB_API_KEY,HF_TOKEN, orHUGGING_FACE_HUB_TOKEN.Before any run that may need external auth, load
/home/ubuntu/RL/.envwhen it exists. Never print,cat, log, commit, or summarize secret values.If
/home/ubuntu/RL/.envis absent, or a required key is still unset after loading it, remind the user to add the needed key to that file before launching authenticated work.
if [ -f /home/ubuntu/RL/.env ]; then
set -a
. /home/ubuntu/RL/.env
set +a
else
echo "Missing /home/ubuntu/RL/.env; add required keys such as WANDB_API_KEY or HF_TOKEN before authenticated runs."
fiAuto-Research Pattern
When using nemo-rl-auto-research, keep the git ledger in the repo and heavy evidence on /ephemeral.
if [ -f /home/ubuntu/RL/.env ]; then
set -a
. /home/ubuntu/RL/.env
set +a
fi
BREV_ROOT=/ephemeral/nemo-rl/${USER:-ubuntu}
CACHE_ROOT=$BREV_ROOT/cache
CAMPAIGN_ROOT=$BREV_ROOT/nemo-rl-auto-research/<campaign>
EXP_DIR=$CAMPAIGN_ROOT/<experiment>
mkdir -p "$EXP_DIR"/{logs,checkpoints,artifacts,ray,tmp,wandb}
mkdir -p "$CACHE_ROOT"/{huggingface,torch,triton,uv,pip,xdg,wandb}
export HF_HOME=$CACHE_ROOT/huggingface
export HF_HUB_CACHE=$HF_HOME/hub
export HF_DATASETS_CACHE=$HF_HOME/datasets
export TRANSFORMERS_CACHE=$HF_HOME/transformers
export TORCH_HOME=$CACHE_ROOT/torch
export TRITON_CACHE_DIR=$CACHE_ROOT/triton
export UV_CACHE_DIR=$CACHE_ROOT/uv
export PIP_CACHE_DIR=$CACHE_ROOT/pip
export XDG_CACHE_HOME=$CACHE_ROOT/xdg
export WANDB_CACHE_DIR=$CACHE_ROOT/wandb
export RAY_TMPDIR=$EXP_DIR/ray
export TMPDIR=$EXP_DIR/tmp
export WANDB_DIR=$EXP_DIR/wandbRecord the absolute /ephemeral paths in the nemo-rl-auto-research TSV fields for log path, checkpoint path, artifacts, shared cache root, and command. If the TSV itself may grow large, store the full TSV in /ephemeral and keep a small pointer file or summary in the repo.
Launch Checklist
Inspect disk first:
df -h /home/ubuntu/RL /ephemeral.Choose a unique
/ephemeralrun root before editing recipes or launching jobs.Reuse a shared cache root such as
/ephemeral/nemo-rl/${USER:-ubuntu}/cacheacross experiments unless a run explicitly requires a clean cache.Override recipe output paths, logger paths, checkpoint paths, and temp paths to point under the experiment directory.
Override cache paths to point under the shared cache root.
Stream stdout/stderr to
$EXP_DIR/logs/run.logor an equivalent file under/ephemeral.Periodically check disk during long runs with
df -h /ephemeraland stop gracefully if the volume is approaching exhaustion.At the end, summarize the important metrics and paths in the repo ledger; do not copy bulky artifacts back into
/home/ubuntu/RL.
Cleanup
Clean only files that belong to the current campaign or experiment.
Prefer pruning clearly named experiment directories under
/ephemeral/nemo-rl/...; never remove shared caches or another user's run directory without an explicit instruction.Preserve enough small metadata in the repo to reproduce a result after
/ephemeralis cleaned.
Files
- ATTRIBUTION.mdAdded by AutoGineer843 B
- BENCHMARK.md4.2 KiB
- LICENSELicence file added by AutoGineer11.2 KiB
- SKILL.md5.1 KiB
- evals/evals.json2.2 KiB
- skill-card.md3.8 KiB
- skill.oms.sig4.5 KiB
skill.oms.sig
{"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json","verificationMaterial":{"x509CertificateChain":{"certificates":[{"rawBytes":"MIICgzCCAgmgAwIBAgIUKIyS7SxNteQIiWzK1dWj85E6520wCgYIKoZIzj0EAwMwVTELMAkGA1UEBhMCVVMxGzAZBgNVBAoMEk5WSURJQSBDb3Jwb3JhdGlvbjEpMCcGA1UEAwwgTlZJRElBIEFnZW50IENhcGFiaWxpdGllcyBJQ0EgMDEwHhcNMjYwNDAxMDAwMDAwWhcNMjgwNDIyMTUzMzA5WjBUMQswCQYDVQQGEwJVUzEbMBkGA1UECgwSTlZJRElBIENvcnBvcmF0aW9uMSgwJgYDVQQDDB9OVklESUEgQWdlbnQgU2tpbGxzIFNpZ25pbmcgMDAxMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEYoRM9bQl/dGlwSRNi6bTpIJUXH8Nv9GciP6LSflJYYMLCc296kpyuTSsk5ddbAWiDcFX3C/ydX3jwc+qCLYP6uHy9XphyLjOQ27Yb2J6rBLVtRBS1mgGco/Gr7fL6ODco4GaMIGXMB0GA1UdDgQWBBRQ/5ZW3nJ6lmo9SVk7I15o7UGmpTAfBgNVHSMEGDAWgBRPGpILxMBBleJSsBGjrMKsby1CgjAMBgNVHRMBAf8EAjAAMA4GA1UdDwEB/wQEAwIHgDA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAGGG2h0dHA6Ly9vY3NwLm5kaXMubnZpZGlhLmNvbTAKBggqhkjOPQQDAwNoADBlAjAUygu/GiOCIXrgGr4SmLgeEVDcEitfFUv7ALbvLVGVyMysB3mxmO/uInZfXzWcJZsCMQDxuoxj4ZmO30jhkPIcCxGFCOvnUsnfU3TfGcouYm4M6iRpbKvtVnHPiy4bi6pcKf0="},{"rawBytes":"MIICiDCCAg6gAwIBAgIUZsIuSv9NkpJCNqtYEfCouVv5BzowCgYIKoZIzj0EAwMwUTELMAkGA1UEBhMCVVMxGzAZBgNVBAoMEk5WSURJQSBDb3Jwb3JhdGlvbjElMCMGA1UEAwwcTlZJRElBIEFnZW50IENhcGFiaWxpdGllcyBDQTAgFw0yNjA0MDEwMDAwMDBaGA85OTk5MTIzMTIzNTk1OVowVTELMAkGA1UEBhMCVVMxGzAZBgNVBAoMEk5WSURJQSBDb3Jwb3JhdGlvbjEpMCcGA1UEAwwgTlZJRElBIEFnZW50IENhcGFiaWxpdGllcyBJQ0EgMDEwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASI72cR3ctKGg4VWnB3bNja6g1Z2PnOmFEopkPof+QeIcPk9rT+g9MjJnq51EQXL93a7C2GJ9J985G4o2V85VD7wJ1RaXhluHW2rf3y8bQGeAYaKMr5s/hUgn+M3/9WlWejgaAwgZ0wHQYDVR0OBBYEFE8akgvEwEGV4lKwEaOswqxvLUKCMB8GA1UdIwQYMBaAFItnoAjjfuCEUvzyvWyI2vOGvwPjMBIGA1UdEwEB/wQIMAYBAf8CAQAwDgYDVR0PAQH/BAQDAgEGMDcGCCsGAQUFBwEBBCswKTAnBggrBgEFBQcwAYYbaHR0cDovL29jc3AubmRpcy5udmlkaWEuY29tMAoGCCqGSM49BAMDA2gAMGUCMQCeIMMfAbyzPDacw2MxG+Yt1cikrJX/DVxiGfXuHmkkXn6VgSzE79+lkqDErpVO2gYCMCNEColOyvUvkzZGUEI1hQ3PfMgi3FIo9tHoBKMw4/wGBLFpu/0ubtmbBXM6/UMOEw=="},{"rawBytes":"MIICRTCCAcygAwIBAgIUeJdY3rV86EdvFmG7L8LJBsyQFYkwCgYIKoZIzj0EAwMwUTELMAkGA1UEBhMCVVMxGzAZBgNVBAoMEk5WSURJQSBDb3Jwb3JhdGlvbjElMCMGA1UEAwwcTlZJRElBIEFnZW50IENhcGFiaWxpdGllcyBDQTAgFw0yNjA0MDEwMDAwMDBaGA85OTk5MTIzMTIzNTk1OVowUTELMAkGA1UEBhMCVVMxGzAZBgNVBAoMEk5WSURJQSBDb3Jwb3JhdGlvbjElMCMGA1UEAwwcTlZJRElBIEFnZW50IENhcGFiaWxpdGllcyBDQTB2MBAGByqGSM49AgEGBSuBBAAiA2IABAYpiXCDjJ9NT2eSDhyHJVSw1Tbze18cGG2F/578oWvHxg23eQAhNRYdq88i1iOshZSO6C29doKui5Xpmo/7Ctw9Sx4PP2RzOmIuOLCuTdNtKcTRwi4GEsd5BAFvWj42M6NjMGEwHQYDVR0OBBYEFItnoAjjfuCEUvzyvWyI2vOGvwPjMB8GA1UdIwQYMBaAFItnoAjjfuCEUvzyvWyI2vOGvwPjMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMAoGCCqGSM49BAMDA2cAMGQCMCwtAjWLaNwgGWNCgdyNoTyvNhqWRECRJV2r3+7w8g0PL6NHLOsbkgE09BH95h8XlgIwTaQmbbUh2ChAJ5TA1wRiVDnCcvbzHlZl2jM2FcwQQZlk19LOAbyGMRixbu2Ww/rj"}]},"tlogEntries":[]},"dsseEnvelope":{"payload":"ewogICJfdHlwZSI6ICJodHRwczovL2luLXRvdG8uaW8vU3RhdGVtZW50L3YxIiwKICAic3ViamVjdCI6IFsKICAgIHsKICAgICAgIm5hbWUiOiAibmVtby1ybC1icmV2LWV0aXF1ZXR0ZSIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI5ODAxMDdhOWE0MWY2MDY4ZjljOWEyZGQ5MTViY2FmY2VlMDE2MWFlNmMxN2ZkMmMzYzY0MjU0ZGRkNjYxYmQ5IgogICAgICB9CiAgICB9CiAgXSwKICAicHJlZGljYXRlVHlwZSI6ICJodHRwczovL21vZGVsX3NpZ25pbmcvc2lnbmF0dXJlL3YxLjAiLAogICJwcmVkaWNhdGUiOiB7CiAgICAic2VyaWFsaXphdGlvbiI6IHsKICAgICAgIm1ldGhvZCI6ICJmaWxlcyIsCiAgICAgICJpZ25vcmVfcGF0aHMiOiBbCiAgICAgICAgIi5naXQiLAogICAgICAgICIuZ2l0aWdub3JlIiwKICAgICAgICAiLmdpdGF0dHJpYnV0ZXMiLAogICAgICAgICIuZ2l0aHViIgogICAgICBdLAogICAgICAiaGFzaF90eXBlIjogInNoYTI1NiIsCiAgICAgICJhbGxvd19zeW1saW5rcyI6IGZhbHNlCiAgICB9LAogICAgInJlc291cmNlcyI6IFsKICAgICAgewogICAgICAgICJhbGdvcml0aG0iOiAic2hhMjU2IiwKICAgICAgICAibmFtZSI6ICJCRU5DSE1BUksubWQiLAogICAgICAgICJkaWdlc3QiOiAiYzEwMDA2NTVjYmY4ZjA5ZDVjNGUyYzA1OTQ1OTcxNzFkMmEwN2I3NjNmMTE2ZjEzNDAzNDQ4YTFlNmMzZjc4ZiIKICAgICAgfSwKICAgICAgewogICAgICAgICJhbGdvcml0aG0iOiAic2hhMjU2IiwKICAgICAgICAibmFtZSI6ICJTS0lMTC5tZCIsCiAgICAgICAgImRpZ2VzdCI6ICJhYzgzODJjYjBjNTYzYzgwOWU5YTYxZTVlMDNkYWRjMjBmMDI3ZDhjNDcyYmE3ZjlhNzlmNjk0NzhmNGM1OTg5IgogICAgICB9LAogICAgICB7CiAgICAgICAgImFsZ29yaXRobSI6ICJzaGEyNTYiLAogICAgICAgICJuYW1lIjogImV2YWxzL2V2YWxzLmpzb24iLAogICAgICAgICJkaWdlc3QiOiAiN2RmNDI5OGQ0MTdmYjY3OGVkMmM4Njk5Y2E0N2FhYTJjZWZhMGViNTZhMTYwYWQxNjY2ZmJhYTgzNjRjOTViMiIKICAgICAgfSwKICAgICAgewogICAgICAgICJhbGdvcml0aG0iOiAic2hhMjU2IiwKICAgICAgICAibmFtZSI6ICJza2lsbC1jYXJkLm1kIiwKICAgICAgICAiZGlnZXN0IjogIjVlNDZlYzE1MjcwYTI1OTQ0M2M2ZmNlZTg1NzU1MTliZDEzMTQwNmE5ZmU1OWU1NzhhZjI2YzVhZjdhOGNjZmIiCiAgICAgIH0KICAgIF0KICB9Cn0=","payloadType":"application/vnd.in-toto+json","signatures":[{"sig":"MGQCMF+66hjKclZkWSDQqH9JEqzpCJyPb9fR+o4nKZb9sh/MkNq7idmq/HVRulM2Hzko1QIwSXHuViwWDzDuTPPUGB0TtxaEYS1fDO/2oXp9OaMlHHGLeNaoaAFYRsnUHf7aja5S","keyid":""}]}}Requirements and compatibility
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Needs: Needs an API key
Security
What our scanner noticed· Medium risk
- Large base64-encoded blobs
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Published by
- NVIDIA
- Publisher
- NVIDIA (Official)
- Source
- NVIDIA/skills · skills/nemo-rl-brev-etiquette · commit fce3cca
- Licence
- Apache License 2.0 (redistribution allowed)
- LICENSE (added by AutoGineer from LICENSE-APACHE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
AutoGineer is not affiliated with or endorsed by NVIDIA or NVIDIA.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download nemo-rl-brev-etiquette.zip