CRISPE AI Prompt Framework: Context, Role, Instruction, Subject, Preset, Exception
The CRISPE AI Prompt Framework helps you turn a vague model ask into a prompt that names Context, Role, Instruction, Subject, Preset, and Exception. The distinctive load is a refusal list specific enough to fail an output, plus defaults and a stance. Filling the six slots does not, by itself, make…
Framework Card
- Name:
- CRISPE AI Prompt Framework
- Goal:
- Turn a vague model ask into a prompt that names context, role, instruction, subject, presets, and explicit exceptions.
- Flow:
- Context → Role → Instruction → Subject → Preset → Exception
- Best For:
- Outputs that keep doing work you forbade; Jobs that need a default envelope (tone, length) plus a refusal list; Prompts where role and subject must stay separate from the instruction
Why it matters
Instruction can be clear and the model still writes the competitor teardown you forbade, adds a pricing table you did not ask for, or invents a statistic. The miss is often the missing refusal, not the missing task.
CRISPE is a way to put Role, defaults, and Exception in the same spec so you can reject an output for crossing a line you named.
What it is
CRISPE is a six-slot prompt construction method:
- Context: background the model may use
- Role: stance that should change the advice
- Instruction: the task
- Subject: the object of work (the product, the policy, the dataset)
- Preset: default envelope (tone, length, format)
- Exception: what not to do, include, or invent
Subject is not a second Instruction. “Write a launch plan” is Instruction. “Voice thermostat for apartments” is Subject. Preset is the default envelope. Exception can override it (“professional tone, except no superlatives”).
CRISPE is a prompt spec. It is not COSTAR’s audience-tone pack, not P.R.O.M.P.T.’s sequence pack, and not the Five Ws.
How it works
A useful CRISPE pass fills six slots for one job, then yields a paste-ready prompt.
1. Context
Facts the model may use. Label unknowns.
2. Role
A stance that changes the advice. Empty “expert” roles add little.
3. Instruction
The task, accept-or-reject specific.
4. Subject
The object of work. If Subject equals Instruction, you have duplicated a slot.
5. Preset
Default tone, length, or format unless Exception overrides.
6. Exception
A list you could use to fail the output: topics, sections, invented numbers, audiences to avoid. “Be careful” is not an Exception.
How it compares
| Framework | What it helps you see | How it differs from CRISPE |
|---|---|---|
| COSTAR AI Prompt Framework | Context, Objective, Style, Tone, Audience, Response | Distinctive load is reader, voice, and shape. CRISPE’s load is Exception. |
| P.R.O.M.P.T. Framework | Purpose, Role, Order, Format, Personality, Tight Controls | Distinctive load is sequence plus hard limits. Tight Controls overlap Exception in spirit; P.R.O.M.P.T. also requires Order of Action. |
| BROKE AI Prompt Framework | Background, Role, Objective, Key Result, Evolve | Evolve is a second pass. |
| ICIO AI Prompt Framework | Instruction, Context, Input Data, Output Indicator | Input Data is first-class. Four parts. |
| Five Ws | Who, what, when, where, why | A looser question set, not this six-slot spec. |
CRISPE is the lens for a prompt that must fail cleanly against a refusal list. Other methods help when the distinctive slot is audience, sequence, evolve, or input data.
When to Use This Framework
- A forbidden zone. No legal claims, no competitor naming, no medical advice.
- A default envelope plus a refusal. Keep a memo format, but never add a roadmap section.
- Role and subject must stay distinct. A launch planner (role) for one device (subject), not a generic expert essay.
Example
A concrete example makes the structure easier to reuse when you are under uncertainty.
Example: Launch plan that names competitors you forbade
A PM asks for a launch plan. The model writes a competitor teardown.
They fill CRISPE: Context is the ship date and channel list. Role is launch planner. Instruction is a 10-day plan. Subject is the thermostat SKU. Preset is a numbered list under 600 words. Exception: do not name competitors; do not invent press hits; if a channel is unknown, write “unknown.”
Implication: The next draft can be failed against Exception. The method did not prove the launch. It made the refusal list checkable.
Example: Internal FAQ that keeps adding legal advice
A support lead wants an FAQ. The model adds warranty interpretations.
Preset: plain FAQ. Exception: no legal interpretation; point to the policy URL; no medical or safety diagnoses.
Implication: Instruction stayed “write the FAQ.” Exception stopped the extra job.
Takeaway
What CRISPE can help with
- Specifying role, subject, defaults, and refusals in one prompt
- Catching outputs that do forbidden work
- Producing a paste-ready prompt with a fail test
What CRISPE cannot replace
- COSTAR. Audience, style, tone, and response shape as the main pack.
- P.R.O.M.P.T. Order of Action and Tight Controls as the distinctive load.
- BROKE. Evolve after the first output.
- ICIO. Input Data as its own slot.
- A correct plan. A filled spec can still encode a bad instruction.
Honest scope: CRISPE structures a prompt with explicit refusals. It does not replace neighboring prompt packs.
Frequently asked questions
No. Both are six-letter prompt packs. COSTAR’s distinctive load is audience, style, tone, and response shape. CRISPE’s distinctive slot is Exception.
A paste-ready prompt with all six slots filled, including at least one Exception you could use to fail the output. If Exception is “be careful,” you do not have this method yet.
They overlap. Choose CRISPE when Role, Subject, Preset, and a refusal list are the spec you want. Choose P.R.O.M.P.T. when the spec must also include a work sequence (Order of Action).
If there is no refusal, another pack may fit better. Empty Exception is a missing slot, not a simpler CRISPE.
No. It makes refusals and defaults checkable. The instruction can still be wrong.