Flow Design Patterns
Every effective flow falls into one of four patterns. Each pattern has distinct characteristics — input/output relationship, ideal temperature range, preferred output action, and preview mode recommendation. Matching your flow to the right pattern produces more consistent results with less iteration.
Transform Pattern
Section titled “Transform Pattern”Input → modified output. The input text goes in, a rewritten version comes out. The meaning is preserved; the form changes.
Examples: Rewrite concisely, fix grammar, change tone, translate, simplify language, format as bullet points.
Characteristics:
- Input and output are the same content in different forms.
- Output length is typically close to input length (within 50%).
- The flow should not add information not present in the input.
Configuration:
| Setting | Recommendation |
|---|---|
| Temperature | 0.3 - 0.5. Low enough for consistency, high enough for natural phrasing. Grammar fixes use 0.0. |
| Output action | paste (replace the original) or insertAfter (keep original, add transformed version below). |
| Preview mode | diff — shows exactly what changed between input and output. Ideal for verifying transforms preserve meaning. |
| System prompt tip | Include “Return only the modified text” to prevent the model from adding explanations, preambles, or commentary. |
System prompt structure:
Rewrite the following text to [transformation goal].Preserve [what to keep: meaning, tone, structure, factual content].Do not [constraints: add new information, change names, alter formatting].Return only the modified text.Analyze Pattern
Section titled “Analyze Pattern”Input → structured analysis. The input goes in, a structured assessment comes out. The output is a different kind of content than the input — commentary, findings, or evaluation rather than modified text.
Examples: Explain code, find bugs, security audit, performance review, fact check, literary analysis.
Characteristics:
- Output is longer than input — the analysis adds context, reasoning, and recommendations.
- Output has a defined structure (sections, severity levels, numbered findings).
- The flow should be comprehensive — missing an issue is worse than verbose output.
Configuration:
| Setting | Recommendation |
|---|---|
| Temperature | 0.0 - 0.3. Analysis demands accuracy over creativity. Security audits and bug detection use 0.0. |
| Output action | copy (paste the analysis where you need it) or openInChat (iterate on findings, ask follow-up questions). |
| Preview mode | preview — review the analysis before acting on it. Analysis flows benefit from a verification step since the output often drives decisions. |
| System prompt tip | Define the output structure explicitly: “For each finding, report: (1) location, (2) issue, (3) severity, (4) recommendation.” |
System prompt structure:
Analyze the following [input type] for [analysis goal].Check for: [specific items to evaluate].For each finding, report: 1. [Field 1] 2. [Field 2] 3. [Field 3]If no issues are found, state that explicitly.Generate Pattern
Section titled “Generate Pattern”Context → new content. A brief, notes, or topic description goes in; fully-formed new content comes out. The output is substantially different from and longer than the input.
Examples: Blog outline, email draft, meeting notes to summary, social media post, documentation from code, test cases from function signatures.
Characteristics:
- Output is 2-10x longer than input.
- The model adds structure, phrasing, and creative choices not present in the input.
- Multiple valid outputs exist for the same input — generation is inherently variable.
Configuration:
| Setting | Recommendation |
|---|---|
| Temperature | 0.5 - 0.8. Generation needs room for creative phrasing and structural choices. Lower (0.5) for professional content; higher (0.8) for creative content. |
| Output action | openInChat (iterate on the draft, request revisions) or copy (use the generated content elsewhere). |
| Preview mode | preview — generated content varies between executions. Preview lets you re-run if the first result does not match your expectations. |
| System prompt tip | Specify the target length, format, and audience. “Write a 200-word email for a technical audience” produces more consistent results than “Draft an email.” |
System prompt structure:
Generate [content type] from the following [input type].Target audience: [who will read this].Length: [specific word count or range].Format: [markdown, plain text, bullet points, sections with headers].Tone: [formal, casual, technical, friendly].Include: [specific elements to incorporate].Convert Pattern
Section titled “Convert Pattern”Format A → Format B. The content is identical; the encoding changes. This is the most mechanical pattern — the model acts as a translator between formats or languages.
Examples: Markdown to HTML, Python to JavaScript, JSON to YAML, CSV to Markdown table, SQL to ORM syntax, camelCase to snake_case.
Characteristics:
- Input and output represent the same data or logic in different formats.
- There is exactly one correct output for each input (or very close to it).
- The flow should not interpret, summarize, or add to the content.
Configuration:
| Setting | Recommendation |
|---|---|
| Temperature | 0.0. Conversion is deterministic — there is one correct answer. Any randomness introduces errors. |
| Output action | paste (replace the original format with the converted version) or copy (keep the original, use the converted version elsewhere). |
| Preview mode | diff for text-to-text conversions (see format changes). none for well-tested, trusted conversions you run frequently. |
| System prompt tip | Specify both source and target formats explicitly. Include “Return only the converted output” to prevent explanations. |
System prompt structure:
Convert the following [source format] to [target format].Use idiomatic [target format] conventions.Preserve all content, structure, and semantics.Do not add comments, explanations, or annotations.Return only the converted output.Temperature Quick Reference
Section titled “Temperature Quick Reference”| Pattern | Range | Rationale |
|---|---|---|
| Transform | 0.3 - 0.5 | Consistent rewording without robotic repetition |
| Analyze | 0.0 - 0.3 | Accuracy over creativity |
| Generate | 0.5 - 0.8 | Room for creative structure and phrasing |
| Convert | 0.0 | Deterministic format translation |
Choosing the Right Pattern
Section titled “Choosing the Right Pattern”Ask two questions about your flow:
-
Does the output contain the same content as the input?
- Yes, same content in different form → Transform
- Yes, same content in different format → Convert
- No, the output is new content → Generate
- No, the output is commentary about the input → Analyze
-
Is there one correct output or many valid outputs?
- One correct output → Convert (temperature 0.0)
- A narrow range of correct outputs → Transform or Analyze (temperature 0.0 - 0.5)
- Many valid outputs → Generate (temperature 0.5 - 0.8)
When a flow does not fit cleanly into one pattern, default to the pattern that matches the output action you need. If you are pasting back into the source app, lean toward Transform or Convert settings. If you are opening in chat for iteration, lean toward Generate or Analyze settings.