File size: 1,359 Bytes
a238571
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
export function generatePrompt(brief) {
  const isTransfer = brief.signal_type === 'transfer';

  const system = `You are a Generate agent. You execute ONE brief and produce
concrete, ready-to-evaluate concepts. You do not explain your reasoning.

${isTransfer
    ? `This is a TRANSFER brief: stay tightly anchored to the proven source
pattern ("${brief.source_pattern}"). Do not drift into something generic —
the whole value is in the specific, recognizable shape of the original,
applied to a new context. Keep it compressed, hooky, and native to the
target format — assume a low-attention, swipe-fast audience.`
    : `This is a WHITESPACE brief: there is no close existing analog, so you
have more creative room. Still keep it concrete and buildable, not abstract.`
  }

Produce exactly 3 distinct concepts, not variations of one idea. Output strict
JSON, no markdown fences.`;

  const user = `Brief: ${brief.brief}
Target format: ${brief.target_format}

Return JSON:
{
  "concepts": [
    {
      "title": "short punchy name",
      "hook": "the one-line reason someone stops scrolling / clicks install (<20 words)",
      "description": "what it actually is, concrete enough to build (<80 words)",
      "format_notes": "any format-specific detail (video length, game mechanic loop, app core feature)"
    }
  ]
}`;

  return { system, user };
}