TokenPad

Checklist · Quality

Prompt Review Checklist

20 items5 criticalAnyone reviewing a prompt someone else wrote — or their own, a day later

Prompts are program logic written in prose, and they get reviewed like prose: someone reads them, thinks they sound reasonable, and approves.

This is the list that turns that into a review. Most items catch a specific, common failure.

Ticks are saved in this browser only — close the tab and come back to where you were. Nothing is sent anywhere and there is no account.

0 of 20 done · 5 critical outstanding

Structure

0/4
  • Instructions buried after three paragraphs of context compete with that context for attention. State the job, then supply what the job needs.

    Check this with the prompt linter
  • Without delimiters the model has to infer where your instructions end and the data begins. That inference is exactly what prompt injection exploits.

    Check this with the delimiter checker
  • Prompt caching matches on prefixes. A dynamic timestamp at the top invalidates everything after it and turns a cheap cached read into a full-price request.

    Check this with the prompt cache checker
  • Prompts accrete. Lines get added to fix one case and never removed, and the fiftieth instruction dilutes the first.

    Check this with the prompt optimizer

Ambiguity

0/4
  • The model has to resolve these, and it resolves them differently at different temperatures and in different contexts. "Under 80 words" is checkable; "brief" is not.

    Check this with the prompt linter
  • When instructions conflict the model picks one, usually the later one, and the choice is unstable across runs.

    Check this with the system prompt analyzer
  • "Do not be verbose" tells the model what is wrong with an answer it has not written yet. "Answer in at most three sentences" tells it what to write.

  • Unspecified edge cases are where hallucination lives. A model asked a question its context cannot answer will usually answer anyway unless told what else to do.

The output contract

0/4
  • A described format and a shown format produce different compliance rates. Show the shape.

  • Structured output modes constrain decoding. Asking politely in the prompt does not, and the difference shows up at scale.

    Check this with the tool schema builder
  • "Here is the JSON you requested:" is valid English and invalid JSON. Parsers do not appreciate the courtesy.

  • Otherwise a refusal arrives as prose where structured data was expected, and fails at the parser rather than at the check that should have caught it.

Examples

0/4
  • One example is read as a template to imitate. Two or more communicate the pattern rather than the instance.

    Check this with the few shot formatter
  • Easy examples confirm the model already knew what to do. The example that earns its tokens is the one covering the case you keep getting wrong.

  • Where an example and an instruction disagree, the example wins. A stale example silently overrides the rule above it.

  • Examples are the part of a prompt most likely to be copied into documentation, a ticket or a screenshot.

    Check this with the pii redactor

Safety and cost

0/4
  • This is the cheapest mitigation for prompt injection that exists, and the one most often missing.

    Check this with the prompt injection scanner
  • System prompts leak. Assume anything in one can be extracted and write it accordingly.

    Check this with the secret scanner
  • The template is a fraction of what you send. The number that matters is what the model receives on a real request.

    Check this with the token counter
  • A 4,000 token prompt at a million calls a month is a budget line, not a rounding error.

    Check this with the llm cost calculator

Tools for this list

Questions

Who should run this review?

Someone who did not write the prompt. Most items on this list catch things the author cannot see, because the author knows what they meant.

How long should a prompt review take?

Ten minutes for a prompt under a page. If it takes longer than that, the length is itself a finding.

Does this apply to prompts inside an agent?

Yes, and more so. An agent runs its system prompt on every iteration, so both the ambiguity and the token cost are multiplied by the loop count.