cure
Skill19 starsChanged 28 days agoMITView on GitHub
Apply selected fixes from an /age report, findings list, or CI failure. Run the project gates and hand a clean result to /plate. Use when the user wants selected findings resolved. Do not use for review, test authoring, or direct publication.
1 other project uses a version of this.
Adopted by
Most recently taken up by
- mustafarslan/skillstheir own version, first seen Nov 1, 2026
Other versions1 project uses a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 1
- mustafarslan/skills★ 2same 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 repository19 other files it gives its agents.
- AGENTS.mdAGENTS.md
- .github/copilot-instructions.mdCopilot instructions
- python-authoringSkill
- skill-authoringSkill
- affinageSkill
- ageSkill
- briesearchSkill
- cheeseSkill
- cookSkill
- cultureSkill
- easy-cheese-setupSkill
- hard-cheeseSkill
- meltSkill
- moldSkill
- pasteurizeSkill
- plateSkill
- pressSkill
- ultracookSkill
- wheypointSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
67 rules. About 0 are common, 14 are distinctive, and 53 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈14
Distinctive · estimate
This author's own choices. Worth a look.
53
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 10
Use this skill after /age, failed validation, or a request to fix selected review findings.
- Very specific: line 19
Keep its record.revision_id as <base> (§ Base revision).
- Very specific: line 25
After phase entry, /cure <slug> reads .cheese/age/<slug>.md.
- Very specific: line 46
Read references/selection.md for selection rules.
- Very specific: line 48
Read harness-portability.md for portability rules.
- Very specific: line 53
Load: Read handoff_context.source_report first when the handoff supplies it.
- Very specific: line 55
Stop with status: halt: unreadable source report when this check fails.
- Very specific: line 56
Read .cheese/age/<slug>.md when the handoff supplies only a slug.
- Very specific: line 58
Call validate_curd_plan on that plan.
- Distinctive: line 59
Stop before dispatch when the plan or its digest is invalid.
- Distinctive: line 60
Do not rebuild a plan from a legacy manifest.
- Very specific: line 64
Read references/selection.md for verbs and gate conditions.
- Very specific: line 77
Add one CureDiagnosisBinding for each selected curd.
- Very specific: line 78
Create each binding with bind_diagnosis(plan, curd, diagnosis_result).
- Very specific: line 79
Use only a confirmed DiagnosisResult.
- Very specific: line 87
Validate: Run the narrowest test that proves each fix.
- Very specific: line 90
When the handoff has a baseline: block, use quality-gates.md.
- Very specific: line 93
Taste-test behavioral fixes: Run the fresh-context taste test before you write the handoff slug.
- Distinctive: line 96
Use the Cook review lenses over the cure diff.
- Very specific: line 99
Use an inline self-check only under the small-diff cost gate in tdd-loop.md.
- Very specific: line 102
Stop for a human on a Locked-decision halt.
- Distinctive: line 106
Do not reverse a canonical term that Mold locked.
- Very specific: line 111
Do not duplicate the Age review inside Cure.
- Very specific: line 114
Put the handoff slug at the top of .cheese/cure/<slug>.md.
- Very specific: line 115
Write back the durable facts: Run § Post-PR write-back before publication.
- Distinctive: line 123
Use its fallback when a preferred tool is absent.
- Distinctive: line 124
Stop only when the fallback cannot support a safe fix.
- Distinctive: line 130
Do not declare readiness while selected findings remain unresolved.
- Very specific: line 133
Read references/cure-discipline.md for the Iron Law.
- Very specific: line 151
Write the report to .cheese/cure/<slug>.md.
- Distinctive: line 152
Put this minimum handoff slug at the top:
- Very specific: line 163
Only next: and the additional keyed lines are specific to this phase.
- Very specific: line 165
Use handoff_context.source_report for that value, or the resolved .cheese/age/<slug>.md path.
- Very specific: line 167
Write the report body to a separate file.
- Very specific: line 181
Use a second command for the terminal state.
- Very specific: line 196
Use status: ok when at least one finding applies cleanly.
- Very specific: line 197
Use it when no finding meets the --auto severity floor.
- Very specific: line 198
Use status: halt: <reason> when every selected fix fails evaluation.
- Very specific: line 199
Use it when a project gate cannot pass.
- Very specific: line 200
Use next: age when review follows.
- Very specific: line 202
Use next: done only for an interactive run without --auto.
- Very specific: line 212
When source_skill is /affinage, end each result line with [from-comment:<id>].
- Very specific: line 214
Use /age <slug> --scope <touched-path> or /plate as that command.
- Very specific: line 220
After the report exists, decide whether to dispatch /plate or ask.
- Very specific: line 224
When /affinage started the run, never dispatch /plate from Cure.
- Very specific: line 238
Run § Post-PR write-back before every /plate dispatch.
- Very specific: line 245
Review the touched code: Run /age <slug> --scope <touched-path>.
- Very specific: line 247
Plate it: Run /plate [--hard] to commit and publish.
- Very specific: line 248
Checkpoint and stop: Run /wheypoint.
- Distinctive: line 252
Run the selected command immediately.
- Very specific: line 256
Read references/post-pr-writeback.md before any path publishes to a PR.
- Very specific: line 265
Stop publication on a FAILED gate result.
- Very specific: line 266
Stop publication when a non-TTY environment blocks the gate.
- Very specific: line 269
Read skills/hard-cheese/SKILL.md and ../hard-cheese/references/composition.md.
- Very specific: line 273
Read references/auto-mode.md before auto mode.
- Very specific: line 279
Use the recommended composite or the locked selection by default.
- Distinctive: line 282
Keep fixes within the selected findings.
- Distinctive: line 283
Do not fix failures identical to the baseline.
- Very specific: line 285
Put reverted automatic findings under ### Deferred.
- Very specific: line 286
Follow ## Handoff for every publication decision.
- Distinctive: line 287
Never publish an unclean cure.
- Distinctive: line 288
Stop before you apply a finding that rests on a false premise.
- Distinctive: line 293
Do not invent follow-up work for a correct diff.
- Very specific: line 295
Run it again in the same turn.
- Very specific: line 296
Read its full output. Then make the claim.
- Very specific: line 298
Do not use should, probably, or I think in completion claims.
- Very specific: line 303
Read references/cure-discipline.md before you apply any fix.
≈ “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
/cure
Use this skill after /age, failed validation, or a request to fix selected review findings.
Phase entry
Run python3 skills/cure/scripts/cure.pyz wheypoint-resolve --ref <slug>.
authoritative uses the record; its working_context is the first batched tilth_read.
not-found proceeds cold; legacy shows its source and slug, then proceeds.
gated, ambiguous, and error stop and show the payload.
Show advisory stale-commit and grounded-path-missing findings.
Keep its record.revision_id as <base> (§ Base revision).
Inputs
Accept an /age slug, a pasted findings list, a CI failure summary, or a scoped fix instruction.
After phase entry, /cure <slug> reads .cheese/age/<slug>.md.
Adopt a locked selection from /age or /affinage.
The canonical format is in references/selection.md#handoff-from-age.
Otherwise, apply the recommended composite from references/selection.md.
That file also defines the selection gate conditions.
For an older report that omits finding fields, read references/selection.md § Older report shape.
Optional flags:
--safe— Restore the selection gate and the final publication gate.--open-pr— Permit/plateto publish when no PR exists.--auto— Use automatic mode from/cook --auto. Skip user selection. Require--stake <floor>.--stake <floor>— Set the severity floor for--auto. Acceptblocker,high,medium+, orall. Ignore this flag without--auto.--hard— Pass the metacognitive gate flag to/plate.
Read references/selection.md for selection rules.
Read harness-portability.md for portability rules.
Slash commands are host renderings, not the control model.
Flow
- Load. Read
handoff_context.source_reportfirst when the handoff supplies it. Confirm that the file exists and belongs to the namedsource_skill. Stop withstatus: halt: unreadable source reportwhen this check fails. Read.cheese/age/<slug>.mdwhen the handoff supplies only a slug. Take the typed path only when the handoff also supplies aCurdPlan. Callvalidate_curd_planon that plan. Stop before dispatch when the plan or its digest is invalid. Do not rebuild a plan from a legacy manifest. Take the report path in every other case. Select. Adopt a locked selection from
/ageor/affinage. Otherwise, apply the recommended composite. Readreferences/selection.mdfor verbs and gate conditions. Expand a user verb with this command:python3 skills/cure/scripts/cure.pyz findings parse-selection --report <path> --selection "<verb>"Render the coder brief per
references/selection.md§ Coder brief.- Apply. Fix one logical group at a time.
Implement each
recommendation:as the locked decision; rebut only under### Deferred. Confirm each anchor with a fresh bounded read. The report path stops here and continues at step 4. The typed path also invokeseasy_cheese.shared.workflow.curewith the validated plan. Add oneCureDiagnosisBindingfor each selected curd. Create each binding withbind_diagnosis(plan, curd, diagnosis_result). Use only a confirmedDiagnosisResult. Point the binding to the exact plan and curd digest. SetDiagnosisDisposition.CONFIRMED. A plausible but unrelated diagnosis does not unlock Cure.cureresolves eachArtifactRefwithresolve_artifact. It accepts only observation-onlyCurdResultWriterViewoutput. It usesnormalize_agent_outputto finalize oneCurdResultper selected curd. It also finalizes executor failures. - Validate. Run the narrowest test that proves each fix.
Then run the relevant project gates.
These gates include lint, type checks, and builds.
When the handoff has a
baseline:block, usequality-gates.md. Identical baseline failures do not block a clean cure or trigger a halt. Fix only new or changed failures. - Taste-test behavioral fixes. Run the fresh-context taste test before you write the handoff slug.
Resolve the read-only
reviewer (taste-test)phase agent throughagent-resolution.md. Requestdefaultminimum power andmediumeffort. Use the Cook review lenses over the cure diff. Reuse the step-2 rendered brief verbatim as the taste test's locked-decision block. Halt when fresh-context isolation is unavailable. Use an inline self-check only under the small-diff cost gate intdd-loop.md. Skip this step for formatting, comments, imports, and logic-free renames. Send areviseverdict into one bounded correction pass. Stop for a human on a Locked-decisionhalt. A nested coder defers the authoritative review to the orchestrator. - Correct the domain model. Correct only terms that the Cook diff touches.
Read
references/domain-model-correction.mdfirst. Do not reverse a canonical term that Mold locked. - Hand off for review. Recommend
/age <slug> --scope <touched-path>. Repeat--scopeonce for each touched path. Send the current slug with every Age dispatch. Forward--hardwhen the run has that flag. Do not duplicate the Age review inside Cure. A new Age report can start a new/curerun. - Write the report. Record changes, checks, deferred items, and residual risks.
Put the handoff slug at the top of
.cheese/cure/<slug>.md. - Write back the durable facts. Run § Post-PR write-back before publication.
Give each written path to
/platefor its artifact inventory. - Hand off for publication. Dispatch
/plateafter a clean cure. Follow## Handoff.
Preferred tools and fallbacks
Route source work through code-intelligence-routing.md.
Use its fallback when a preferred tool is absent.
Stop only when the fallback cannot support a safe fix.
Report the precision loss.
Validation
Record why an unavailable gate cannot run. Do not declare readiness while selected findings remain unresolved.
Move a finding to Applied only after its proving test passes.
Read references/cure-discipline.md for the Iron Law.
A clean cure has at least one applied fix and all gates pass.
It also has no false-premise halt.
Identical baseline: failures do not count against green status.
Read quality-gates.md.
The agent judges the gate values. The CLI maps those values to a readiness verdict:
python3 skills/cure/scripts/cure.pyz gates classify \
--press-status <label> \
[--hard-floor-met] [--has-open-level-1-or-2] [--has-open-level-3] [--has-open-level-4-or-5] [--any-spinning]Handoff slug
Write the report to .cheese/cure/<slug>.md.
Put this minimum handoff slug at the top:
status: <canonical status field>
next: age | done
artifact: <path of the report that this run consumed>
baseline: none | <recorded baseline block copied from the upstream handoff — see ../cook/references/quality-gates.md>
<one-line orientation: what cure applied or deferred>The handback contract defines the status: grammar.
Only next: and the additional keyed lines are specific to this phase.
artifact: names the source report that this run consumed.
Use handoff_context.source_report for that value, or the resolved .cheese/age/<slug>.md path.
Write the report body to a separate file.
Then let the canonical writer create .cheese/cure/<slug>.md once.
Pass every optional field that this run has.
python3 skills/cure/scripts/cure.pyz write-handoff-artifact \
--slug <slug> --status <status> --phase cure --next age [--base <base>] \
--artifact <consumed-report-path> --orientation "<one-line orientation>" \
--baseline "<copied baseline block>" --durable-flags "<one line per flag>" \
--grounded <path[#start-end]> \
--body-file <body-path> \
--payload-schema https://schemas.easy-cheese.dev/curd-resultUse a second command for the terminal state.
Omit --payload-schema, because a terminal transition rejects a payload schema.
python3 skills/cure/scripts/cure.pyz write-handoff-artifact \
--slug <slug> --status <status> --phase cure --next done [--base <base>] \
--artifact <consumed-report-path> --orientation "<one-line orientation>" \
--baseline "<copied baseline block>" --grounded <path[#start-end]> \
--body-file <body-path>Omit --baseline and --durable-flags when this run has no such value.
phase=cure controls storage routing.
next declares the following phase, and the writer validates that transition.
Use status: ok when at least one finding applies cleanly.
Use it when no finding meets the --auto severity floor.
Use status: halt: <reason> when every selected fix fails evaluation.
Use it when a project gate cannot pass.
Use next: age when review follows.
This value is the default for automatic and interactive runs.
Use next: done only for an interactive run without --auto.
The user must also decline review explicitly.
Cure does not track the current pass.
/age --auto enforces the two-cure-pass cap on its third invocation.
Output
Use formatting.md.
Below the slug, add the exact headings ### Applied, ### Deferred, ### Checks, and ### Re-review.
Bind <slug> to the stem of the consumed source report.
When source_skill is /affinage, end each result line with [from-comment:<id>].
Include finding IDs, evidence, residual risk, and the next command.
Use /age <slug> --scope <touched-path> or /plate as that command.
Handoff
Pipeline: culture → mold → cook (⇄ press) → age → [cure] → plate
After the report exists, decide whether to dispatch /plate or ask.
A clean cure updates an open PR without another gate by default.
--safe restores the handoff gate.
When /affinage started the run, never dispatch /plate from Cure.
This state uses handoff_context.source_skill: /affinage.
Apply the fixes and run the automatic Age loop when required.
Then return control to /affinage.
It posts the GitHub replies before it dispatches /plate.
Default without --safe:
- With an open PR, dispatch
/plate [--hard]. It performs its final write gate, commit, topology update, and publication. - With no open PR, use
--open-prto dispatch/plate [--hard]./platedecides the topology without asking the user. Seetopology.md. - Without
--open-pr, leave the remote unchanged. Reportno open PR — pass --open-pr or run /plate. - Run § Post-PR write-back before every
/platedispatch. - Skip
/platewhen the cure is not clean. Report the blocker and stop.
With --safe, use the shared handoff gate.
Offer these choices:
- Review the touched code. Run
/age <slug> --scope <touched-path>. Recommend this choice when fixes extend beyond the finding hunk. - Plate it. Run
/plate [--hard]to commit and publish. - Checkpoint and stop. Run
/wheypoint. - Stop. Dispatch nothing.
Preselect Plate it only when all selected fixes and gates pass. Run the selected command immediately.
Post-PR write-back
Read references/post-pr-writeback.md before any path publishes to a PR.
This includes default, --open-pr, --safe, and automatic publication paths.
The file defines candidates, writers, fallback behavior, ownership, and the empty case.
--hard mode
/cure --hard passes --hard to /plate.
/plate completes and verifies every durable write.
It then gives /hard-cheese the final artifact inventory.
Stop publication on a FAILED gate result.
Stop publication when a non-TTY environment blocks the gate.
An ERROR result uses the hard-cheese fail-open policy, and publication continues.
Review, checkpoint, and stop choices skip this gate.
Read skills/hard-cheese/SKILL.md and ../hard-cheese/references/composition.md.
Auto mode
Read references/auto-mode.md before auto mode.
It defines selection, validation, reversion, Age limits, flag forwarding, publication, and Cook worker exceptions.
It also defines the --auto --hard puncture clause.
Rules
- Use the recommended composite or the locked selection by default.
--saferestores the gate. Pause for false-premise, sprawling, structural, or conflicting findings. - Keep fixes within the selected findings. Do not fix failures identical to the baseline.
- Report failed and skipped checks.
Put reverted automatic findings under
### Deferred. - Follow
## Handofffor every publication decision. Never publish an unclean cure. - Stop before you apply a finding that rests on a false premise. Report why the Age claim is wrong or obsolete.
- Apply the shared voice rules from
../age/references/voice.md. Lead with the applied changes. Mark residual risk ascertain | speculating | don't know. Do not invent follow-up work for a correct diff. - Identify the gate command before you claim
status: ok. Run it again in the same turn. Read its full output. Then make the claim. Do not useshould,probably, orI thinkin completion claims. State what the gate output shows.
Discipline
Read references/cure-discipline.md before you apply any fix.
It defines the Iron Law, Red Flags, and rationalization table.
Agent resolution
Resolve fix work through agent-resolution.md.
| Work | Preferred types | Permissions/isolation | Minimum power | Effort | Fallback |
| Apply selected findings | coder | write, isolated worktree | default | high | compatible coder, then general |
The canonical Cure handoff includes the shared agent_resolution block.
See the generated command inventory in references/commands.md.
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.

