Your AI writes a draft. You make your final edits. You publish. Then the lesson dies and next week it makes the same mistake. This is the setup that makes your skill compare its draft to your final version, pull the rules out of your edits, and write them into its own instructions, so it gets smarter every time you use it.
A skill that gets smarter every single time you use it. That is the whole idea, and almost nobody sets it up.
Here is the loop in one sentence. Your skill writes a draft. You make your final edits and publish. Then you hand the published version back and make it compare the two, pull out the edits that will happen again, and write those rules straight into its own instructions. Not a memory it might forget. The actual file that tells it how to work.
That last part is the whole thing. Your final edit is the answer key, and the lesson gets written into the skill file after every publish. The one piece of evidence that cannot be argued with is what you decided was good enough to ship.
The Loop, At A Glance
1. Your skill runs and hands you a draft.
2. You make your final edits and publish.
3. The agent compares its draft to your final version.
4. The edits that will repeat get written into SKILL.md.
5. The next run starts smarter. Then it all repeats.
↻ Every publish makes the instructions better
I run this on the email agent for my clothing brand. It drafts, my team edits, we send, then the agent reads the sent version against its draft. Two months in, the drafts need a lot less work. You do not need a brand to do this. It works on a newsletter, client proposals, product descriptions, job posts, or ad copy, anything a person edits before it goes out.
Why This Beats "Review Your Own Draft"
Asking a model to critique its own work sounds like the same thing. It is not. A model grading itself grades against its own taste, and its taste is the thing that was wrong. Your edit is outside evidence. It does not care what the model thinks is good.
Two minutes, once. Then you never think about it again.
The file. A skill is a plain text file named SKILL.md in its own folder, either personal (~/.claude/skills/newsletter/SKILL.md, available everywhere) or in the project (.claude/skills/newsletter/SKILL.md, shared with your team). The one fact that makes a per-publish loop possible: Claude Code watches that folder live, so an edited skill takes effect in the session you are already in. No restart. Never built one? 3 Ways To Build A Claude Skill is the two-minute first build.
The folders. Make two of them in your project: drafts/ and published/. Every piece gets the same filename in both, a date then a short slug, so drafts/2026-07-19-welcome-email.md and later published/2026-07-19-welcome-email.md. Matching names is how the agent finds the pair without you explaining anything.
Do This Before Anything Else
If the skill came from a plugin, copy it into ~/.claude/skills/ first and work on your copy. Skip this and the next plugin update wipes the cache and every rule your loop ever learned is gone, with no warning. Copy it first.
Move One
Save the raw draft, before anyone edits it
The moment the agent finishes, that draft has to land in a file, not the chat and not the doc you are about to edit. You cannot compare two versions if you only kept one. The whole value of this loop is the gap between what the machine produced and what you decided to ship, so save the raw output, typos and all.
Add one line to the bottom of your skill file so it happens on its own: "When you finish a draft, save it to drafts/ as YYYY-MM-DD-slug.md before showing it to me."
Move Two
Save what actually shipped
After it goes out, copy the exact final version, including any last-second change someone made in the email tool at 11pm, and paste it into published/ with the matching filename. Thirty seconds, no clever tooling.
Move Three
Run the engine
One prompt does the rest. It reads both versions, lists what changed, keeps only the edits that will happen again, and writes them into your skill file as rules, after you approve them. Paste it, swap the two file paths, and change nothing else the first few times you run it.
You will get three to eight rules on the first run, and most will be right, because your edits are more consistent than you think. Because the skills folder is watched live, the very next thing you ask it to write already follows the new rules. No restart, no waiting for Monday. That thirty seconds of reading the proposed rules and cutting the ones you disagree with is the only quality control this loop has, so do not skip it.
This is the part that quietly kills these loops, and nobody warns you. Month one it is beautiful: six sharp rules, better drafts. Month four you have sixty rules, some say the same thing twice, two flatly contradict each other, and the output is worse than it was at rule fifteen. A learning loop with no pruning is just a hoarding loop.
Four habits keep it lean, and you need all four:
One prompt runs the whole prune pass:
The One Test For Every Rule
Could a freelancer who started this morning follow it without asking a question? "Be more concise" fails. "Product descriptions are 40 words or fewer" passes. And if you cannot read your whole Learned Rules list out loud in under a minute, the agent is not really following it either. Fifteen sharp rules beat sixty fuzzy ones, and it is not close.
You do not need a new project. You need one thing you already publish on a schedule and already edit before it goes out.
The reason almost nobody has this running is not that it is hard. It is that the edit feels finished the moment you hit publish. It is not. Every edit you make is training data, and right now you are throwing all of it away. For the theory underneath it, Loop Engineering covers what a loop actually is.
If You Commented IMPROVE
This is the whole setup. Two folders, one skill file, two prompts, and a prune pass on the calendar. No code, no new subscription. Save your next draft before anyone touches it. That single habit is what turns your edits into instructions instead of into nothing.
© 2026 Mariah Brunner. All rights reserved.