Distributed Triage
pytorch/pytorch
Sub-triages issues in the oncall:distributed queue by assigning distributed module labels, routing to sub-oncalls, and marking triaged.
Split a rewards-distribution MIP that exceeds Moonbeam's 16,777,216 (2^24) per-tx gas cap into chain-destination chunks (e.g.
$ npx skills add moonwell-fi/moonwell-contracts-v2 --skill split-rewards-mip -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install moonwell-fi/moonwell-contracts-v2 split-rewards-mip --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/moonwell-fi/moonwell-contracts-v2.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/split-rewards-mip .claude/skills/split-rewards-mip && 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 "split-rewards-mip" agent skill from https://github.com/moonwell-fi/moonwell-contracts-v2/tree/main/.claude/skills/split-rewards-mip into .claude/skills/split-rewards-mip/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "split-rewards-mip", 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/moonwell-fi/moonwell-contracts-v2/tree/main/.claude/skills/split-rewards-mipType 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 moonwell-fi/moonwell-contracts-v2 --skill split-rewards-mip -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install moonwell-fi/moonwell-contracts-v2 split-rewards-mip --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/moonwell-fi/moonwell-contracts-v2.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/split-rewards-mip .agents/skills/split-rewards-mip && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "split-rewards-mip" agent skill from https://github.com/moonwell-fi/moonwell-contracts-v2/tree/main/.claude/skills/split-rewards-mip into .agents/skills/split-rewards-mip/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "split-rewards-mip", 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 moonwell-fi/moonwell-contracts-v2 --skill split-rewards-mip -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install moonwell-fi/moonwell-contracts-v2 split-rewards-mip --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/moonwell-fi/moonwell-contracts-v2.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/split-rewards-mip .cursor/skills/split-rewards-mip && 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 "split-rewards-mip" agent skill from https://github.com/moonwell-fi/moonwell-contracts-v2/tree/main/.claude/skills/split-rewards-mip into .cursor/skills/split-rewards-mip/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "split-rewards-mip", 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/moonwell-fi/moonwell-contracts-v2.git --path .claude/skills/split-rewards-mip--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 moonwell-fi/moonwell-contracts-v2 --skill split-rewards-mip -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install moonwell-fi/moonwell-contracts-v2 split-rewards-mip --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/moonwell-fi/moonwell-contracts-v2.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/split-rewards-mip .gemini/skills/split-rewards-mip && 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 "split-rewards-mip" agent skill from https://github.com/moonwell-fi/moonwell-contracts-v2/tree/main/.claude/skills/split-rewards-mip into .gemini/skills/split-rewards-mip/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "split-rewards-mip", 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 moonwell-fi/moonwell-contracts-v2 split-rewards-mipInstalls 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 moonwell-fi/moonwell-contracts-v2 --skill split-rewards-mip -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/moonwell-fi/moonwell-contracts-v2.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/split-rewards-mip .github/skills/split-rewards-mip && 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 "split-rewards-mip" agent skill from https://github.com/moonwell-fi/moonwell-contracts-v2/tree/main/.claude/skills/split-rewards-mip into .github/skills/split-rewards-mip/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "split-rewards-mip", 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 moonwell-fi/moonwell-contracts-v2 --skill split-rewards-mip -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install moonwell-fi/moonwell-contracts-v2 split-rewards-mip --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/moonwell-fi/moonwell-contracts-v2.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/split-rewards-mip .opencode/skills/split-rewards-mip && 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 "split-rewards-mip" agent skill from https://github.com/moonwell-fi/moonwell-contracts-v2/tree/main/.claude/skills/split-rewards-mip into .opencode/skills/split-rewards-mip/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "split-rewards-mip", 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.
split-rewards-mipSplit a rewards-distribution MIP that exceeds Moonbeam's 16,777,216 (2^24) per-tx gas cap into chain-destination chunks (e.g.
Split Rewards Mip is an agent skill from moonwell-fi/moonwell-contracts-v2. Split a rewards-distribution MIP that exceeds Moonbeam's 16,777,216 (2^24) per-tx gas cap into chain-destination chunks (e.g. x51 → x51a/x51b/x51c). Walks through the cast estimate precheck, generates new folders/JSON/SH/SOL, and rebalances the bridgeToRecipient amounts in TG-flow order so each split's first outflow is fully funded.
Its SKILL.md is about 1.1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
The licence is BSD-3-Clause.
9 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 9a8b980. 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:
gitmakeFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
moonwell-reward-automation.moonwell.workers.devFrom 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.
Split Rewards Mip loads about 1.1k tokens when it runs. Until then it costs about 88 tokens; SKILL.md has 474 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 moonwell-fi/moonwell-contracts-v2 at commit 9a8b980, republished under its BSD-3-Clause licence (© moonwell-fi). 474 words, ~1,110 tokens.
.claude/skills/split-rewards-mip/SKILL.md (or your agent's skills folder).Use when a rewards-distribution MIP's propose() gas estimate exceeds ~15M
(Moonbeam's per-tx cap is 16,777,216). Above that, the tx is silently dropped by
Goldsky/Alchemy/public RPC, or rejected at submit on Alchemy/public Moonbeam
RPC.
mip-x51).x51a = Moonbeam-only payload + Optimism rewards bridgex51b = Base rewards bridgex51c = Base bad-debt repaymentcast estimate <governor-address> "propose(...)" --rpc-url $MOONBEAM_RPC_URLIf this returns > ~15M, splitting is required. If it's between 14M and 16M, recommend splitting anyway — Moonbeam block-cap headroom is unforgiving.
Decide chain-destination boundaries. The build order in
_buildExternalChainActions is fixed and cannot be reordered:
transferFrom → setRewardSpeeds → withdrawWell → transferReserves → multiRewarder → merkleCampaignsFor each split, identify which actions move into it. Each split's Moonbeam
payload runs independently as a separate propose().
Critical math: bridgeToRecipient for each destination chain in each split must
cover that split's FIRST Base/Optimism TEMPORAL_GOVERNOR outflow — NOT the
net TG balance after all actions.
Why: transferFrom(TG → MRD) runs BEFORE withdrawWell brings WELL back into
TG. A bridge sized only for the net balance will revert on the first transfer
with ERC20: transfer amount exceeds balance.
Trace TG inflow/outflow step-by-step. Show the math explicitly to the user for verification.
For each split (e.g. x51a, x51b, x51c):
proposals/mips/mip-x51<letter>/x51<letter>.shproposals/mips/mip-x51<letter>/x51<letter>.jsonproposals/mips/mip-x51<letter>/x51<letter>.mdproposals/mips/mip-x51<letter>/mip-x51<letter>.sol (if standalone — copies
the parent)Mark every .sh executable in git:
git update-index --chmod=+x proposals/mips/mip-x51<letter>/x51<letter>.sh.
Pull from the rewards automation worker:
https://moonwell-reward-automation.moonwell.workers.dev/?type=json×tamp=<unix>Filter the worker output to the actions that belong to this split. Sanity-check:
no negative withdrawWell, no nativeValue: 0.
Add an entry per split with id: 0 (in-development sentinel). Path points to
the artifact:
{
"envpath": "proposals/mips/mip-x51a/x51a.sh",
"governor": "MultichainGovernor",
"id": 0,
"path": "mip-x51a.sol/mipx51a.json",
"proposalType": "HybridProposal"
}Keep the array sorted with id: 0 entries at the top, then descending by id.
After splitting, run cast estimate on each split's propose() to confirm all
are below 15M. If any one is still over, sub-split it further.
Run make audit-rewards PROPOSAL=mip-x51a (and b, c) on each split. The audit
runs in CI via proposal-summary.yml and verifies:
Use the /simulate-mip skill once per split.
forge test --ffi will fail with Permission denied on
the new .sh files. Always git update-index --chmod=+x.mips.json: keep id: 0 until the proposal lands
on-chain. Reviewers will catch real IDs in unmerged PRs..md.© moonwell-fi, BSD-3-Clause. 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/split-rewards-mip of moonwell-fi/moonwell-contracts-v2.
Open the folder on GitHubat commit 9a8b980
Split Rewards Mip 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 |
|---|---|---|---|---|---|---|
| Split Rewards Mip this skillmoonwell-fi/moonwell-contracts-v2 | 109 | — | ~1.1k | Automated safety check: Pass | BSD-3-Clause | |
| Distributed Triagepytorch/pytorch | 104k | — | ~2.8k | Automated safety check: Pass | Custom licence | |
| Recognition Rewardssickn33/agentic-awesome-skills | 47k | 1 repos | ~3.4k | Automated safety check: Pass | MIT | |
| Distributed Tracingwshobson/agents | 40k | 12 repos | ~527 | Automated safety check: Pass | MIT | |
| Distribute Skill To All Agentssickn33/agentic-awesome-skills | 47k | 1 repos | ~1.2k | Automated safety check: Pass | MIT | |
| Code Splittingthedaviddias/Front-End-Checklist | 74k | — | ~492 | Automated safety check: Pass | MIT |
pytorch/pytorch
Sub-triages issues in the oncall:distributed queue by assigning distributed module labels, routing to sub-oncalls, and marking triaged.
sickn33/agentic-awesome-skills
Recognition register: employee, reward type, category, visibility, message and points awarded.
wshobson/agents
Implement distributed tracing with Jaeger and Tempo to track requests across microservices and identify performance bottlenecks.
sickn33/agentic-awesome-skills
Distribute a skill across configured agent skill folders while respecting local symlink layouts.
thedaviddias/Front-End-Checklist
A skill your agent uses when reviewing large SPA bundles, new dependency additions, or routes that feel slow to hydrate.
aiming-lab/AutoResearchClaw
Multi-GPU and distributed training patterns with PyTorch DDP.
moonwell-fi/moonwell-contracts-v2
Run a Moonwell governance proposal simulation against the canonical fork command (DOVALIDATE=true DOPRINT=true DOBUILD=true DORUN=false forge script ...
Split a rewards-distribution MIP that exceeds Moonbeam's 16,777,216 (2^24) per-tx gas cap into chain-destination chunks (e.g. Split Rewards Mip is an agent skill from moonwell-fi/moonwell-contracts-v2.g.
Run `npx skills add moonwell-fi/moonwell-contracts-v2 --skill split-rewards-mip -a claude-code`. Or copy the skill folder (.claude/skills/split-rewards-mip in moonwell-fi/moonwell-contracts-v2) into .claude/skills/split-rewards-mip in your project. Claude Code loads it when a task matches its description.
Run `npx skills add moonwell-fi/moonwell-contracts-v2 --skill split-rewards-mip -a codex`. Or copy the skill folder (.claude/skills/split-rewards-mip in moonwell-fi/moonwell-contracts-v2) into .agents/skills/split-rewards-mip 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 moonwell-fi/moonwell-contracts-v2 --skill split-rewards-mip -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/split-rewards-mip, .gemini/skills/split-rewards-mip, .github/skills/split-rewards-mip and .opencode/skills/split-rewards-mip in your project.
Going by SKILL.md and its folder, Split Rewards Mip needs the command-line tools its instructions call (git and make).
SKILL.md names 1 domain. In commands or code: moonwell-reward-automation.moonwell.workers.dev; the agent is likely to contact it when it follows the instructions. 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.
Split Rewards Mip is published under the BSD-3-Clause licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.1k tokens (SKILL.md is roughly 4.4k 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 Split Rewards Mip: Distributed Triage (pytorch/pytorch, 104k stars), Recognition Rewards (sickn33/agentic-awesome-skills, 47k stars), Distributed Tracing (wshobson/agents, 40k stars) and Distribute Skill To All Agents (sickn33/agentic-awesome-skills, 47k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
moonwell-fi (a GitHub organization) maintains it in moonwell-fi/moonwell-contracts-v2, which has 109 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on October 8, 2026.
Source: moonwell-fi/moonwell-contracts-v2 on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.