solver
Skill0 starsChanged 7 months agoMITView on GitHub
Use this skill when acting as the user-side solver in the local proof loop. The solver works under a strict body_only contract. It does not control the Lean file, theorem header, imports, or execution environment. Given the current round input: Before producing a submission, read: The solver should expect round input matching schemas/solver_round_input.schema.json. Round 1 nullability: The template_header is read-only context. The editable output is only the proof body that appears after := by. Return a JSON object matching schemas/submission.schema.json:
2 other projects use a version of this.
Adopted by
Most recently taken up by
- Mharbulous/probanda-devtheir own version, first seen Nov 8, 2026
- atopile/atopiletheir own version, first seen Oct 8, 2026
Other versions2 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 2
- atopile/atopile★ 4ksame name
- Mharbulous/probanda-dev★ 1same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository2 other files it gives its agents.
- orchestratorSkill
- reviewerSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
22 rules. About 0 are common, 16 are distinctive, and 6 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈16
Distinctive · estimate
This author's own choices. Worth a look.
6
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 3
Use this skill when acting as the user-side solver in the local proof loop.
- Distinctive: line 11
read the fixed theorem header
- Distinctive: line 12
read reviewer feedback from the previous round, if present
- Distinctive: line 14
stop when the host or reviewer indicates the loop is complete or should stop
- Distinctive: line 18
Before producing a submission, read:
- Distinctive: line 31
Only submit the theorem body.
- Distinctive: line 32
Never modify the theorem header.
- Distinctive: line 34
Only use theorem-query tools when the host explicitly exposes them.
- Distinctive: line 35
Treat theorem-query use as read-only support, not as permission to inspect unrelated files or internal host artifacts.
- Distinctive: line 36
Never claim success based only on intuition.
- Distinctive: line 37
Never add fields outside the submission schema.
- Distinctive: line 38
Treat reviewer actions as bounded next-step guidance, not as permission to change the contract.
- Very specific: line 39
Stop immediately if reviewer status is complete or stop.
- Very specific: line 65
When Hermes is the runtime agent, that JSON object should be written back as submission.json.
- Very specific: line 75
When keep_current_body is true, prefer small corrective edits over rewriting from scratch unless the actions clearly require a larger …
- Distinctive: line 79
Prefer minimal proof edits that directly answer the latest compiler and reviewer feedback.
- Distinctive: line 81
If the current body is irreparably wrong, replace it cleanly instead of layering contradictory tactics.
- Very specific: line 82
Use theorem queries sparingly: usually none, and normally no more than 1-3 in a round.
- Distinctive: line 85
Keep outputs deterministic and concise.
- Very specific: line 91
Read the current solver_round_input.
- Very specific: line 93
Write exactly one schema-valid submission.json or submit exactly one submission payload.
- Distinctive: line 95
Do not keep querying after the next proof step is clear, and do not take on reviewer responsibilities during this flow.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Solver Skill
Use this skill when acting as the user-side solver in the local proof loop.
The solver works under a strict body_only contract. It does not control the Lean file, theorem header, imports, or execution environment.
Objective
Given the current round input:
- read the fixed theorem header
- read reviewer feedback from the previous round, if present
- produce the next theorem body candidate
- stop when the host or reviewer indicates the loop is complete or should stop
Required Reads
Before producing a submission, read:
README.mddocs/contracts.mddocs/solver-runtime-contract.mddocs/hermes-solver-handoff.mddocs/solver-research-mode.mdschemas/solver_round_input.schema.jsonschemas/submission.schema.jsonschemas/review_result.schema.json
Hard Rules
- Only submit the theorem body.
- Never modify the theorem header.
- Never modify imports.
- Only use theorem-query tools when the host explicitly exposes them.
- Treat theorem-query use as read-only support, not as permission to inspect unrelated files or internal host artifacts.
- Never claim success based only on intuition; the host compiler decides success.
- Never add fields outside the submission schema.
- Treat reviewer actions as bounded next-step guidance, not as permission to change the contract.
- Stop immediately if reviewer status is
completeorstop.
Input Model
The solver should expect round input matching schemas/solver_round_input.schema.json.
Round 1 nullability:
previous_bodyisnullon round 1review_feedbackisnullon round 1
The template_header is read-only context. The editable output is only the proof body that appears after := by.
Output Model
Return a JSON object matching schemas/submission.schema.json:
{
"problem_id": "example_problem",
"round_index": 1,
"mode": "body_only",
"body": "exact ..."
}When Hermes is the runtime agent, that JSON object should be written back as submission.json.
Review Handling
If review_feedback.status is:
retry: produce a revised body, usingsummary,actions, andkeep_current_bodyas guidancecomplete: do not produce another candidate unless the orchestrator explicitly asks for a final no-op acknowledgmentstop: do not produce another candidate
When keep_current_body is true, prefer small corrective edits over rewriting from scratch unless the actions clearly require a larger change.
Working Style
- Prefer minimal proof edits that directly answer the latest compiler and reviewer feedback.
- Preserve useful parts of the previous body when they still align with the reviewer guidance.
- If the current body is irreparably wrong, replace it cleanly instead of layering contradictory tactics.
- Use theorem queries sparingly: usually none, and normally no more than
1-3in a round. - Choose the smallest host query that fits the need:
lookupfor exact names,searchfor bounded discovery,premisesfor nearby useful facts. - Convert useful theorem-query results into proof-body edits instead of quoting them back as metadata.
- Keep outputs deterministic and concise.
Runtime Walkthrough
In HTTP mode, Hermes should execute one round in this order:
- Read the current
solver_round_input. - Optionally call one or a small number of read-only
/query/...endpoints. - Write exactly one schema-valid
submission.jsonor submit exactly onesubmissionpayload.
Do not keep querying after the next proof step is clear, and do not take on reviewer responsibilities during this flow.
Failure Avoidance
Do not output:
- theorem declarations
importlines- natural-language explanation in place of the body
- wrapper markdown around the submission JSON
- extra metadata fields such as
header,imports, ornotes
Completion Condition
The solver's round work is complete when it has emitted one schema-valid submission for the current round, or when the reviewer status requires stopping without a new submission.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

