Placeholders turn a template into a fill-in-the-blank prompt. Use an unnested {{name}} token in the template body, and Solo asks for a value each time you use the template. Avoid nested double-brace sequences and unmatched opening {{ delimiters, which can prevent a later token from being recognized.
Syntax
A placeholder is a name wrapped in double braces:
Please review {{ticket_id}} and summarize the changes for {{audience}}.
The rules:
- Names can contain ASCII letters, ASCII digits, and underscores, and must start with an ASCII letter or underscore. {{ticket_id}}, {{Goal}}, and {{_draft}} are all valid.
- Spaces inside the braces are fine —
{{ ticket_id }}works the same as{{ticket_id}}. - Names are case-insensitive.
{{Goal}}and{{goal}}are the same placeholder, and Solo normalizes the name to lowercase. - Invalid non-nested forms such as {{not-valid}} and {{two words}} remain exactly as written and are not placeholders. Avoid nested double-brace sequences: a valid inner token can still be replaced at render time once that name has a value.
A placeholder can appear as many times as you like. You fill it in once, and every occurrence is replaced with the same value.
Placeholder chips in the editor
While editing a template, the Placeholders section below the body lists each placeholder as a chip, in order of first appearance, updating live as you type. The count and chips show exactly which parsed placeholder names Solo recognized.
Filling placeholders at insert time
When you pick a template with placeholders from the template picker, Solo steps through each one before inserting. The current Use prompt template binding is shown in Settings > Hotkeys; its default is Cmd+Shift+P on macOS and Ctrl+Shift+P on Windows and Linux, and it can be rebound or disabled. The picker input becomes the value field for the current placeholder, and a live preview of the full prompt shows your values dropping into place as you type.
Once every placeholder has a value, the rendered prompt — with all occurrences replaced — is inserted into the active agent or terminal input. Placeholders you leave empty are replaced with nothing.
See Using templates for the fill wizard's keyboard controls, including moving between placeholders and copying a partially filled prompt.