Agent skill

Change Grug

by marin-community in marin-community/marin

Modify or upstream behavior in a named Grug/Grugformer experiment variant.

Apache-2.0Auto-check passed

Install Change Grug

skills CLI
$ npx skills add marin-community/marin --skill change-grug -a claude-code

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

GitHub CLI
$ gh skill install marin-community/marin change-grug --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/marin-community/marin.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/change-grug .claude/skills/change-grug && 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
change-grug
GitHub stars
3.9k
Token cost
~829 tokens
SKILL.md length
376 words
Files
1
Skills in repo
41
Repo updated
First seen
Licence
Apache-2.0

At a glance

Modify or upstream behavior in a named Grug/Grugformer experiment variant.

  • Works in 6 steps: Pick one change bucket → Experiment in a copy → Record the experiment → …
  • SKILL.md covers Source Of Truth and Workflow
  • Calls uv

What it does

Change Grug is an agent skill from marin-community/marin. Modify or upstream behavior in a named Grug/Grugformer experiment variant.

Its SKILL.md is about 830 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

The repository describes itself as: Open-source framework for the research and development of foundation models. The licence is Apache-2.0.

Example prompts

  • “/change-grug”

Requirements

  • Python 3

Workflow steps

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

  1. Pick one change bucket
  2. Experiment in a copy
  3. Record the experiment
  4. Upstream to base if it wins
  5. Delete stale paths
  6. Validate

What it can do on your machine

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

  • Tool permissions

    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.

  • Runs code

    Shell commands in SKILL.md call:

    • uv

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

  • Network

    No URLs in SKILL.md. Its commands use uv, which can reach the network depending on how they are called.

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

  • Credentials

    Names no API keys, tokens, secrets or passwords.

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

Context cost

Change Grug loads about 829 tokens when it runs. Until then it costs about 22 tokens; SKILL.md has 376 words of instructions outside code blocks.

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

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 passed

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.

SKILL.md

The full file from marin-community/marin at commit c468793, republished under its Apache-2.0 licence (© marin-community). 376 words, ~829 tokens.

Download SKILL.mdSave it as .claude/skills/change-grug/SKILL.md (or your agent's skills folder).
name
change-grug
description
Modify or upstream behavior in a named Grug/Grugformer experiment variant.

Skill: Changing Grug (Template-First)

Grug is intentionally template-first: the canonical edit surface lives in experiments/grug/base/, not in a shared levanter.grug trainer stack.

This skill covers two steps: trying a change in an experiment copy, and upstreaming it into the base template when it proves out.

Do not use this skill to run an existing variant, change launch-only configuration, or add a bounded operational diagnostic. Use the variant README and launcher controls for those tasks.

Source Of Truth

  • Canonical template: experiments/grug/base/ — model.py, train.py, launch.py.
  • Variants: experiments/grug/<variant>/ — copy from base and modify locally (e.g. MoE).
  • One-off speedruns: experiments/speedrun/... — useful for exploration, not canonical.
  • Reference branch for array-stacked grug variant wiring: https://github.com/marin-community/marin/tree/codex/array-stacked-grug-variant-pointer — useful for perf-focused experiments, especially improving compile times and reducing peak HBM.

Workflow

1) Pick one change bucket

Keep each pass scoped to one bucket:

  • attention/masking
  • block wiring/norm ordering
  • MLP/activation
  • loss kernel behavior
  • optimizer/training loop behavior
2) Experiment in a copy
  • Copy experiments/grug/base to a new variant directory.
  • Keep edits local and explicit (copy/paste over abstraction).
  • Avoid introducing reusable framework surface unless there's clear repeated use.
3) Record the experiment

Update docs/reports/grug-archive.md with: path, origin (base, moe, or another source variant), commit SHA (when known), purpose, status (active, superseded, deleted), and diff link (prefer the CI-posted PR comment link; fallback to local report path).

For PRs that add a new experiments/grug/<variant>/, CI posts a visual diff comment automatically — copy that link into the archive entry.

For a local fallback, generate the diff report manually and link the report in the archive entry:

bash
uv run python scripts/ci/grug_dir_diff.py \
  experiments/grug/base \
  experiments/grug/<variant> \
  --out /tmp/grug-diff
Show full SKILL.md (125 more words)Show less
4) Upstream to base if it wins

Port the successful change back into experiments/grug/base/model.py, train.py, and launch.py. Keep it grug-style:

  • plain JAX arrays and explicit sharding
  • Equinox modules with init + __call__
  • minimal config knobs
  • legibility first; if a block gets hard to read, introduce a small local helper instead of framework indirection
  • when HBM is tight, use docs/references/hbm-optimization.md before bespoke memory hacks
  • when compile time or peak HBM is the bottleneck, evaluate an array-stacked variant first (see reference branch above)
5) Delete stale paths

After upstreaming, delete superseded experiment code; keep only the archive trail in docs/reports/grug-archive.md.

6) Validate
bash
./infra/pre-commit.py --all-files
uv run pytest tests/test_grug_variant_contracts.py

Add focused tests for any behavior changes.

This workflow is inspired by modded-nanogpt: iterate quickly in copy-paste experiments, then upstream only what stays simple and useful.

© marin-community, 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

Just SKILL.md in .agents/skills/change-grug of marin-community/marin.

Open the folder on GitHubat commit c468793

Compare with similar skills

Change Grug 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.

Change Grug compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Change Grug this skillmarin-community/marin3.9k—~829Automated safety check: PassApache-2.0
Finding ExperimentsPostHog/posthog40k—~826Automated safety check: PassCustom licence
ExperimentsArize-ai/phoenix12k—~1.8kAutomated safety check: PassCustom licence
Scroll Experiencesickn33/agentic-awesome-skills47k2 repos~534Automated safety check: PassMIT
Webgl Experiencenexu-io/open-design100k—~903Automated safety check: PassApache-2.0
Creating ExperimentsPostHog/posthog40k—~2.7kAutomated safety check: PassCustom licence

Similar skills

  • Finding Experiments

    PostHog/posthog

    Official

    Resolves a PostHog experiment reference from natural language to a concrete experiment ID by browsing experiment-list (not feature-flag tools), with disambiguation when multiple experiments match.

    40k GitHub stars~826 tokensUpdated yesterday
    Frontend & DesignAuto-check passed
  • Experiments

    Arize-ai/phoenix

    Run, read, and compare dataset-backed experiments to find evidence that a prompt or pipeline is improving.

    12k GitHub stars~1.8k tokensUpdated yesterday
    AI & LLM EngineeringAuto-check passed
  • Scroll Experience

    sickn33/agentic-awesome-skills

    Expert in building immersive scroll-driven experiences - parallax storytelling, scroll animations, interactive narratives, and cinematic web experiences.

    47k GitHub starsUsed in 2 repos~534 tokens
    Writing & ContentAuto-check passed
  • Webgl Experience

    nexu-io/open-design

    A full-screen, real-time WebGL/WebGL2 experience — animated shaders, 3D scenes, generative visuals, particle fields — rendered live on the GPU with a typographic overlay.

    100k GitHub stars~903 tokensUpdated yesterday
    Game DevelopmentAuto-check passed
  • Creating Experiments

    PostHog/posthog

    Official

    Guides agents through experiment creation: reading the project's setup with experiment-setup-context, defining the hypothesis, configuring rollout and bucketing, setting up analytics and running…

    40k GitHub stars~2.7k tokensUpdated yesterday
    Marketing & SEOAuto-check passed
  • Git Branch Naming

    makeplane/plane

    Names a new Git branch with a type prefix, the lowercased work item ID and a short kebab-case description, so the ID can be extracted later from the branch name.

    61k GitHub stars~594 tokensUpdated 2 days ago
    DevelopmentAuto-check passed

More from marin-community/marin

All 41 skills in this repo
  • Noslop

    marin-community/marin

    Deslop, simplify, or review low-value tests and prose only when explicitly requested for a branch or diff.

    3.9k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Use Iris

    marin-community/marin

    Use Iris to submit, inspect, debug, monitor, or recover jobs and tasks; diagnose scheduling and federation; deploy controllers; or reserve dev GPUs and TPUs.

    3.9k GitHub stars~745 tokensUpdated today
    Auto-check passed
  • Launch Rl

    marin-community/marin

    Define, validate, submit, or restart a Marin SkyRL experiment through its artifact main.

    3.9k GitHub stars~894 tokensUpdated today
    Auto-check passed
  • Marina Applet

    marin-community/marin

    Build, validate, publish, update, inspect, query, roll back, or archive a dynamic Marina applet.

    3.9k GitHub stars~2.3k tokensUpdated today
    Auto-check passed
  • Query Finelog

    marin-community/marin

    Query Finelog logs and telemetry for Iris tasks, workers, profiles, training, vLLM, and cross-cluster forwarding.

    3.9k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Trace Pulumi Diff

    marin-community/marin

    Run a read-only preview for a specified Marin infra/pulumi stack and trace each pending resource change to merged pull requests since its latest successful update when that update records a clean…

    3.9k GitHub stars~663 tokensUpdated today
    Auto-check passed

Questions about Change Grug

What does Change Grug do?

Modify or upstream behavior in a named Grug/Grugformer experiment variant. Change Grug is an agent skill from marin-community/marin. Modify or upstream behavior in a named Grug/Grugformer experiment variant.

How do I install Change Grug in Claude Code?

Run `npx skills add marin-community/marin --skill change-grug -a claude-code`. Or copy the skill folder (.agents/skills/change-grug in marin-community/marin) into .claude/skills/change-grug in your project. Claude Code loads it when a task matches its description.

How do I install Change Grug in Codex?

Run `npx skills add marin-community/marin --skill change-grug -a codex`. Or copy the skill folder (.agents/skills/change-grug in marin-community/marin) into .agents/skills/change-grug in your project. Codex loads it when a task matches its description.

Can I use Change Grug 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 marin-community/marin --skill change-grug -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/change-grug, .gemini/skills/change-grug, .github/skills/change-grug and .opencode/skills/change-grug in your project.

What does Change Grug need to run?

Going by SKILL.md and its folder, Change Grug needs the command-line tools its instructions call (uv). Our summary lists: Python 3.

Does Change Grug access the network?

SKILL.md contains no URLs. Its commands use uv, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Change Grug safe to install?

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.

What licence does Change Grug use?

Change Grug 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 Change Grug use?

About 829 tokens (SKILL.md is roughly 3.3k 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 Change Grug?

Skills that share tags, products or a category with Change Grug: Finding Experiments (PostHog/posthog, 40k stars), Experiments (Arize-ai/phoenix, 12k stars), Scroll Experience (sickn33/agentic-awesome-skills, 47k stars) and Webgl Experience (nexu-io/open-design, 100k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Change Grug?

marin-community (a GitHub organization) maintains it in marin-community/marin, which has 3,921 GitHub stars. The repository holds 41 skills in this directory. The repository was last updated on October 10, 2026.

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