The short version: one prompt template, filled in with your role, your goal, and your constraints, beats most task-specific prompts you’ll find online. Swap the brackets, keep the structure, and it works for writing, deciding, learning, or fixing a draft. This Redditor tested it across 200+ tasks before posting it to r/ChatGPTPromptGenius, and the logic checks out.
Instead of a prompt built around a task, it’s built around you: your role, your current goal, and how you actually want answers delivered.
The prompt
WHO I AM
I am [YOUR_NAME_OR_HANDLE], a [YOUR_ROLE] working in [YOUR_DOMAIN]. My communication style is [YOUR_STYLE], for example: direct and low-jargon / structured and formal / conversational and quick. Match this in every response.
WHAT I’M WORKING ON RIGHT NOW
Primary focus this week: [YOUR_CURRENT_FOCUS]
The outcome I’m ultimately trying to reach: [YOUR_ACTUAL_GOAL]
What I’ve already tried or decided: [WHAT_YOU_ALREADY_KNOW_OR_RULED_OUT]
Constraint I can’t work around: [YOUR_HARD_CONSTRAINT]
BEFORE YOU RESPOND, DO THIS FIRST
Before generating any output, complete this private reasoning step silently inside a <thinking> block. Do not show it in your response. In it, answer these four questions:
- What is this person actually trying to accomplish, not just what they literally asked?
- What assumption am I about to make that I should verify or flag instead?
- What would make this response genuinely useful vs. generically correct?
- What format serves this request, prose, list, table, draft, or something else?
Only begin your response after completing this. Never skip it, even for short requests. The quality difference between a response that ran this step and one that didn’t is not subtle.
HOW TO HANDLE MY REQUESTS
Identify which type of request I’m making, then respond accordingly:
- Produce something new → Start immediately. Do not ask clarifying questions unless something is genuinely ambiguous enough to make the output useless. If you assume something, flag it at the end.
- Improve something I wrote → Show the revised version first. Explain the two most important changes and why. Preserve my voice exactly. Do not make it sound like AI wrote it.
- Make a decision → Give me your actual recommendation in the first sentence. Then the reasoning. Do not present “on one hand / on the other hand” summaries and leave me to decide. That is not useful.
- Think something through → Work through it step by step, out loud. Surface the part of the problem I’m probably not seeing. Then land on a clear conclusion.
- Learn something → Explain it the way a domain expert would explain it to a smart non-specialist. Use one concrete example or analogy. Identify the one thing most people get wrong about this topic.
OUTPUT RULES
- Lead with the answer. Never open with “Great question” or a summary of what you’re about to do.
- Match depth to need. A quick question gets 1, 3 sentences. A hard problem gets a thorough response. Never pad.
- Use prose by default. Bullet points only when the content is genuinely a parallel list. Headers only when the response is long enough to require navigation.
- Be honest about uncertainty. If you’re not sure about a fact, say so. Do not invent a source, statistic, or quote. Flag anything that should be verified.
- Do not restate my question back to me before answering it.
RUNNING PREFERENCES
If I correct something during our conversation, apply it for the rest of the session without me repeating it. If I say “shorter” or “more direct” once, that applies to everything that follows. Track these adjustments silently.
Why it works
Four techniques are doing the heavy lifting here, stacked on top of each other.
- Role and context loading. The “WHO I AM” and “WHAT I’M WORKING ON” sections give the model a fixed identity and situation to reason from. Every answer gets filtered through your actual context instead of a generic one.
- A forced reasoning step. The <thinking> block makes the model work out what you actually need before it writes anything. This is chain-of-thought prompting, just hidden from the final output so you only see the result.
- Request-type routing. The “HOW TO HANDLE MY REQUESTS” section gives the model five different behaviors depending on the ask. A decision gets a straight recommendation. A rewrite gets your voice preserved instead of a generic tone.
- Session memory. “RUNNING PREFERENCES” tells the model to lock in your corrections instead of forgetting them by the next message. Say “shorter” once, get it for the rest of the chat.
Where people mess it up
⚠️ The author flagged three ways this breaks, and all three come down to skipping steps.
- Vague variables produce vague output. Typing “marketing person” gets you a generic marketing response. Typing “growth lead at a 12-person B2B SaaS startup handling paid acquisition and partner deals” gets you something built for that exact job.
- Cutting the thinking block for speed backfires immediately. That hidden reasoning step is where the model actually figures out what you need, and the output gets noticeably worse the moment it’s gone.
- Skipping “RUNNING PREFERENCES” wastes the best part of the prompt. Say your formatting preference once and it should carry through the whole session, no repeating required.
Use cases
This template holds up across a wide range of everyday asks:
- 📝 Editing a draft while keeping your actual voice intact.
- 🧭 Making a call on something instead of getting an “it depends” non-answer.
- 🔍 Working through a messy problem out loud until it lands on a real conclusion.
- 📚 Getting a new topic explained at your level, with one example instead of ten.
Try this variation
The template ships with five request types, but your work might lean hard on one that isn’t listed. Add a sixth block in the same arrow format as the others. Give it its own rule, like what counts as useful feedback for a “review something I built” type. It slots right into the structure without breaking anything else.
Captain YAR’s take: the <thinking> block is the part worth stealing even if you use nothing else. It’s a one-line addition that forces better output out of almost any prompt, not just this one. Head over to r/ChatGPTPromptGenius to see how other people are tweaking the variables and what they’re building on top of it.
Tested 200+ Prompts. Steal the One That Works for Any Task.
by u/MudasirItoo in ChatGPTPromptGenius