This is where PromptLab earns its name. Five surfaces, layered
from passive helper to active rewriter. Every output is badged
"✨ Generated by Lab Assistant" so AI suggestions never get
mistaken for teammate edits, and every surface offers thumbs-up /
thumbs-down rating that becomes training signal for future
improvements.
6.1 Optimize — full rewrite for a target model
When to use: the prompt works but you want the strongest
possible version for a specific model (e.g. you've decided to ship
on Claude Sonnet 4.5 and want it tuned for Claude's strengths).
- Click the floating Optimize button (bottom-right of the
editor when there's content + at least one prior interaction).
- Side sheet opens, split vertically: current prompt on the left
(read-only), controls on the right.
- Set Mode to Optimize for one model.
- Pick the Target model.
- Pick Optimize for weights — Accuracy / Cost / Latency /
Brevity / Faithfulness (chips, multi-select).
- Pick Baseline scope — last N runs / last week / specific
scenario.
- Click Generate suggestions.
Result view shows:
- Diff of original vs suggested (color-coded green/red).
- Per-rule projected delta ("Accuracy +12%, Cost −8%").
- Collapsible "Why this works" rationale.
- Three actions: Apply all, Apply selected hunks, Discard.
📸 Screenshot 16 — Optimize sheet result view
Capture: the Optimize side sheet open, with the diff visible
(green-and-red lines), the projected-delta chips at the top
("Accuracy +12%, Cost −8%"), the "Why this works" rationale
expanded, and the three apply/discard buttons at the bottom.
6.2 Optimize for cohort — one prompt that runs cleanly across providers
When to use: you're running a comparison batch across Claude
- GPT + Gemini and want the prompt to be a fair test — no
Claude-leaning XML, no GPT-leaning JSON-schema, just a
provider-agnostic prompt that all three can interpret reasonably.
- In the Optimize sheet, switch Mode to Optimize for
cohort.
- The target-model dropdown disappears; the current cohort is
used.
- Generate suggestions returns one unified prompt + optional
perModelNotes[] that warn you about model-specific
interpretations to watch for.
📸 Screenshot 17 — Optimize-for-cohort result with perModelNotes
Capture: the Optimize sheet in cohort mode, showing the unified
prompt diff and the perModelNotes panel at the bottom with one
note per cohort model ("Claude may be too verbose unless capped",
"GPT will follow the schema strictly", etc.).
6.3 Refine — surgical amendment
When to use: the prompt is 95% right, you just need to fix
one specific thing. "Still missing the article date in the
output." / "The SEO keywords aren't well incorporated."
- Optimize sheet → Mode → Refine.
- Type the issue into What needs to change as a free-form
note.
- Generate suggestion returns the smallest possible edit
that addresses the note, preserving everything else.
The diff is usually a few lines added or rephrased, not a full
rewrite. Use this for nitpicks instead of full Optimize when
you're afraid the assistant will throw out something you like.
📸 Screenshot 18 — Refine mode
Capture: the Optimize sheet in Refine mode, the "What needs to
change" textarea filled with a real note, and the result diff
showing 2-3 line changes only (in contrast to the full-rewrite
diff in earlier screenshots).
6.4 Translate — switch provider syntax
When to use: you authored a prompt for Claude using XML tags,
then added GPT-4o to the cohort, and the GPT result is mediocre
because the XML tags are noise to it.
A subtle non-blocking banner appears above the editor: "This
prompt uses Claude XML syntax. Translate it to GPT-4o style?"
Three actions: Translate / Keep as-is / Don't suggest
again.
Translate generates per-provider variants for multi-provider
cohorts so you can have one prompt → multiple syntactic forms,
without changing intent.
📸 Screenshot 19 — Translate banner above the editor
Capture: the Prompt Studio main view with the translate banner
visible above the editor (purple/blue accent), the three action
buttons clearly readable. The editor below should show the
XML-tagged prompt that triggered the suggestion.
6.5 Inline coach hints
When to use: an eval rule failed, or cost / latency exceeded
your stated constraints. The Lab Assistant proactively surfaces
suggestions tied to the specific failure.
A small 💡 Lab Assistant has 2 suggestions badge appears
inside the result card. Click to expand into a coach panel.
Each suggestion is a discrete card with a one-line title,
rationale, and three actions: Apply to prompt, Show me the
diff, Dismiss (with Dismiss permanently option for
noisy hints).
📸 Screenshot 20 — Coach panel expanded
Capture: a result card with the coach panel expanded
underneath, showing 2 suggestion cards. The triggering eval
failure badge ("Output too long — caps at 200 tokens") should be
visible at the top of the result card so the cause-and-effect
reads clearly.
6.6 Explain this run
When to use: a model returned something weird and you want a
plain-English explanation before you start guessing.
Click the Explain icon on a result card. Modal opens showing:
- What happened — concrete observation about the output.
- Why — model-aware reasoning for the behaviour.
- Suggested fix — a concrete prompt edit, one-click apply.
Example: "The model returned 3 bullets instead of 5 because
the prompt asks for 'a few' which Claude interpreted
conservatively. Suggested fix: replace 'a few' with 'exactly
5'."
📸 Screenshot 21 — Explain modal
Capture: the Explain modal open over the studio, with all three
sections visible (What happened / Why / Suggested fix). Show the
"Apply this fix" button at the bottom and the thumbs-up/down
rating in the corner.