PR Review Provider
yansongda/pay
A skill your agent uses when reviewing PRs that add or modify a payment Provider in yansongda/pay - covers plugin pipeline, multi-tenant safety, signature verification, docs, and naming conventions.
Run jcm on the shared UCSD dev workstation (8x A100-80GB, no scheduler) — find a genuinely free GPU, avoid stomping on colleagues' jobs, environment and scratch paths, and the etiquette/traps…
$ npx skills add climate-analytics-lab/jax-gcm --skill devbox-jcm-runs -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install climate-analytics-lab/jax-gcm devbox-jcm-runs --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/climate-analytics-lab/jax-gcm.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/devbox-jcm-runs .claude/skills/devbox-jcm-runs && 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 "devbox-jcm-runs" agent skill from https://github.com/climate-analytics-lab/jax-gcm/tree/dev/.claude/skills/devbox-jcm-runs into .claude/skills/devbox-jcm-runs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "devbox-jcm-runs", 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/climate-analytics-lab/jax-gcm/tree/dev/.claude/skills/devbox-jcm-runsType 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 climate-analytics-lab/jax-gcm --skill devbox-jcm-runs -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install climate-analytics-lab/jax-gcm devbox-jcm-runs --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/climate-analytics-lab/jax-gcm.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/devbox-jcm-runs .agents/skills/devbox-jcm-runs && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "devbox-jcm-runs" agent skill from https://github.com/climate-analytics-lab/jax-gcm/tree/dev/.claude/skills/devbox-jcm-runs into .agents/skills/devbox-jcm-runs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "devbox-jcm-runs", 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 climate-analytics-lab/jax-gcm --skill devbox-jcm-runs -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install climate-analytics-lab/jax-gcm devbox-jcm-runs --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/climate-analytics-lab/jax-gcm.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/devbox-jcm-runs .cursor/skills/devbox-jcm-runs && 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 "devbox-jcm-runs" agent skill from https://github.com/climate-analytics-lab/jax-gcm/tree/dev/.claude/skills/devbox-jcm-runs into .cursor/skills/devbox-jcm-runs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "devbox-jcm-runs", 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/climate-analytics-lab/jax-gcm.git --path .claude/skills/devbox-jcm-runs--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 climate-analytics-lab/jax-gcm --skill devbox-jcm-runs -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install climate-analytics-lab/jax-gcm devbox-jcm-runs --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/climate-analytics-lab/jax-gcm.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/devbox-jcm-runs .gemini/skills/devbox-jcm-runs && 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 "devbox-jcm-runs" agent skill from https://github.com/climate-analytics-lab/jax-gcm/tree/dev/.claude/skills/devbox-jcm-runs into .gemini/skills/devbox-jcm-runs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "devbox-jcm-runs", 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 climate-analytics-lab/jax-gcm devbox-jcm-runsInstalls 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 climate-analytics-lab/jax-gcm --skill devbox-jcm-runs -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/climate-analytics-lab/jax-gcm.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/devbox-jcm-runs .github/skills/devbox-jcm-runs && 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 "devbox-jcm-runs" agent skill from https://github.com/climate-analytics-lab/jax-gcm/tree/dev/.claude/skills/devbox-jcm-runs into .github/skills/devbox-jcm-runs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "devbox-jcm-runs", 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 climate-analytics-lab/jax-gcm --skill devbox-jcm-runs -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install climate-analytics-lab/jax-gcm devbox-jcm-runs --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/climate-analytics-lab/jax-gcm.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/devbox-jcm-runs .opencode/skills/devbox-jcm-runs && 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 "devbox-jcm-runs" agent skill from https://github.com/climate-analytics-lab/jax-gcm/tree/dev/.claude/skills/devbox-jcm-runs into .opencode/skills/devbox-jcm-runs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "devbox-jcm-runs", 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.
devbox-jcm-runsRun jcm on the shared UCSD dev workstation (8x A100-80GB, no scheduler) — find a genuinely free GPU, avoid stomping on colleagues' jobs, environment and scratch paths, and the etiquette/traps…
Devbox Jcm Runs is an agent skill from climate-analytics-lab/jax-gcm. Run jcm on the shared UCSD dev workstation (8x A100-80GB, no scheduler) — find a genuinely free GPU, avoid stomping on colleagues' jobs, environment and scratch paths, and the etiquette/traps specific to an unscheduled multi-tenant box. Use for any local jcm run, benchmark or long integration on this machine.
Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Backend & APIs, covering Multi-tenancy. The repository describes itself as: GCM Physics written in JAX. The licence is Apache-2.0.
Read from SKILL.md and the folder at commit 20ca89d. 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:
pythongitFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git, 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.
Devbox Jcm Runs loads about 1.7k tokens when it runs. Until then it costs about 82 tokens; SKILL.md has 795 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 climate-analytics-lab/jax-gcm at commit 20ca89d, republished under its Apache-2.0 licence (© climate-analytics-lab). 795 words, ~1,687 tokens.
.claude/skills/devbox-jcm-runs/SKILL.md (or your agent's skills folder).Site layer for sn4622116170: 8x NVIDIA A100 80GB PCIe, no batch scheduler.
Read jcm-run for the model/Hydra layer and jcm-benchmark for throughput
methodology — this file only covers what is specific to this machine. (The
Derecho equivalent is derecho-jcm-runs; the contrast matters, see below.)
For benchmarks, prefer kubernetes-jcm-runs. Exclusivity is the whole
problem here — a neighbour landing on your card mid-run corrupts the timing
silently — and a cluster pod gets it by construction. Use this box when you
want a card immediately, are iterating interactively, or need the local
scratch and boundary data.
On Derecho, PBS hands you exclusive GPUs and queueing is the scheduler's problem. Here you self-allocate, several colleagues run directly on the same box at the same time, and nothing stops two people picking the same card. Everything below follows from that.
Always run on a free card. For benchmarks this is absolute — a contended card does not fail loudly, it returns a plausible number that is simply wrong.
python tools/gpu_util.py # every GPU, its memory, and its tenants
python tools/gpu_util.py --free # free indices; exit 1 if none
python tools/gpu_util.py --wait 3600 # block until one frees, print its indexDo not judge freeness by utilisation. A real reading from this box:
GPU 0 busy 36113/81920 MiB 0% python(414 MiB) x4, python(34422 MiB)
GPU 3 busy 21854/81920 MiB 0% python(1318 MiB) ... python(14994 MiB)
GPU 4 FREE 5/81920 MiB 0%GPUs 0 and 3 both read 0 % utilisation while carrying five or six of someone else's processes and tens of GB. Utilisation is instantaneous; a parked job shows 0 % until it wakes.
Nor by memory alone. A colleague's Jupyter kernel sat on GPU 1 for weeks
holding ~1.2 GiB, so the card read 1182 MiB, 0 % — which looks like idle
driver overhead. It was judged free and a 3-hour benchmark was started on top
of it. Require no compute apps and < ~2 GiB resident; gpu_util.py
enforces exactly that, and tools/benchmark.py refuses to start otherwise.
Note nvidia-smi --query-compute-apps reports GPU uuids, not indices, so
the two queries must be joined on uuid — the reason this is a module and not a
shell one-liner.
python tools/gpu_util.py --stale # >24 h old and holding <4 GiBA Jupyter kernel holding 1.2 GiB of an 80 GiB card contributes no compute contention but pins the GPU for anyone whose scheduler — or safety gate — treats "has a tenant" as "busy". At the time of writing that is 6 processes from one user, 24-26 days old, holding 9.4 GiB and pinning 3 of the 8 cards.
Report these to their owner rather than quietly working around them; the
whole box benefits. --stale exists so the list is generated rather than
hand-maintained, since the specific PIDs change but the pattern does not.
If a card is blocked only by a long-parked kernel and nothing else is free,
--allow-busy-gpu is defensible — a dormant tenant does not perturb timings
— but it is a judgement call about someone else's process, so ask first,
and record it in the report's provenance.
/home/lepeng/..., /data/j2wilke/..., /data/jamadan/...).pkill -f <pattern>. The pattern matches your own shell and other
people's jobs; it has killed this session's own shell twice. Kill explicit
PIDs you have confirmed are yours — e.g. filter on your run's output prefix:
ps -eo pid,args | grep "[m]yprefix" | awk '{print $1}'.nohup + CUDA_VISIBLE_DEVICES=<idx> so a dropped session does
not take the run with it.XLA_PYTHON_CLIENT_PREALLOCATE=false — otherwise one process grabs the whole
HBM and locks out everyone including your own second run.XLA_PYTHON_CLIENT_MEM_FRACTION here the way the Derecho skill
does; that machine gives you the node, this one does not.PY=/home/dwatsonparris/micromamba/envs/jcm/bin/python # NOT on PATH
# or: eval "$(micromamba shell hook --shell bash)" && micromamba activate jcmjcm, jax-rrtmgp and mam4-jax are editable installs, so the
working tree is the running code. Check what you are actually running:
git -C /data/dwatsonparris/jax-rrtmgp rev-parse --abbrev-ref HEADTo A/B a library version, never git checkout in the shared clone — that
silently changes the code under a colleague's running job. Use a worktree and
PYTHONPATH:
git -C /data/dwatsonparris/jax-rrtmgp worktree add \
/data/dwatsonparris/jax-rrtmgp-worktrees/<name> origin/<branch>
PYTHONPATH=/data/dwatsonparris/jax-rrtmgp-worktrees/<name> $PY -m jcm.main ...
# verify it took:
PYTHONPATH=<worktree> $PY -c "import rrtmgp,os; print(os.path.dirname(rrtmgp.__file__))"/scr/dwatsonparris/ — fast
ephemeral NVMe. /data is near-full and is not the place for netCDF output./data when a campaign is done; /scr is scratch./data/dwatsonparris/jax-gcm, with worktrees under
/data/dwatsonparris/jcm-worktrees/.Terrain, forcing and ozone are packaged in the repo (jcm/data/bc/t63/)
and forcing.ozone_file: auto resolves the right one — pass no ozone
override. See jcm-run for the full explanation; on a hybrid grid auto
raises rather than falling back, so a resolution failure is loud. There is no scratch-purge concern here, unlike Derecho's
prepared JAM aux inputs.
T63L47, ECHAM + RRTMGP, real orography/SSTs, dt=12 min, one A100-80GB,
measured with tools/benchmark.py over 30 days:
| build | s/sim day | sim days/hr | sim years/day |
|---|---|---|---|
| jax-rrtmgp with the unbounded minor-gas scan | 72.2 | 49.9 | 3.3 |
jax-rrtmgp perf/minor-gas-scan-bound | 20.5 | 174.6 | 11.5 |
Peak memory 8.6 GiB; ~85 % utilisation at ~223 W of the card's 300 W rating — i.e. not compute-bound. Three independent A/B pairs agreed to within 2.5 % (jax-rrtmgp#22).
© climate-analytics-lab, 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
Just SKILL.md in .claude/skills/devbox-jcm-runs of climate-analytics-lab/jax-gcm.
Open the folder on GitHubat commit 20ca89d
Devbox Jcm Runs 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 |
|---|---|---|---|---|---|---|
| Devbox Jcm Runs this skillclimate-analytics-lab/jax-gcm | 108 | — | ~1.7k | Automated safety check: Pass | Apache-2.0 | |
| PR Review Provideryansongda/pay | 5.4k | — | ~2.4k | Automated safety check: Pass | MIT | |
| Abp Authorizationabpframework/abp | 14k | — | ~1.3k | Automated safety check: Pass | LGPL-3.0 | |
| Django Access Reviewgetsentry/skills | 1k | 3 repos | ~2.6k | Automated safety check: Notes | Apache-2.0 | |
| Backend Dev Guidelineslitefuse/litefuse | 100 | 1 repos | ~5.8k | Automated safety check: Pass | Custom licence | |
| Ecto Persistence Patternsgeorgeguimaraes/elixir-agent-tools | 184 | — | ~1.2k | Automated safety check: Pass | Apache-2.0 |
yansongda/pay
A skill your agent uses when reviewing PRs that add or modify a payment Provider in yansongda/pay - covers plugin pipeline, multi-tenant safety, signature verification, docs, and naming conventions.
abpframework/abp
ABP permission system - PermissionDefinitionProvider, [Authorize] attribute, CheckPolicyAsync, IsGrantedAsync, ICurrentUser, IPermissionManager, multi-tenancy side.
getsentry/skills
Django access control and IDOR security review. An agent skill from getsentry/skills.
litefuse/litefuse
Comprehensive backend development guide for Litefuse's Next.js 14/tRPC/Express/TypeScript monorepo.
georgeguimaraes/elixir-agent-tools
Designs and debugs Elixir persistence with Ecto: schemas, changesets, queries, preloads, migrations and multi-tenancy, kept within application contexts.
marckohlbrugge/37signals-skills
Apply Rails security and multi-tenant safety practices including scoped queries, SSRF defenses, rate limiting, and tenant-scoped realtime updates.
climate-analytics-lab/jax-gcm
Submit, monitor and benchmark jax-gcm (jcm) simulations on NCAR Derecho's PBS queues.
climate-analytics-lab/jax-gcm
Run jcm on a Kubernetes GPU cluster — generate benchmark and production Job manifests, pick a comparable GPU, survive eviction, collect results.
climate-analytics-lab/jax-gcm
Measure jcm throughput reproducibly — short (1 month) or long (12 month) runs on a validated stable config, with GPU memory/utilisation logging and an explicit convergence criterion.
climate-analytics-lab/jax-gcm
End-to-end development workflow for jcm — atomic commits, the local test/lint gate, opening a PR linked to its issue, monitoring CI and the automatic Codex review, addressing feedback, and handing…
climate-analytics-lab/jax-gcm
Run the jax-gcm CI gates locally on Derecho when GitHub Actions minutes are exhausted or a pre-push check is wanted — lint, fast tests (90% coverage), slow tests (80% PR coverage) and a local Claude…
climate-analytics-lab/jax-gcm
Launch a jcm model run through the built-in Hydra configs — config groups, the validated stable T63L47 overrides, Hydra override traps, and watching for startup failures.
Categories
Run jcm on the shared UCSD dev workstation (8x A100-80GB, no scheduler) — find a genuinely free GPU, avoid stomping on colleagues' jobs, environment and scratch paths, and the etiquette/traps…. Devbox Jcm Runs is an agent skill from climate-analytics-lab/jax-gcm. Run jcm on the shared UCSD dev workstation (8x A100-80GB, no scheduler) — find a genuinely free GPU, avoid stomping on colleagues' jobs, environment and scratch paths, and the etiquette/traps specific to an unscheduled multi-tenant box.
Devbox Jcm Runs fits situations like: any local jcm run; long integration on this machine.
Run `npx skills add climate-analytics-lab/jax-gcm --skill devbox-jcm-runs -a claude-code`. Or copy the skill folder (.claude/skills/devbox-jcm-runs in climate-analytics-lab/jax-gcm) into .claude/skills/devbox-jcm-runs in your project. Claude Code loads it when a task matches its description.
Run `npx skills add climate-analytics-lab/jax-gcm --skill devbox-jcm-runs -a codex`. Or copy the skill folder (.claude/skills/devbox-jcm-runs in climate-analytics-lab/jax-gcm) into .agents/skills/devbox-jcm-runs 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 climate-analytics-lab/jax-gcm --skill devbox-jcm-runs -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/devbox-jcm-runs, .gemini/skills/devbox-jcm-runs, .github/skills/devbox-jcm-runs and .opencode/skills/devbox-jcm-runs in your project.
Going by SKILL.md and its folder, Devbox Jcm Runs needs the command-line tools its instructions call (python and git). Our summary lists: Python 3.
SKILL.md contains no URLs. Its commands use git, 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.
Devbox Jcm Runs 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.
About 1.7k tokens (SKILL.md is roughly 6.7k 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 Devbox Jcm Runs: PR Review Provider (yansongda/pay, 5.4k stars), Abp Authorization (abpframework/abp, 14k stars), Django Access Review (getsentry/skills, 1k stars) and Backend Dev Guidelines (litefuse/litefuse, 100 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
climate-analytics-lab (a GitHub organization) maintains it in climate-analytics-lab/jax-gcm, which has 108 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on October 7, 2026.
Source: climate-analytics-lab/jax-gcm on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.