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.

Framing

The problem

Repeatable tasks get retyped from scratch every time, with no surface for what is variable.

The pattern

Expose the prompt as a form with named slots, hints, and required-vs-optional fields.

Why chat breaks here

Free-text prompting hides which parts of a task are stable and which actually change.

Risks

Over-specified templates feel rigid; under-specified ones invite the same variability the template was supposed to fix.

Avoid when

The task is one-off and exploratory — a template would add scaffolding that is never reused.

Use when

A task is repeatable enough that variables can be named and most fields stay stable across runs.

DOPE evaluation

Directability
Edit any slot, save the variation as a new template, share it
Observability
The template structure is visible; the user knows exactly what is variable
Predictability
Same template + same slots = same output shape, every run
Explainability
Each slot declares its purpose, valid values, and downstream effect

In the wild

  • Notion AI Templates (Notion) — Workspace admins create reusable prompt templates with slot-filling; relation-aware autofill traverses linked entries to populate the form.
  • 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.
  • Cursor Slash Commands (Cursor) — Custom slash commands stored as Markdown in `.cursor/commands/` — version-controlled, team-shareable, parameterizable. Templates as code.

FAQ

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

  • Often paired with: Saved Styles — Templates fix the structure; Styles fix the voice. A repeatable output needs both.
  • Extends: Sample Response — A sample is a template you can clone. Templates make the cloning explicit and slot-fillable.
  • Alternative to: Inline Prompt Controls — Parse a free-form prompt vs start from a slot-filled template. Same destination, different entry point.

Browse all patterns