Most good prompts have a few parts you change every time: the audience, the product, the tone. Mark those parts as blanks, and Save My Prompts turns them into fields you fill in before you copy, open the prompt in an AI tool, or insert it with the extension.
Writing a blank#
Put the name of the blank in square brackets, [like this], or in double curly braces, {{like this}}. Both work the same way, so use whichever you're used to. Here's a prompt with three blanks:
Write a cold email to [hiring manager] at [company] about the {{role}} opening.
Keep it under 120 words and mention one thing [company] shipped recently.On the prompt's page, the blanks are highlighted and a “Fill in the blanks” panel shows one field for each:
Write a cold email to hiring manager at company about the role opening. Keep it under 120 words and mention one thing company shipped recently.
Write a cold email to Priya Menon at Zerodha about the product designer opening. Keep it under 120 words and mention one thing Zerodha shipped recently.
Copy, Copy filled and Open in AI#
- Copy copies the prompt exactly as written, blanks and all. Use it when you want to keep the template.
- Copy filled copies it with your values in place of the blanks. Any blank you left empty stays as written, so you can spot it in the chat.
- Open in ChatGPT, Claude or Perplexity opens a new chat with the filled prompt. Very long prompts (over about 6,000 characters) are copied first, and the AI site opens for you to paste.
Your values are remembered for that prompt on this device, so they're there next time. They're kept in your browser only and never sent to us. Use Clear in the panel to empty them.
The rules, exactly#
- A blank's name is 1 to 40 characters, on one line. Spaces are fine:
[job title]. - Spaces just inside curly braces are ignored, so
{{ tone }}and{{tone}}are the same blank. - The same name used twice is one field. Fill in
[company]once and every[company]in the prompt changes. That works across the two styles too:[tone]and{{tone}}share a field. - Names are case-sensitive:
[Tone]and[tone]are two different fields. Pick one spelling. - Fields appear in the order the blanks first appear in the prompt.
- Empty brackets,
[]or{{ }}, aren't blanks. Neither is anything longer than 40 characters or broken across lines, so a long instruction in brackets stays as plain text.
Markdown that isn't a blank#
Prompts can use Markdown. Square brackets that are part of Markdown syntax are left alone:
[Our style guide](https://example.com/style) a link, not a blank
[Our style guide][1] a reference link
[1]: https://example.com/style the reference itself
- [ ] Check the numbers a task list box
- [x] Fix the intro a ticked boxA blank right before a link still works: [audience] [read this](https://…) has one blank, audience, and one link. But a blank directly followed by an opening bracket or parenthesis, like [audience]( or [audience][, is read as Markdown, not as a blank. Add a space if you mean a blank.
Brackets you want to keep#
There's no escape character yet. If a prompt contains code such as items[0] or config[env], those brackets show up as blanks named 0 and env. That's harmless: leave those fields empty, and Copy filled keeps them exactly as written.
Blanks work inside code blocks too, which is handy for prompts that template a function name or a file path.
Tip for authors: name blanks so a stranger can fill them in without reading the whole prompt. [audience: e.g. first-year students] is a fine blank, as long as it stays under 40 characters.
In the extension#
When you insert a prompt that has blanks, the side panel asks for the values first, then inserts the filled text into the chat box. See Using the Chrome extension.