Docs
Placeholders
Placeholders mark the parts of a prompt that change each time. Generate turns them into a form, so you fill in the blanks instead of editing the prompt.
At a glance
| Write | You get | Notes |
|---|---|---|
{{topic}} |
A text box | The default type |
{{words:number}} |
A number field | |
{{source:file}} |
A file picker | The file’s text is inserted, read on your device |
{{tone:select[formal, friendly]}} |
A dropdown | Options separated by commas |
A placeholder is a name in double curly braces, optionally followed by a colon and a type. Use them anywhere in a prompt, as often as you like.
Text
Write a short bio for {{name}}, a {{role}} at {{company}}.
The plain form, and the one to reach for by default. Each becomes a two-line text box you can drag taller, so it works for a single word or a whole paragraph.
Number
Summarize the article below in about {{words:number}} words.
A field that only accepts numbers. Useful for lengths, counts and limits, where a typo like “3oo” would otherwise slip through.
File
Review this code for bugs:
{{code:file}}
A file picker. The chosen file is read as text on your device and inserted where the placeholder is; nothing is uploaded. Text files up to 2 MB work: source code, CSV, Markdown, logs, JSON and so on.
Select
Rewrite this email in a {{tone:select[formal, friendly, direct]}} tone.
A dropdown with the options in square brackets, separated by commas. Spaces around each option are ignored, so [formal,friendly] and [formal, friendly] are the same.
The rules
- Names use letters, digits and underscores:
{{focus_area}},{{step2}}. Spaces just inside the braces are fine:{{ topic }}. - Types are
text,number,fileandselect, in any case. An unknown type is treated as text. - A select needs options.
{{tone:select}}or{{tone:select[]}}becomes a text box. - Options can’t contain commas or a closing square bracket
]. - Reuse a name to reuse a value. Every
{{product}}in a prompt is filled from the same field. The first occurrence decides the field’s type, so you only need to write the type once:
Write a launch tweet for {{product:select[Atlas, Nimbus]}}.
Then write a one-line tagline for {{product}}.
- Empty fields stay as they are. If you leave a field blank, the placeholder remains in the finished prompt as
{{name}}, so you can spot what’s missing.
A complete example
Review the following {{language:select[Python, JavaScript, Go]}} code
for bugs and readability.
{{code:file}}
Focus on {{focus_area}} and keep the review under {{words:number}} words.
Generate shows four fields: a dropdown, a file picker, a text box and a number field. Pick Python, choose parser.py, type “error handling” and 150, and the prompt reads:
Review the following Python code
for bugs and readability.
def load(path):
f = open(path)
...
Focus on error handling and keep the review under 150 words.
Where placeholders show up
- Library cards list a prompt’s placeholders as chips, so you can see what it asks for at a glance.
- Add Prompt and Save as prompt detect placeholders when you save; the syntax is summarized right in both forms.
- Generate, from a card or a prompt’s details, turns them into the form described above. See the guide for the rest of that dialog.