AddThisFeature

Prompt Template Library

Keep reusable prompts in one place instead of rewriting the same instructions each time.

moderate Developer Experience

What it adds

A managed collection of named prompt templates, scoped by owner and role, that the app's AI features run from.

What your agent is told to do

5
  1. 1

    Find every place in the app where prompt text is currently assembled inline, and move that text into named templates that the feature loads at run time. Leaving one copy behind guarantees the two drift apart.

  2. 2

    Split each template into a system portion, which only administrators can edit and which users never see, and a task portion that authors may change. The system portion is where safety rules, output shape, and tone live, and a user editing it can disable them by accident.

  3. 3

    Scope templates to a user, a workspace, or a role using the app's existing permission model, and default a new template to its author rather than to everyone.

  4. 4

    Record who created and last changed each template, when, and which features use it, so an unused template can be retired and a broken one can be traced back to a change.

  5. 5

    Placeholder syntax, typing, and validation of substituted values are owned by Prompt Variables; this feature owns storage, scoping, and discovery. Do not build a second substitution mechanism here.

Edge cases it handles

8
  • System instructions and user-editable task content must be stored and rendered separately. A single editable blob lets an author delete the safety and formatting rules without realising the feature depended on them.
  • Templates must respect the app's scoping rules, so a workspace template never appears in another workspace and a role-restricted template never appears to users who cannot run it.
  • A template with unfilled required variables must be blocked before any request is sent, because a prompt containing literal placeholder text produces confidently wrong output rather than an error.
  • A template that references data or a tool the running user cannot access must fail with a clear explanation. Silently dropping the inaccessible part produces an answer built on a gap nobody was told about.
  • Ownership and last-updated information must be recorded and displayed, or a library of a hundred templates becomes impossible to audit or prune.
  • Deleting or renaming a template that a live feature depends on must be refused or must warn with the list of dependents, rather than breaking the feature at the next run.
  • Templates must have a length ceiling, because an unbounded template multiplied by every request is a cost problem before it is a quality problem.
  • If the template store is unreachable, the feature must fail with a clear message rather than falling back to an empty prompt.

Definition of done

8
  • All prompt text used by the app lives in the template library, with no inline copies remaining.
  • System instructions are separated from user-editable content and are not visible or editable to ordinary authors.
  • Templates are scoped by user, workspace, and role, and new templates default to their author.
  • Each template shows its owner, last editor, last update, and the features that use it.
  • Deleting or renaming a template in use warns with its dependents rather than silently breaking them.
  • Running a template with missing required values is blocked before any request is made.
  • The feature matches the existing design system.
  • No existing functionality is broken.

Related features

How it works

  1. 1

    Copy the link

    Grab the Markdown instruction URL for this feature.

  2. 2

    Give it to your AI

    Paste it into Claude Code, Cursor, v0, Lovable — whatever you build with.

  3. 3

    It inspects, then implements

    Your agent reads your existing app first, then adds the feature to fit it.

Works with your stack

These instructions are written to adapt. They tell the agent to detect your framework, match your existing design system, and reuse what you already have — rather than assuming a particular stack.

Need it tighter than that? Customize the feature and tell it exactly what you're running.