Agent skill

Simulate Mip

by moonwell-fi in 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 ...

BSD-3-ClauseAuto-check passedSales & Support

Install Simulate Mip

skills CLI
$ npx skills add moonwell-fi/moonwell-contracts-v2 --skill simulate-mip -a claude-code

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

GitHub CLI
$ gh skill install moonwell-fi/moonwell-contracts-v2 simulate-mip --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/moonwell-fi/moonwell-contracts-v2.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/simulate-mip .claude/skills/simulate-mip && 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
simulate-mip
GitHub stars
109
Token cost
~906 tokens
SKILL.md length
333 words
Files
1
Skills in repo
2
Repo updated
First seen
Licence
BSD-3-Clause

At a glance

Run a Moonwell governance proposal simulation against the canonical fork command (DOVALIDATE=true DOPRINT=true DOBUILD=true DORUN=false forge script ...

  • Works in 5 steps: Resolve paths → Verify shell-script exec bit → Pick the template → …
  • Tasks that involve Proposals and quotes
  • SKILL.md covers Argument, Steps and Notes
  • Calls git and make

What it does

Simulate Mip is an agent skill from 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 ... --ffi). Pass the MIP folder name as the argument (e.g. /simulate-mip mip-x51a). Verifies the .sh is executable, sources it, picks the right template, and runs the sim with FOUNDRYPROFILE=ci.

Its SKILL.md is about 910 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 Sales & Support, covering Proposals and quotes. The licence is BSD-3-Clause.

When your agent uses it

  • Tasks that involve Proposals and quotes

Example prompts

  • “/simulate-mip”

Workflow steps

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

  1. Resolve paths
  2. Verify shell-script exec bit
  3. Pick the template
  4. Run the sim
  5. Surface validate() output

What it can do on your machine

Read from SKILL.md and the folder at commit 9a8b980. 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:

    • git
    • make

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

  • Network

    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.

  • 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

Simulate Mip loads about 906 tokens when it runs. Until then it costs about 90 tokens; SKILL.md has 333 words of instructions outside code blocks.

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

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 moonwell-fi/moonwell-contracts-v2 at commit 9a8b980, republished under its BSD-3-Clause licence (© moonwell-fi). 333 words, ~906 tokens.

Download SKILL.mdSave it as .claude/skills/simulate-mip/SKILL.md (or your agent's skills folder).
name
simulate-mip
description
Run a Moonwell governance proposal simulation against the canonical fork command (DO_VALIDATE=true DO_PRINT=true DO_BUILD=true DO_RUN=false forge script ... --ffi). Pass the MIP folder name as the argument (e.g. /simulate-mip mip-x51a). Verifies the .sh is executable, sources it, picks the right template, and runs the sim with FOUNDRY_PROFILE=ci.
disable-model-invocation
true

Simulate MIP

User-only skill that runs a proposal simulation with the canonical command from .claude/rules/proposals.md.

Argument

Single argument: the MIP folder name (e.g. mip-x51a, mip-b59).

If no argument is provided, list every entry in proposals/mips/mips.json with id: 0 (in-development proposals) and ask which one to simulate.

Steps

1. Resolve paths
  • Folder: proposals/mips/<arg>/
  • Shell script: proposals/mips/<arg>/<basename>.sh, where <basename> is the folder name with the mip- prefix stripped (e.g. mip-b59 → b59.sh, mip-x47 → x47.sh, mip-x51a → x51a.sh). Suffix letters are preserved verbatim.
  • If the folder doesn't exist, list folders under proposals/mips/ that start with the same prefix and ask the user to pick.
  • If the proposal has no .sh (its mips.json envpath is "" — e.g. mip-x52/ only carries .sol + .md), skip the source step in §4 and run the standalone simulation directly via the artifact path from mips.json.
2. Verify shell-script exec bit
bash
test -x "<script-path>" || (echo "marking executable for ffi"; chmod +x "<script-path>" && git update-index --chmod=+x "<script-path>")
3. Pick the template

Read the .sh to find FOUNDRY_SCRIPT or check mips.json for the path field — the artifact name maps to a template under proposals/templates/. Common cases:

  • RewardsDistribution.sol/RewardsDistributionTemplate.json → proposals/templates/RewardsDistribution.sol (contract RewardsDistributionTemplate)
  • MarketUpdate.sol/MarketUpdateTemplate.json → proposals/templates/MarketUpdate.sol (contract MarketUpdateTemplate)
  • MarketAddV3.sol/MarketAddV3.json → proposals/templates/MarketAddV3.sol
  • standalone (e.g. mip-x51a.sol/mipx51a.json) → proposals/mips/<arg>/<basename>.sol (where <basename> is the folder name without the mip- prefix)
4. Run the sim
bash
source proposals/mips/<arg>/<script>.sh \
  && DO_VALIDATE=true DO_PRINT=true DO_BUILD=true DO_RUN=false \
     FOUNDRY_PROFILE=ci \
     forge script <template-path> --ffi -vvv 2>&1 | tail -100

If the run fails in setUp() with a cross-chain error (WormholeBridge: ..., Initializable: ...), suggest invoking the cross-chain-impact-analyzer agent.

5. Surface validate() output

Echo the last validate() block — this is what reviewers care about.

Notes

  • Always pass --ffi. PostProposalCheck invokes vm.ffi during setUp — without it the run reverts with an FFI is disabled error. (Distinct from Permission denied, which means the .sh itself is not executable; fix with chmod +x per §2.)
  • Always use FOUNDRY_PROFILE=ci — matches what GitHub Actions runs (1000 fuzz runs, deterministic).
  • -vvvv shows full traces including console.log from inside setUp(); default to -vvv and offer to bump to -vvvv on failure.
  • After in-file renames (functions or vars), prepend forge build --force — incremental builds can serve stale bytecode and mask compile errors.
  • For rewards MIPs, also offer to run make audit-rewards PROPOSAL=<arg> separately — the sim doesn't catch worker-output bugs.

© 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

Files

Just SKILL.md in .claude/skills/simulate-mip of moonwell-fi/moonwell-contracts-v2.

Open the folder on GitHubat commit 9a8b980

Compare with similar skills

Simulate 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.

Simulate Mip compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Simulate Mip this skillmoonwell-fi/moonwell-contracts-v2109—~906Automated safety check: PassBSD-3-Clause
Doc Coauthoringaws-samples/sample-strands-agent-with-agentcore19541 repos~3.2kAutomated safety check: PassMIT
Audit Onboarding Proposalhoangnb24/repository-harness1.2k—~4kAutomated safety check: PassMIT
No Negative EchoLB623/no-negative-echo897—~965Automated safety check: PassMIT
GEO Service Proposal Generatorzubair-trabzada/geo-seo-claude11k—~3kAutomated safety check: NotesMIT
Architectural ProposalsFritzAndFriends/SharpSite1452 repos~1.6kAutomated safety check: PassMIT

Similar skills

  • Doc Coauthoring

    aws-samples/sample-strands-agent-with-agentcore

    Official

    Guide users through a structured workflow for co-authoring documentation.

    195 GitHub starsUsed in 41 repos~3.2k tokens
    Sales & SupportAuto-check passed
  • Audit Onboarding Proposal

    hoangnb24/repository-harness

    Use only when the user explicitly invokes $audit-onboarding-proposal.

    1.2k GitHub stars~4k tokensUpdated 5 days ago
    Sales & SupportAuto-check passed
  • No Negative Echo

    LB623/no-negative-echo

    Prevent 此地无银三百两式 residue: finalize artifacts without echoing rejected session-only alternatives into labels, metadata, commits, PRs, or handoffs.

    897 GitHub stars~965 tokensUpdated 1 mo ago
    Sales & SupportAuto-check passed
  • GEO Service Proposal Generator

    zubair-trabzada/geo-seo-claude

    Builds a client-ready AI-search-optimization proposal from an existing GEO audit, with pricing tiers, an ROI estimate and a markdown document ready to send.

    11k GitHub stars~3k tokensUpdated today
    Sales & SupportAuto-check: notes
  • Architectural Proposals

    FritzAndFriends/SharpSite

    How to write comprehensive architectural proposals that drive alignment before code is written

    145 GitHub starsUsed in 2 repos~1.6k tokens
    Sales & SupportAuto-check passed
  • Counter Proposal Generator

    zubair-trabzada/ai-legal-claude

    Generates specific counter-proposals for every unfavorable clause, with replacement language, negotiation talking points, and a ready-to-send email template

    1.8k GitHub stars~2.4k tokensUpdated 6 mo ago
    Sales & SupportAuto-check passed

More from moonwell-fi/moonwell-contracts-v2

  • Split Rewards Mip

    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.

    109 GitHub stars~1.1k tokensUpdated today
    Auto-check passed

Categories

Questions about Simulate Mip

What does Simulate Mip do?

Run a Moonwell governance proposal simulation against the canonical fork command (DOVALIDATE=true DOPRINT=true DOBUILD=true DORUN=false forge script ... Simulate Mip is an agent skill from 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 ...

When should I use Simulate Mip?

Simulate Mip fits situations like: tasks that involve Proposals and quotes.

How do I install Simulate Mip in Claude Code?

Run `npx skills add moonwell-fi/moonwell-contracts-v2 --skill simulate-mip -a claude-code`. Or copy the skill folder (.claude/skills/simulate-mip in moonwell-fi/moonwell-contracts-v2) into .claude/skills/simulate-mip in your project. Claude Code loads it when a task matches its description.

How do I install Simulate Mip in Codex?

Run `npx skills add moonwell-fi/moonwell-contracts-v2 --skill simulate-mip -a codex`. Or copy the skill folder (.claude/skills/simulate-mip in moonwell-fi/moonwell-contracts-v2) into .agents/skills/simulate-mip in your project. Codex loads it when a task matches its description.

Can I use Simulate Mip 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 moonwell-fi/moonwell-contracts-v2 --skill simulate-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/simulate-mip, .gemini/skills/simulate-mip, .github/skills/simulate-mip and .opencode/skills/simulate-mip in your project.

What does Simulate Mip need to run?

Going by SKILL.md and its folder, Simulate Mip needs the command-line tools its instructions call (git and make).

Does Simulate Mip access the network?

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.

Is Simulate Mip 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 Simulate Mip use?

Simulate 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.

How many tokens does Simulate Mip use?

About 906 tokens (SKILL.md is roughly 3.6k 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 Simulate Mip?

Skills that share tags, products or a category with Simulate Mip: Doc Coauthoring (aws-samples/sample-strands-agent-with-agentcore, 195 stars), Audit Onboarding Proposal (hoangnb24/repository-harness, 1.2k stars), No Negative Echo (LB623/no-negative-echo, 897 stars) and GEO Service Proposal Generator (zubair-trabzada/geo-seo-claude, 11k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Simulate Mip?

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.