Copy this canvas into your wiki or ticket before a chat draft becomes customer-facing language. Gaps in Meta, Input, or Quality become review failures: wrong voice, invented facts, or confident answers with no refuse rules. For why the six blocks exist, read The Six-Block Prompt System. This page is the pasteable artifact—not a playbook.
Use the AI Workflow Canvas for the operating page (outcome, steps, gates). Use this canvas when you are writing or revising the prompt text itself.
How to use
- Pick one prompt ID tied to a workflow (
support-reply-v3). - Fill all six blocks—no blank Quality or Input constraints.
- Attach the row to your prompt registry with owner and environment pin.
- Link eval cases before promotion to production.
A Prompt ID before chat lets reviewers reject by named block and attach the row to the registry later—without hunting an unlabeled paste. Treat the canvas as a draft. Update when policy, sources, or Output shape change—not when chat rewrites the wording.
Six-block canvas (blank)
| Field | Your answer |
|---|---|
| Prompt ID | |
| Owner | |
| Workflow ID (optional) | |
| Meta | Role · situation · purpose |
| Input | Facts · sources · constraints the model may use |
| Output | Format · sections · length · delivery shape |
| Reasoning | Steps or checks before the final answer |
| Quality | Pass/fail criteria · what to refuse |
| Advanced | Settings or modes that change behavior |
Store completed canvases next to registry rows and eval results. One canvas per prompt ID—avoid mixing unrelated prompts.
Weak vs strong fill
Weak rows look finished in chat demos and fail under review. Use this table before you pin an environment—not after a customer-facing miss.
| Signal | Weak | Strong |
|---|---|---|
| Meta | “Helpful assistant” | Named role, situation, and one purpose |
| Input | “Use context” | Named sources + explicit denied facts |
| Output | “Write a good reply” | Sections, length, and artifact type |
| Quality | “Be accurate” | Refuse rules and measurable pass checks |
| Advanced | Blank or “default” | Settings that matter for this task |
If more than two rows look weak, pause production pin until fixed. Weak Meta or Input is enough reason alone to hold traffic.
Filled example: support-reply-v3 (Northline)
Use as a check—not as copy-paste values for your brand.
| Field | Example answer |
|---|---|
| Prompt ID | support-reply-v3 |
| Owner | Support ops lead |
| Workflow ID | support-assist-tier2 |
| Meta | Senior support writer for Northline B2B; calm, precise; goal is a customer-ready email |
| Input | Ticket summary, product tier, known outage window from the status page; do not invent dates |
| Output | Subject line + three short paragraphs + one CTA bullet; no marketing upsell |
| Reasoning | Confirm tier → check status facts → draft → self-check against Quality |
| Quality | No invented SLAs; tier name exact; one CTA only; if facts missing, ask one clarifying question |
| Advanced | Prefer deterministic drafting; no web browse unless status URL is in Input |
Northline treated the filled canvas as the draft that reviewers could reject for a named block—then pinned the approved text in the registry with eval cases before traffic.
Guardrails
- A filled canvas is not a training certificate and does not replace drills on promptanatomy.app when the team needs shared practice.
- Completing the canvas does not replace workflow IDs, RACI, or eval gates on your systems.
- Do not paste canvas text into procurement decks; cite owned metrics and pass rates.
- Plans for team practice: promptanatomy.app/#pricing.
Fill the write layer here. Operate the workflow on the AI Workflow Canvas. Release through the registry and eval checklist—not through an unlabeled chat win.