Context · Objective · Style · Tone · Audience · Response. The all-purpose framework when most fields are filled in.
Docs · Prompt Studio
Prompt Studio — the structured way to ask AI for what you actually want.
If you've ever asked ChatGPT for help and gotten a generic answer back, it's usually because the request was missing the context that would have made it specific. Prompt Studio is a structured form that captures that context for you — the role the AI should play, the audience for the output, the format, the constraints, the examples — and uses it to write a high-quality prompt in one of twenty proven prompt-engineering frameworks. The result is output that's reliable and repeatable, not a different answer every time.
The workflow, step by step#
The form has roughly a dozen fields. You don't have to fill all of them — only the Goal is required — but every additional field reduces a degree of ambiguity for the AI. Here's what each step does and why it matters.
- 01
1. Write the goal in one sentence
The Goal field is the brief — the one thing the AI needs to produce. The form requires at least ten characters; we recommend writing it as a complete sentence with a clear verb ("write a cold-outreach email for…", "summarise the attached report into a one-page executive memo for…"). Vague goals produce vague output no matter how many other fields you fill in.
- 02
2. Add the context that's normally implicit
Background, Role, Audience, Success Criteria, and Reference Material are the fields where you say everything you would normally say out loud to a colleague but skip when writing to AI. Who is the AI playing? Who reads the output? What does "good" look like for this task? Are there primary sources to anchor the answer? Empty fields are skipped entirely — the system does not pad them with filler.
- 03
3. Set the output controls
Format (Markdown, JSON, code, plain text, HTML, XML, CSV, step-by-step), Tone (technical, conversational, persuasive, academic, and others), Output Length (concise → comprehensive), Complexity (reading level), Priority (speed, balanced, quality, creative), and Language (twelve including German, French, Spanish, Russian, Japanese, Chinese). Two people running the same task should get comparable output if they pick the same controls.
- 04
4. Pick a model
All plans get the seven free OpenRouter models: Trinity Large, Llama 3.3 70B, Mistral Small 3.1, Qwen3 80B, GLM-4.5 Air, Step 3.5 Flash, LFM 2.5 Thinking. Premium models are an organization-plan unlock: Pro adds the budget tier (GPT-4o-mini, Claude Haiku 4.5, Gemini Flash 2.0); Team adds the full catalogue (GPT-5, GPT-5-mini, GPT-4o, Claude Sonnet 4.5, Claude Opus 4.5, Gemini Pro 2.0, Grok-3, Grok-4, Llama 3.1 405B) plus bring-your-own-provider-key. Personal plans (Individual, Plus) run on the free models only — premium is intentionally an org upsell. The dropdown only shows models your plan can actually call; picking one outside your plan returns a clear upgrade message rather than a silent fallback.
- 05
5. Stream the refined prompt
When you click Generate, the form is sent to /api/refine. The system writes a meta-prompt that selects the best of 20 prompt-engineering frameworks for your inputs and instructs the model to write its output in that framework's section names. The result streams back word by word using Server-Sent Events — you see structure forming live and can copy as soon as it stabilises rather than waiting for the full response.
- 06
6. Save, restore, iterate
Every run is saved to your workspace's prompt history. The history panel lets you re-open the inputs of any past run with a single click, edit one or two fields, and re-generate — useful when you have a template that mostly works and you want to swap an audience or a constraint. The Previous Prompt field is the iteration mode: paste the output you got last time and the system will improve it rather than starting over.
The 20 prompt-engineering frameworks#
A prompt-engineering framework is a recipe — a fixed set of sections (Role / Task / Format, for example) that has been shown to produce reliable output for a particular kind of task. Prompt Studio's meta-prompt scores all twenty against your inputs and picks the winner; the refined prompt you see is structured in that framework's sections, not in a generic format. The first line of every output names the framework that was chosen and the signals that drove that choice, so you can read why.
Role · Task · Format. The minimal one when you just need a clear deliverable, fast.
Pattern-matching via examples. Picked automatically when you fill in the Examples field — the AI mimics the pattern.
Role · Input · Steps · Expectation. Best for multi-step workflows that need to happen in order.
Task · Request · Action · Context · Example. Best for highly precise technical instructions.
Context · Role · Explicit instructions · Audience · Tone · Execution. Best when output is meant to be original and brand-shaped.
Before · After · Bridge. Best for transformation narratives and sales copy.
Problem · Action · Information · Next steps. Best for support replies and troubleshooting docs.
Goal · Request · Action · Details · Examples. Best for tutorials and learning materials.
Situation · Complication · Objective · Plan · Evaluation. Best for business analysis and consulting deliverables.
Situation · Task · Action · Result. Best for documenting achievements (resumes, performance reviews, case studies).
Situation · Obstacle · Action · Result. Best for narrative storytelling with a clear arc.
Role · Objective · Scenario · Expected solution · Steps. Best for scenario planning and risk assessment.
Who · What · Where · When · Why · How. Best for research briefs and journalistic completeness.
Point · Reason · Example · Point. Best for logical argumentation and persuasion.
Task · Action · Goal. Best when motivation matters more than tone or audience.
Persona · Request · Output · Modifier · Purpose · Tone. Best for brand-specific content with a strong voice.
Expectation · Role · Action. Best for one-shot expert consultations.
Action · Purpose · Expectation. Best for delegating a task to an automated agent.
Context · Action · Result · Example. Best for debugging and conflict-resolution writing.
The picker actively guards against the three frameworks that show up disproportionately in AI training data (CO-STAR, RTF, FEW-SHOT). If one of those three would win on score, the system is required to explicitly check the ten under-represented frameworks first and justify why none of them is a better fit. This is what stops you getting a generic CO-STAR-shaped prompt for every task.
What happens on the server when you click Generate#
Here's the full server-side path your form takes between the moment you click Generate and the moment the first word appears on screen. Nothing surprising — but worth knowing if you're vetting the platform.
The /api/refine route refuses to call any AI model until your input passes basic sanity checks: the Goal field must exist and be at least ten characters. Invalid input returns a clear error before any provider is touched.
/api/refine reads your Clerk session and rejects the request with a 401 Unauthorized if it can't find one. Anonymous users cannot generate prompts — the endpoint is not browsable from outside the dashboard.
Your selected model is checked against your plan's allowlist before the request reaches OpenRouter. If you pick a model your plan doesn't include, you get a clear "upgrade" message back rather than a silent fallback to a different model. Free models always work for every signed-in user.
The Priority control changes the randomness setting (temperature) of the model: Speed and Quality use lower values for more predictable output, Creative uses a higher value for more variation, Balanced sits between them. You don't have to think about it — the form does.
The output is sent back as Server-Sent Events — a streaming format where each chunk is delivered the moment the model produces it. This is why the refined prompt appears word-by-word instead of dropping in all at once.
Saving a prompt writes to the prompt_history table tagged with your organization ID (or your user ID if you don't use an organization). The list, get, and delete endpoints all filter on that tag — you cannot read or modify another workspace's prompts even if you know their IDs.
Rate limit, timeout, and provider authentication errors are translated into human-readable messages with the appropriate HTTP status code (429, 504, 503). Provider error bodies and secrets never leak to the browser.
How to get good output out of any model#
Some practical rules that hold regardless of which model you pick. None of these are model-specific tricks — they work because they reduce ambiguity, which is the root cause of most "bad AI output."
- 01Treat the Goal field as your one-sentence brief. If you cannot summarise the task in one sentence, the AI almost certainly will not deliver it in one prompt — break it into smaller goals and run them separately.
- 02Use Role and Audience together. "Senior backend engineer writing for non-technical executives" gives the AI a position and a target — far more useful than "engineer" or "executives" alone.
- 03Constraints are most useful as negative rules. "Never use passive voice," "never recommend a competitor," "never invent statistics" are more effective than positive ones because the model has fewer ways to misread them.
- 04Examples are the highest-leverage field in the form. Two good before/after examples beat a paragraph of explanation almost every time — they show, not tell.
- 05Use the Previous Prompt field to iterate. Paste the output from last time, add new constraints in the relevant fields, and re-generate. The system keeps the framework that worked and refines its sections rather than rolling the dice on a different one.
- 06Switch models per task — Trinity Large is a strong all-rounder, Step 3.5 Flash is fastest for iteration, Llama 3.3 70B reasons well over long inputs. The premium models on paid plans handle complex multi-step prompts more reliably.
- 07Save the prompts that work as your team's templates. Recurring tasks (weekly reports, account outreach, ticket replies) stop being one-off prompts and become reusable workflows that anyone in your workspace can re-run with different inputs.
API reference (for developers)#
If you want to call Prompt Studio programmatically — from a build script, a Make.com scenario, or your own product — these are the endpoints involved. All four require an authenticated Clerk session, and all four scope every operation to your active workspace (your organization if you've selected one, otherwise your personal account).
| Method | Path | Purpose |
|---|---|---|
| POST | /api/refine | Sends your form to the AI and streams the refined prompt back. Requires a Clerk session. |
| GET | /api/prompts/history | Returns the prompts saved in your workspace, newest first. Paginated 100 per page. |
| POST | /api/prompts/history | Saves a generated prompt to your workspace. Body: { goal, result, inputs }. |
| DELETE | /api/prompts/history/[id] | Deletes one saved prompt by ID. Returns 404 if the prompt belongs to another workspace. |
REST API access is included from the Team plan and above. On Pro you can still call these from inside the dashboard but not from external scripts. See Pricing for the full breakdown.