Lean Formalize
wanshuiyin/Auto-claude-code-research-in-sleep
Develop and verify a mathematical proof in Lean, continue an incomplete Lean project, or audit whether it proves the original statement.
Formalize a self-authored lemma or theorem in Lean 4/mathlib and require a clean lake build without sorry.
$ npx skills add flonat/flonat-research --skill lean-check -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install flonat/flonat-research lean-check --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/flonat/flonat-research.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/lean-check .claude/skills/lean-check && 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 "lean-check" agent skill from https://github.com/flonat/flonat-research/tree/main/skills/lean-check into .claude/skills/lean-check/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lean-check", 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/flonat/flonat-research/tree/main/skills/lean-checkType 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 flonat/flonat-research --skill lean-check -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install flonat/flonat-research lean-check --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/flonat/flonat-research.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/lean-check .agents/skills/lean-check && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "lean-check" agent skill from https://github.com/flonat/flonat-research/tree/main/skills/lean-check into .agents/skills/lean-check/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lean-check", 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 flonat/flonat-research --skill lean-check -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install flonat/flonat-research lean-check --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/flonat/flonat-research.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/lean-check .cursor/skills/lean-check && 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 "lean-check" agent skill from https://github.com/flonat/flonat-research/tree/main/skills/lean-check into .cursor/skills/lean-check/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lean-check", 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/flonat/flonat-research.git --path skills/lean-check--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 flonat/flonat-research --skill lean-check -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install flonat/flonat-research lean-check --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/flonat/flonat-research.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/lean-check .gemini/skills/lean-check && 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 "lean-check" agent skill from https://github.com/flonat/flonat-research/tree/main/skills/lean-check into .gemini/skills/lean-check/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lean-check", 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 flonat/flonat-research lean-checkInstalls 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 flonat/flonat-research --skill lean-check -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/flonat/flonat-research.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/lean-check .github/skills/lean-check && 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 "lean-check" agent skill from https://github.com/flonat/flonat-research/tree/main/skills/lean-check into .github/skills/lean-check/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lean-check", 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 flonat/flonat-research --skill lean-check -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install flonat/flonat-research lean-check --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/flonat/flonat-research.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/lean-check .opencode/skills/lean-check && 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 "lean-check" agent skill from https://github.com/flonat/flonat-research/tree/main/skills/lean-check into .opencode/skills/lean-check/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lean-check", 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.
lean-checkFormalize a self-authored lemma or theorem in Lean 4/mathlib and require a clean lake build without sorry.
Lean Check is an agent skill from flonat/flonat-research. Formalize a self-authored lemma or theorem in Lean 4/mathlib and require a clean lake build without sorry. Use when the mathematical claim can be stated faithfully and machine-checked. For numerical falsification or symbolic algebra, use $numerical-check or $symbolic-check.
Its SKILL.md is about 1.6k 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: Shareable Claude Code + Codex infrastructure for PhD researchers — skills, agents, hooks, and rules for academic workflows. The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit da27600. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
ReadWriteEditBashAskUserQuestionFrom allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
sshFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use ssh, 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.
Lean Check loads about 1.6k tokens when it runs. Until then it costs about 72 tokens; SKILL.md has 713 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 noted patterns worth knowing about, such as sudo or a known installer.
allowed-tools: Read, Write, Edit, Bash, AskUserQuestionAutomated 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 flonat/flonat-research at commit da27600, republished under its MIT licence (© flonat). 713 words, ~1,632 tokens.
.claude/skills/lean-check/SKILL.md (or your agent's skills folder).Formalize a lemma/theorem in Lean 4 + mathlib and let the kernel check it. A lake build that succeeds with no sorry and no extra axioms is a machine-verified proof — the strongest guarantee available.
lean-check, "formalize this in Lean", "machine-check this lemma", "prove this in Lean 4".numerical-check fails to falsify a claim and it's important enough to prove.| Situation | Use instead |
|---|---|
| Stress-test / hunt a counterexample to a distributional claim | numerical-check (R1) |
| Verify an algebra / derivative / limit / closed-form step | symbolic-check (R2) |
| A statement too rich to faithfully formalize in reasonable time (heavy measure theory, bespoke objects) | domain-reviewer — do NOT force a lossy Lean statement |
R3 — formal machine proof. The top rung: lake build (clean, sorry-free) = a kernel-checked theorem. Cost is high (formalization effort + statement fidelity), so reserve it for the claims that matter most; use R1/R2 to triage first.
[server]). Check hostname; if on the MacBook, run via ssh mini.~/lean-verify/mathlib_verify/ — Lean 4.31.0, mathlib v4.31.0 (cache-backed, ~7.2 GB .lake). Health check: cd ~/lean-verify/mathlib_verify && lake build MathlibVerify.SmokeTest.lake update && lake exe cache get.build gives false confidence — the single worst failure mode.0 < ρ < 1, StrictMono, etc.). When unsure the encoding is faithful, ask the user to confirm the statement.INCONCLUSIVE (not faithfully formalizable); do not ship a lossy proxy.Write to ~/lean-verify/mathlib_verify/MathlibVerify/<Name>.lean:
import Mathlib
theorem <name> (<hyps>) : <conclusion> := by
<tactic proof>simp, norm_num, ring, linarith/nlinarith, positivity, gcongr, field_simp, exact?, apply?, polyrith.cd ~/lean-verify/mathlib_verify && lake build MathlibVerify.<Name>sorry → candidate VERIFIED. Confirm no shortcuts:grep -n 'sorry\|admit' MathlibVerify/<Name>.lean → must be empty.#print axioms <name> and rebuild → must show only propext, Classical.choice, Quot.sound (mathlib's standard axioms); sorryAx present ⇒ NOT proven.INCONCLUSIVE (unproven; claim may still be true). Failing to prove is NOT a disproof.¬ <claim>) → FALSIFIED.| Outcome | Verdict |
|---|---|
Faithful statement, clean build, no sorry, standard axioms only | VERIFIED |
| Proved the negation | FALSIFIED |
| Faithful statement, proof didn't close after real effort | INCONCLUSIVE (unproven) |
| Can't faithfully formalize the claim | INCONCLUSIVE (not formalizable) |
| Toolchain / build-system failure | ERROR |
sorry/admit and #print axioms — a sorry builds fine and proves nothing.domain-reviewer.paper-{venue}/paper/ or re-scaffold mathlib — use the seeded project scratch.python/toolchain guesses — Lean via lake only.*-check shape)Write to reviews/<scope>/verify-lean/<YYYY-MM-DD-HHMM>.md, and copy the .lean module beside it (or note its path):
claim: <informal statement> ⟶ <Lean statement (verbatim)>
fidelity: <one line: why the Lean statement faithfully encodes the claim>
method: R3 Lean 4 (v4.31.0) + mathlib; lake build; sorry-free; axioms = <#print axioms output>
verdict: VERIFIED | FALSIFIED | INCONCLUSIVE (unproven|not formalizable) | ERROR
reproduce: cd ~/lean-verify/mathlib_verify && lake build MathlibVerify.<Name> (module attached)lake build MathlibVerify.<Name> exits 0.grep sorry is empty AND #print axioms shows only the standard three.## fidelity line exists — no VERIFIED without an explicit statement-faithfulness argument.theorem lc_smoke (a b : ℝ) (h : a ≤ b) : a - 1 < b + 1 := by linarith → lake build exit 0, no sorry, standard axioms → VERIFIED. (A faithful Lean formalization of the median-collapse theorem itself — Φ, medians of distributions, the large-council limit — is a genuine formalization project; lean-check is for the tractable load-bearing lemmas, with R1/R2 covering the rest.)
© flonat, MIT. 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 skills/lean-check of flonat/flonat-research.
Open the folder on GitHubat commit da27600
Lean Check 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 |
|---|---|---|---|---|---|---|
| Lean Check this skillflonat/flonat-research | 145 | — | ~1.6k | Automated safety check: Notes | MIT | |
| Lean Formalizewanshuiyin/Auto-claude-code-research-in-sleep | 17k | — | ~5.4k | Automated safety check: Notes | MIT | |
| Hermes Agent Skill AuthoringNousResearch/hermes-agent | 252k | — | ~3.6k | Automated safety check: Pass | MIT | |
| Configuring Oauth2 Authorization Flowmukul975/Anthropic-Cybersecurity-Skills | 34k | — | ~1.7k | Automated safety check: Pass | Apache-2.0 | |
| Authoring Skillsvercel/next.js | 143k | — | ~1k | Automated safety check: Pass | MIT | |
| Abp Authorizationabpframework/abp | 14k | — | ~1.3k | Automated safety check: Pass | LGPL-3.0 |
wanshuiyin/Auto-claude-code-research-in-sleep
Develop and verify a mathematical proof in Lean, continue an incomplete Lean project, or audit whether it proves the original statement.
NousResearch/hermes-agent
Author in-repo SKILL.md files: frontmatter and structure. An agent skill from NousResearch/hermes-agent.
mukul975/Anthropic-Cybersecurity-Skills
Configures secure OAuth 2.0 authorization flows, including Authorization Code with PKCE, Client Credentials, and Device Authorization Grant, covering flow selection, PKCE implementation, token…
vercel/next.js
How to create and maintain agent skills in .agents/skills/. An agent skill from vercel/next.js.
abpframework/abp
ABP permission system - PermissionDefinitionProvider, [Authorize] attribute, CheckPolicyAsync, IsGrantedAsync, ICurrentUser, IPermissionManager, multi-tenancy side.
mukul975/Anthropic-Cybersecurity-Skills
Implements GCP Binary Authorization end to end, including creating KMS-backed attestors, Container Analysis notes, deploy-time policies, and signing image attestations, so that only trusted…
flonat/flonat-research
Create a large-format academic poster in LaTeX using beamerposter, tikzposter, or baposter.
flonat/flonat-research
Create, revise, and evaluate reusable AI workflow skills, including trigger-quality tests.
flonat/flonat-research
Create, read, edit, or convert Microsoft Word documents while preserving professional document structure.
flonat/flonat-research
Read, create, combine, split, rotate, OCR, watermark, secure, or extract content from PDF files.
flonat/flonat-research
Create or migrate project-level agents, repeatable project workflows, and planning state from one client-neutral contract, then render repository-scoped adapters for both Claude Code and Codex.
flonat/flonat-research
Deliver a fast pre-commit safety scan: file size, anonymity (author / affiliation strings in tex/bib), hardcoded secrets, and invisible-Unicode carriers.
Formalize a self-authored lemma or theorem in Lean 4/mathlib and require a clean lake build without sorry. Lean Check is an agent skill from flonat/flonat-research. Formalize a self-authored lemma or theorem in Lean 4/mathlib and require a clean lake build without sorry.
Lean Check fits situations like: the mathematical claim can be stated faithfully and machine-checked.
Run `npx skills add flonat/flonat-research --skill lean-check -a claude-code`. Or copy the skill folder (skills/lean-check in flonat/flonat-research) into .claude/skills/lean-check in your project. Claude Code loads it when a task matches its description.
Run `npx skills add flonat/flonat-research --skill lean-check -a codex`. Or copy the skill folder (skills/lean-check in flonat/flonat-research) into .agents/skills/lean-check 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 flonat/flonat-research --skill lean-check -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/lean-check, .gemini/skills/lean-check, .github/skills/lean-check and .opencode/skills/lean-check in your project.
Going by SKILL.md and its folder, Lean Check needs the command-line tools its instructions call (ssh). Its frontmatter pre-approves these tools: Read, Write, Edit, Bash, AskUserQuestion.
SKILL.md contains no URLs. Its commands use ssh, 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 notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Lean Check is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.6k tokens (SKILL.md is roughly 6.5k 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 Lean Check: Lean Formalize (wanshuiyin/Auto-claude-code-research-in-sleep, 17k stars), Hermes Agent Skill Authoring (NousResearch/hermes-agent, 252k stars), Configuring Oauth2 Authorization Flow (mukul975/Anthropic-Cybersecurity-Skills, 34k stars) and Authoring Skills (vercel/next.js, 143k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
flonat (a GitHub user) maintains it in flonat/flonat-research, which has 145 GitHub stars. The repository holds 83 skills in this directory. The repository was last updated on September 29, 2026.
Source: flonat/flonat-research on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.