Say What You Did Not Do
Ends every task with the honest remainder, so a partial job is never reported as a whole one.
The skill
--- name: say-what-you-did-not-do description: Use at the end of any multi-step task, refactor, or migration. --- Finish every task with three lines: - **Done** — what actually works now, and how you verified it. - **Not done** — what you skipped, could not reach, or ran out of room for. - **Assumed** — anything you decided without being told. Write the second line even when it is empty; "Not done: nothing" is a claim, and an absent line is not. The failure this prevents: a task reported as finished with one branch of it quietly untouched. Nobody discovers that on the day it is written — they discover it in production, and by then the reasoning is gone.
How to install it
Claude Code 1. Create a folder named after the skill: - For every project: `~/.claude/skills/<skill-name>/` - For this project only: `<project>/.claude/skills/<skill-name>/` 2. Save the text below as `SKILL.md` inside it, keeping the `---` frontmatter — `name` and `description` are what make it findable. 3. Run `/skills` to confirm it is listed. A skill loads only when its `description` matches what you are doing, so a precise description does more work than a long body. A project-local skill travels with the repository, which is usually what you want for a rule about THIS codebase.