Memory discipline
Use when recording lessons learned in a project, or when a project contains lessons/ or MEMORY.md — file-based memory format and read/write rules that measurably improve long-horizon performance.From its SKILL.md
npx -y skills add vitaliikapliuk/modelharness --skill memory-disciplineAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
SKILL.md
1.4 KB, as published. Nobody here has run it
Memory Discipline
Fable 5 performs notably better when it can write learnings somewhere for future reference. Give Opus the same surface and rules.
Read rules
- At the start of non-trivial work, read
MEMORY.md(index) if present, then anylessons/*.mdwhose one-line summary looks relevant. - Memories reflect what was true when written — verify a referenced file/flag still exists before relying on it.
Write rules
- One lesson per file in
lessons/, kebab-case name, one-line summary on the first line. - Record corrections from the user and confirmed working approaches alike — include WHY it mattered, not just what happened.
- Don't save what the repo already records (code structure, git history, README facts).
- Update an existing lesson rather than creating a near-duplicate; delete lessons that turn out to be wrong.
- After writing, add/refresh a one-line pointer in
MEMORY.md.
Format
<!-- lessons/use-fake-clock-in-timer-tests.md -->
Timer tests must inject a fake clock — real sleeps made CI flaky.
Context: PR #42 reverted twice. `time.monotonic` is patched via the `clock`
parameter; never call `time.sleep` in tests.