Convert a Conversation to a Prompt — the Full Anatomy
What a converged conversation contains: a rejected voice, an accepted framing, a hard constraint, a format decision, and a final-version moment — each mapped to its prompt section.
The result you finally liked lives inside the chat. Distill the iterations into one prompt: corrections become requirements, the accepted version becomes the quality bar.
Every iterated conversation ends with a buried asset: the combination of corrections that finally worked. Re-running the chat to get it back wastes the iterations; remembering them by hand drops the one that mattered. The reusable prompt package extracts the asset — the "too generic" rejection becomes an avoid-rule, the "open with a concrete failure moment" correction becomes a requirement, the under-120-words constraint travels, and the "perfect, that works" moment becomes the quality bar. This setup loads a blog-intro iteration distilled into exactly that prompt.
Paste the iteration
The corrections, rejections, and "keep this" moments are the raw material — the detector finds them.
Read the AVOID list
Rejected directions travel explicitly — the model cannot rediscover the paths you walked back.
Start at the result
Next time, the first output meets the standard the conversation took nine turns to reach.
The REQUIREMENTS header states the rule verbatim — 'later items override earlier ones where they conflict' — so the four extracted signals resolve in the sequence you typed them, the final 'Perfect. That works.' outranking any earlier note it contradicts. The builder pulls them in order rather than re-judging which correction is right; you eyeball that ordering before running the prompt in ChatGPT or Claude.
The AVOID block sits apart from REQUIREMENTS so a walked-back direction is named, not merely absent — here it holds the verbatim 'Too generic — that opening could start any remote work article ever written' rejection. Listing only what you want would leave that failure re-reachable; the builder parks the rejection under AVOID as a do-not-reproduce line the model reads alongside the positive instructions.
Not from this package as-is — the OPTIONAL VARIABLES note reads 'None placed,' so the TASK line is fixed to the blog intro it distilled. The builder points you to Template Prompt mode for a single {{input}} slot, or the Prompt Variable Builder to variableize fully. Until then, edit the TASK line by hand each use; the REQUIREMENTS beneath it are the reusable part the iterations earned.
What a converged conversation contains: a rejected voice, an accepted framing, a hard constraint, a format decision, and a final-version moment — each mapped to its prompt section.
In feedback threads the rejections carry the knowledge: the mocking empty-state enthusiasm, the passive phrasing — converted into the avoid-rules that define the style.
A case-study chat that converged on the three-beat structure becomes a template: {{input}} changes per customer, everything the iteration earned stays fixed.
End a working session like a shift change, not an abandonment: state captured, decisions logged, next step named — ready for the next session to pick up.
Turns a reusable API request prompt into a clean variable set covering endpoint, method, auth, payload, response format, and error handling.
A reusable AI agent task template with variables for objective, context, available tools, constraints, success criteria, failure handling, and output format.
Distill an iterated conversation into one reusable prompt — corrections become requirements, rejections become an avoid-list.