Repeatable tasks get retyped from scratch every time, with no surface for what is variable.
Templates
Slot-filled prompts for repeatable tasks
For repeated tasks, free-text prompting is wasteful and inconsistent. Templates expose the prompt as a form — named slots, hints, required vs optional — so the user only fills in what changes. Output stays consistent run to run, and onboarding is dramatically faster.
Metaphor
Madlibs
Interaction
Slot Filling, Template Picker
Use case
Repeatable Tasks, Onboarding, Standardised Workflows
Failure mode
Re-Improvising Stable Tasks
Control mechanisms
Named Slots · Validation Hints · Required vs Optional · Save as Template
Reference examples
Notion AI Templates · GitHub Issue Forms · Cursor Slash Commands
Interactive Example
The live side-by-side is the comparison.
This prototype already contains the contrast between chat and the pattern response. It stands as the primary comparison surface for this page.
You already know what changes. Stop retyping what doesn't.
For a task you run weekly, free-text prompting throws away everything you learned last time. The stable 90 percent gets retyped alongside the 10 percent that actually varies, and nothing in the blank box tells you which is which. The prompt hides its own structure, so consistency depends entirely on you remembering the exact phrasing that worked.
Templates expose the prompt as a form with named slots, hints, and required-versus-optional fields, so the same template plus the same slots yields the same output shape every run. The variable surface becomes explicit and the rest is frozen — which turns a remembered incantation into a shareable, onboardable object a whole team can run identically.
When a task repeats, the blank prompt box is not freedom — it is a memory test you fail a little differently each time.
DOPE Lens
How this pattern improves AI interaction quality.
Observability
The template structure is visible; the user knows exactly what is variable
Directability
Edit any slot, save the variation as a new template, share it
Predictability
Same template + same slots = same output shape, every run
Explainability
Each slot declares its purpose, valid values, and downstream effect
Fit
Where it earns its place.
when
A task is repeatable enough that variables can be named and most fields stay stable across runs.
when
The task is one-off and exploratory — a template would add scaffolding that is never reused.
In the wild
Where this pattern already ships.
Real implementations from products users already know. Each entry shows how the pattern got applied — what shipped, where it sits in the product, what it traded off.

Notion AI Templates
Notion
Workspace admins create reusable prompt templates with slot-filling; relation-aware autofill traverses linked entries to populate the form.
Visit Notion ↗

GitHub Issue Forms
GitHub
YAML-defined issue forms: text inputs, dropdowns, checkboxes, file uploads, required-vs-optional fields. The strongest non-AI precedent — the pattern predates AI products.
Visit GitHub ↗

Cursor Slash Commands
Cursor
Custom slash commands stored as Markdown in `.cursor/commands/` — version-controlled, team-shareable, parameterizable. Templates as code.
Visit Cursor ↗
Research Frame
Why this pattern exists, and where it breaks.
Expose the prompt as a form with named slots, hints, and required-vs-optional fields.
Free-text prompting hides which parts of a task are stable and which actually change.
Over-specified templates feel rigid; under-specified ones invite the same variability the template was supposed to fix.
Common questions
What people ask about this pattern.
When should I use the Templates pattern?
+
A task is repeatable enough that variables can be named and most fields stay stable across runs.
When should I avoid the Templates pattern?
+
The task is one-off and exploratory — a template would add scaffolding that is never reused.
What problem does Templates solve?
+
Repeatable tasks get retyped from scratch every time, with no surface for what is variable.
Why is chat the wrong fit for this?
+
Free-text prompting hides which parts of a task are stable and which actually change.
Related Patterns
Curated connections, not just neighbors.
Hand-picked relationships — what this pattern pairs with in practice, what it replaces, what it builds on, and what builds on it.
Often paired with
Saved Styles
Templates capture what changes per run, slot by slot; Saved Styles keep the tone and format every run shares.
Often paired with
Sample Response
Templates shape the request; Sample Response shows a typical result before you fill in the form.
Alternative to
Inline Prompt Controls
Templates start you from a blank form; Inline Prompt Controls finds the same slots in prose you already wrote.