A prompt template is a reusable prompt where the structure stays and only the blanks change, like {{topic}} or {{audience:beginners}}. Below are 12 templates to copy, from role, task, context and format to few-shot, critique and revise, extract to JSON and classify.
How blanks and defaults work
Every template on this page uses the same blank syntax:
{{topic}}is a blank you must fill in.{{audience:beginners}}is a blank with a default. Keep "beginners" or type something else.
The name before the colon says what goes there. The text after the colon is the value used if you don't change it. Use letters, numbers, underscores or hyphens in names, like {{word_limit:150}}, and keep a default on one line. The same blank can appear twice in a template; fill it once and both places get the value.
This syntax is what Kipt reads. When you copy a prompt with blanks, Kipt opens a small form with one field per blank, prefilled with the default or with what you typed last time. If you use the templates without Kipt, just replace the braces by hand.
A template is worth having when you notice you write the same kind of prompt over and over. The structure stays; only the blanks change. That is also how good prompts become skills: the fixed part becomes the instructions, and the blanks become the things the agent fills in from context.
1. Role, task, context, format
The general-purpose template. It covers the four things a model needs and is a good default for any new prompt.
You are {{role:an experienced editor}}.
Task: {{task}}
Context:
{{context}}
Format: {{format:a short answer, then up to five bullet points}}.
Audience: {{audience:a smart reader who is new to the topic}}.
Length: {{length:under 250 words}}.
2. Few-shot (learn from examples)
When the output has to follow a pattern that's easier to show than describe: a tone, a label set, a format. Two to five varied examples work better than one.
{{instruction:Rewrite each product note as a one-line customer-facing update.}}
<examples>
<example>
Input: {{example_input_1}}
Output: {{example_output_1}}
</example>
<example>
Input: {{example_input_2}}
Output: {{example_output_2}}
</example>
</examples>
Now do the same for this input. Reply with the output only.
Input: {{input}}
3. Critique and revise
When you want quality over speed. The model drafts, criticizes its own draft against your criteria, then fixes it.
Task: {{task}}
Step 1: Write a first draft.
Step 2: Critique the draft against these criteria:
{{criteria:clarity, accuracy, length and whether it fits the audience}}.
List the three biggest weaknesses.
Step 3: Write a revised version that fixes them.
Show only the critique and the final version, not the first draft.
4. Step by step reasoning
For problems with several steps: estimates, logic, planning, debugging. Asking for the reasoning before the answer catches mistakes. Many current models reason on their own, but this still helps you check the work.
Problem: {{problem}}
Think it through step by step before answering. List what you know, what
you need to find out, and any assumptions. Work through the steps in order.
Then give the final answer on its own line, starting with "Answer:", and
say how confident you are ({{confidence_scale:high, medium or low}}).
5. Extract to JSON
For pulling structured data out of messy text: emails, invoices, notes, web pages. Give the exact shape you want and say what to do with missing values.
Extract the following fields from the text below and return valid JSON
only, with no other text.
Fields:
{{fields:name (string), company (string), email (string), meeting_date (YYYY-MM-DD)}}
Rules:
- Use null for any field that isn't in the text. Do not guess.
- Keep values exactly as written, except dates, which use the format above.
- If there are several records, return a JSON array of objects.
<text>
{{text}}
</text>
6. Summarize for an audience
The same document needs a different summary for a CEO, an engineer and a customer. Naming the reader and what they'll do with it is what makes a summary useful.
<document>
{{document}}
</document>
Summarize the document above for {{audience:a busy executive}}, who needs
it to {{purpose:decide whether to approve the project}}.
Start with the bottom line in one sentence. Then give the points that matter
for that decision, at most {{max_points:5}}. Leave out anything this reader
doesn't need. Use plain language and keep it under {{word_limit:150}} words.
7. Compare options
For choosing between tools, plans, vendors or approaches. Your criteria and their order are what turn a generic comparison into a decision.
Compare these options: {{options}}
My situation: {{situation}}
Criteria, most important first: {{criteria:cost, ease of use, how well it scales}}
Make a table with one row per option and one column per criterion, each cell
a short phrase. Then recommend one option for my situation, give the main
reason, and say what would make you choose differently.
8. Ask me first
When the task depends on details you haven't thought through. The model asks before it guesses.
I want help with: {{task}}
Before you start, ask me the {{number:5}} questions whose answers would most
change your output. Ask them as a numbered list and wait for my answers.
Then do the task using my answers, and state any assumptions you still had
to make.
9. Rewrite for tone and length
For adapting text you already have: a formal email made friendly, a long post made short, notes made into prose.
Rewrite the text below.
Tone: {{tone:friendly and direct}}
Length: {{length:about half the original}}
Reader: {{reader:a customer}}
Keep every fact and the main point. Don't add new claims. Return only the
rewritten text.
<text>
{{text}}
</text>
10. Brainstorm, then filter
For ideas: names, angles, features, experiments. Asking for many and then filtering beats asking for "the best three" straight away.
Generate {{count:20}} ideas for {{goal}}. Make them varied: include safe,
unusual and ambitious ones.
Then pick the best {{shortlist:3}} using these criteria:
{{criteria:easy to try, likely impact, fits the audience}}. For each pick,
give one line on why and the first step to try it.
11. Classify
For sorting many items into fixed groups: support tickets, feedback, leads, transactions. A fixed label list and a fallback label keep results consistent.
Classify each item below into exactly one of these categories:
{{categories:bug, feature request, billing, question, other}}
Use "other" only when nothing else fits. Return a table with columns: item
number, category, and a reason of five words or less.
<items>
{{items}}
</items>
12. Explain to a level
For explanations that land with a specific reader, from a child to a specialist.
Explain {{concept}} to {{reader:someone with no technical background}}.
Start with a one-sentence definition, then an everyday analogy, then one
real example. Avoid jargon; if you must use a term, define it. End with the
one thing people most often get wrong about it. Keep it under
{{word_limit:200}} words.
Tips for writing your own templates
- Blank only what changes. If you fill a blank with the same thing every time, make it part of the template, or give it a default.
- Give useful defaults. A good default means you can copy the template and fill in one field.
- Always say the format. Every template above ends with what the output should look like. That is the line people most often leave out.
- Separate input from instructions. Tags like
<text>or<document>stop the model from treating pasted text as instructions. Anthropic's prompting guide recommends this for Claude, and it helps with other models too.
For finished prompts built on these patterns, see Claude prompts and the best ChatGPT prompts.
Make your favorite one a skill
A template you use every week is a skill waiting to happen. Paste it into the SKILL.md generator and it becomes a valid SKILL.md: the fixed text becomes the instructions, and each blank becomes a line like "If the audience isn't given, use 'a smart reader who is new to the topic'." Claude Code and Codex then use it on their own when a task matches. The guide to writing a SKILL.md explains what makes one work well.
To keep templates one keystroke away, save them in Kipt: paste to save, press ⌘K to find one, and Enter copies it. Blanks open the fill-in form described above, with your last answers already there. Your library lives in your own private GitHub repo, and the prompts you promote to skills install with one command.