Lean4 Setup
Set up a lean4 repository clone with proper elan toolchains.
MCP get_skill({ skillId: "lean4-setup-2fa22c97" })Use this skill with your agent
Create a free account and connect via MCP
# Lean 4 Repository Setup The first time you build in a lean4 repository clone, you need to run ``` cmake --preset release make -j -C build/release ``` The `cmake` command is not needed on subsequent builds. ## Tests ### Running a Single Test ```bash cd tests/lean/run ./test_single.sh example_test.lean ``` ### Running the Full Test Suite ```bash make -j -C build/release test ARGS="-j$(nproc)" ``` ### Writing Tests - All new tests should go in `tests/lean/run/` - These tests don't have expected output files — they run on a success/failure basis - Use `#guard_msgs` to check for specific messages ## Lean 4 repositories for interactive use If you are cloning or repairing the leanprover/lean4 repository for a user to work in, you need to do further set up. First, do an initial build according to the instructions above. Then you'll need to pick a toolchain name. If this is the only clone of `lean4` on the machine, just use `lean4`. Otherwise you might use something like `lean4-XYZ`. Then run the following commands: ```bash elan toolchain link lean4-XYZ build/release/stage1 elan toolchain link lean4-XYZ-stage0 build/release/stage0 echo lean4-XYZ > lean-toolchain echo lean4-XYZ > script/lean-toolchain echo lean4-XYZ > tests/lean-toolchain echo lean4-XYZ-stage0 > src/lean-toolchain ``` After setting up the toolchains, verify it worked: ```bash cd tests/lean/run lean --version # Should show the commit hash from your clone, not a release version ``` When done with the clone, remove the toolchains: ```bash elan toolchain uninstall lean4-XYZ elan toolchain uninstall lean4-XYZ-stage0 ``` - The `tests/` directory needs stage1 because tests run against the full Lean system - The `src/` directory needs stage0 because it's rebuilding the stdlib itself
Related Skills
More skills in Data, AI & Research
Ablation Planner
Use when main results pass result-to-claim (`claim_supported = yes` or `partial`) and ablation studies are needed for paper submission. A secondary Codex agent designs ablations from a reviewer's perspective; the local executor reviews feasibility and implements.
Ablation Planner
Use when main results pass result-to-claim (claim_supported=yes or partial) and ablation studies are needed for paper submission.
About
Provides information about the bitwize-music plugin, its version, and its creator. Use when the user asks about the plugin, its purpose, version, or capabilities.
Ab Test Analysis
Analyze A/B test results with statistical significance, sample size validation, confidence intervals, and ship/extend/stop recommendations. Use when evaluating experiment results, checking if a test reached significance, interpreting split test data, or deciding whether to ship a variant.
Academic Search
Search and analyze academic literature. Find papers, understand research methodologies, and synthesize academic findings for research projects.
Adaptyv
How to use the Adaptyv Bio Foundry API and Python SDK for protein experiment design, submission, and results retrieval. Use this skill whenever the user mentions Adaptyv, Foundry API, protein binding assays, protein screening experiments, BLI/SPR assays, thermostability assays, or wants to submit protein sequences for experimental characterization. Also trigger when code imports `adaptyv`, `adaptyv_sdk`, or `FoundryClient`, or references `foundry-api-public.adaptyvbio.com`.
Explore Other Categories
Skills from other categories with shared topics
Mathlib PR
PR conventions for leanprover-community/mathlib4. Use when creating pull requests, writing commit messages, or managing labels for Mathlib contributions.
Mathlib Review
Review guidelines for Mathlib PRs. Use when reviewing pull requests, checking code quality, or assessing whether a PR is ready to merge.
Lean Bisect
Bisect Lean toolchain versions to find where behavior changes. Use when trying to identify which Lean 4 commit caused a regression or behavior change.