hlassiege/darylpublic Fork
⑂ 50c9d0c
Commits
⬇ Clone ▾
git clone https://git.rickub.com/hlassiege/daryl.git
git clone ssh://git@rickub.com/hlassiege/daryl.git

Host key fingerprint (ed25519): SHA256:iycHnxEyq0Q7uyVpB7JlznP0G7JrTPXLYRcAU5CSLhc — verify it before your first connect.

Download ZIP

feat(titles): pull on fear, desire and curiosity triggers

Add a fear lever (mistakes, inverted formats, vague danger) and tag each title with the triggers it uses. The top 3 now opposes triggers so the A/B test shows which drive moves the audience.
hlassiege committed 2026-10-13T11:38:36+02:00 Browse files
50c9d0c parent: c9cb501
modified backend/studio/modules/projects/prompts.py +2 -1
@@ -114,7 +114,8 @@ TITLES_SCHEMA = {
114114 "pattern": {"type": "string",
115115 "description": "Le motif ou la formule du skill qu'il applique, en deux ou "
116116 "trois mots."},
117- "why": {"type": "string", "description": "Une phrase : pourquoi ce public cliquerait."},
117+ "why": {"type": "string", "description": "Une phrase : le ou les déclencheurs qu'il active (peur, "
118+ "désir, curiosité) et pourquoi ce public cliquerait."},
118119 "top": {"type": "boolean", "description": f"Un de tes {MAX_TITLES} titres conseillés."},
119120 },
120121 }},
@@ -114,7 +114,8 @@ TITLES_SCHEMA = {
114 "pattern": {"type": "string",114 "pattern": {"type": "string",
115 "description": "Le motif ou la formule du skill qu'il applique, en deux ou "115 "description": "Le motif ou la formule du skill qu'il applique, en deux ou "
116 "trois mots."},116 "trois mots."},
117- "why": {"type": "string", "description": "Une phrase : pourquoi ce public cliquerait."},117+ "why": {"type": "string", "description": "Une phrase : le ou les déclencheurs qu'il active (peur, "
118+ "désir, curiosité) et pourquoi ce public cliquerait."},
118 "top": {"type": "boolean", "description": f"Un de tes {MAX_TITLES} titres conseillés."},119 "top": {"type": "boolean", "description": f"Un de tes {MAX_TITLES} titres conseillés."},
119 },120 },
120 }},121 }},
modified skills/youtube-titles/SKILL.md +44 -5
@@ -1,6 +1,6 @@
11 ---
22 name: youtube-titles
3-description: Generate 30 YouTube titles that earn clicks without lying — 20 built on three structural formulas (bold statement, how-to, time frame) with psychological levers, plus 10 free titles across proven click patterns (curiosity gap, outcome, contrarian, numbers, comparison, story, how-to). Every title is built from the concrete facts of the video and comes with a rationale. Use when the user wants YouTube titles, title ideas, or title variants to A/B test.
3+description: Generate 30 YouTube titles that earn clicks without lying — each one pulling on fear, desire or curiosity, ideally two of them — 20 built on three structural formulas (bold statement, how-to, time frame) with psychological levers, plus 10 free titles across proven click patterns (curiosity gap, outcome, contrarian, numbers, comparison, story, how-to, mistake). Every title is built from the concrete facts of the video and comes with a rationale. Use when the user wants YouTube titles, title ideas, or title variants to A/B test.
44 ---
55
66 # YouTube Title Generator
@@ -13,6 +13,36 @@ You generate YouTube titles that earn clicks without resorting to lies. Every ti
1313
1414 You produce a wide range (30 titles), from safe to polarizing, so the author can see several kinds of promises before choosing.
1515
16+## The Three Triggers
17+
18+Every click comes from one of three drives. Each title pulls on at least one; the strongest stack two, sometimes all three.
19+
20+### Fear
21+The viewer worries they're missing something, or already doing something wrong.
22+- **Start from the audience's real worry**: falling behind, wasting months on the wrong skill, the "good practice" that secretly hurts them.
23+- **Flip tips into mistakes**: "5 Ways to Write Better Prompts" → "5 Prompt Mistakes Wrecking Your Output".
24+- **Invert a proven format**: "How to Ship Faster" → "The Fastest Way to Wreck Your Codebase".
25+- **Tease the danger, don't name it**: "The Setting That Leaks Your API Keys" makes the viewer check; naming the setting answers the question.
26+
27+Only a fear the audience already has, and one the video actually addresses. Don't overdo it: one worry per title, no doom.
28+
29+### Desire
30+The title promises a transformation the viewer wants.
31+- **Sell the result, not the process**: the deployed app, the hours saved, the job — not the tutorial steps.
32+- The video must deliver the full result it promises, or the click turns into a thumbs-down.
33+
34+### Curiosity
35+The title opens a question only the video can answer.
36+- **Ask what nobody thought to ask**: "How Much Does a Claude Code Session Really Cost?"
37+- **Build in contrast**: a $5 setup next to a $500 one, 1 prompt next to 100.
38+- **Go novel**: something almost nobody would try ("I Let AI Run My Side Project for 30 Days").
39+- **Use "actually" or "really"**: "Do AI Agents Actually Save Time?" implies the answer is surprising.
40+
41+### Stacking
42+- Desire + curiosity: "Get Your First 1,000 Users (Nobody Teaches This Part)"
43+- Fear + curiosity: "The Copilot Habit Slowing You Down (Without You Noticing)"
44+- Fear + desire: "Stop Learning New Frameworks (Learn This Instead)"
45+
1646 ## What You Need
1747
1848 Ask the user for:
@@ -33,6 +63,7 @@ Before writing anything, list what the video actually contains.
3363 | Transformation | What changes for the viewer: skills, career, income, time, way of working? |
3464 | Big idea | The one claim from the video people would repeat to a friend |
3565 | Audience | Who gains, and what they want or fear |
66+| Risk | The mistake, waste or danger the video helps the viewer avoid — only if it really does |
3667 | Contrast | Where a modest effort leads to an outsized result, or where the advice goes against the grain |
3768
3869 **The facts**
@@ -67,7 +98,7 @@ A concrete amount of time or effort, then where to put it.
6798 - "2 Hours a Day for 6 Months (The Skills Worth Learning Now)"
6899 - "From Screenshot to Working Page in 18 Minutes (Full Build)"
69100
70-Spread these levers across the 20 titles, each in several titles:
101+Across the 20 titles, all three triggers appear several times each, and at least half the titles stack two. Spread these levers too, each in several titles:
71102
72103 | Lever | How | Wording |
73104 | --- | --- | --- |
@@ -75,6 +106,7 @@ Spread these levers across the 20 titles, each in several titles:
75106 | Transformation | A visible change in the viewer | "change your career", "you won't work the same way" |
76107 | Insider knowledge | What most people miss | "what nobody tells you", "most people ignore this" |
77108 | Status | Getting ahead | "ahead of 99 % of developers", "irreplaceable" |
109+| Mistake / risk | What the viewer may be getting wrong | "the mistake killing your…", "before it's too late", "you're doing it wrong" |
78110
79111 And these contrasts, in several titles:
80112 - **Small input, big output:** "2 hours a day" → "a new career", "one screenshot" → "a full app".
@@ -83,7 +115,7 @@ And these contrasts, in several titles:
83115
84116 ## Step 3: 10 Free Titles
85117
86-Ten more that leave the formulas aside: the most clickable titles you can find for this video, noticeably different from the first twenty. Draw on these patterns, at least five of them:
118+Ten more that leave the formulas aside: the most clickable titles you can find for this video, noticeably different from the first twenty. Draw on these patterns, at least five of them, and cover all three triggers:
87119
88120 ### 1. Curiosity Gap
89121 Create an information gap the viewer needs to close. Say enough to intrigue, not enough to satisfy.
@@ -120,6 +152,11 @@ Direct value promise. Works best when the outcome is specific.
120152 - "How to [Achieve Specific Result] (Step by Step)"
121153 - "The Complete Guide to [X] for [Audience]"
122154
155+### 8. Mistake / Warning
156+The fear trigger on its own: what the viewer is getting wrong, without saying exactly what.
157+- "[Number] [X] Mistakes Killing Your [Outcome]"
158+- "You're Using [Tool] Wrong"
159+
123160 For tech, tutorial and tool videos, the content type points to the strongest pattern:
124161
125162 | The video is… | Lead with |
@@ -158,12 +195,13 @@ Present each title with:
158195 ```
159196 **[Title]**
160197 Pattern: [which formula or pattern]
161-Why it works: [one sentence — what makes this clickable for the target audience]
198+Triggers: [fear, desire and/or curiosity]
199+Why it works: [one sentence — which trigger it pulls on and why this audience feels it]
162200 ```
163201
164202 ## After the List
165203
166-Recommend your **top 3 picks** and explain why. Pick three titles that make three different promises (for example one statement, one how-to, one free title), so an A/B test tells the author which kind of promise their audience prefers. Consider:
204+Recommend your **top 3 picks** and explain why. Pick three titles led by three different triggers (one fear, one desire, one curiosity), so an A/B test tells the author which drive moves their audience. Within that, prefer titles that stack a second trigger. Consider:
167205 - Which ones have the strongest curiosity gap?
168206 - Which ones most clearly signal value to the target audience?
169207 - Which ones would stand out in a feed full of similar content?
@@ -173,6 +211,7 @@ If the user has existing videos (check CLAUDE.md or ask), factor in what title s
173211 ## Rules
174212
175213 - **High conviction, never a lie.** Be bold, take sides, be polarizing when it fits — but every title is a promise the video actually keeps.
214+- **Real fears only.** A fear title names a worry the audience already has and the video resolves; never invent a threat to scare people into clicking.
176215 - **30 distinct titles.** No two titles that only differ by a word; no formula twice in a row.
177216 - **The core idea stays.** Every title is about this video, not a more clickable neighbouring topic.
178217 - Every title under 60 characters when possible (displays fully on mobile), 70 at most
@@ -1,6 +1,6 @@
1 ---1 ---
2 name: youtube-titles2 name: youtube-titles
3-description: Generate 30 YouTube titles that earn clicks without lying — 20 built on three structural formulas (bold statement, how-to, time frame) with psychological levers, plus 10 free titles across proven click patterns (curiosity gap, outcome, contrarian, numbers, comparison, story, how-to). Every title is built from the concrete facts of the video and comes with a rationale. Use when the user wants YouTube titles, title ideas, or title variants to A/B test.3+description: Generate 30 YouTube titles that earn clicks without lying — each one pulling on fear, desire or curiosity, ideally two of them — 20 built on three structural formulas (bold statement, how-to, time frame) with psychological levers, plus 10 free titles across proven click patterns (curiosity gap, outcome, contrarian, numbers, comparison, story, how-to, mistake). Every title is built from the concrete facts of the video and comes with a rationale. Use when the user wants YouTube titles, title ideas, or title variants to A/B test.
4 ---4 ---
5 5
6 # YouTube Title Generator6 # YouTube Title Generator
@@ -13,6 +13,36 @@ You generate YouTube titles that earn clicks without resorting to lies. Every ti
13 13
14 You produce a wide range (30 titles), from safe to polarizing, so the author can see several kinds of promises before choosing.14 You produce a wide range (30 titles), from safe to polarizing, so the author can see several kinds of promises before choosing.
15 15
16+## The Three Triggers
17+
18+Every click comes from one of three drives. Each title pulls on at least one; the strongest stack two, sometimes all three.
19+
20+### Fear
21+The viewer worries they're missing something, or already doing something wrong.
22+- **Start from the audience's real worry**: falling behind, wasting months on the wrong skill, the "good practice" that secretly hurts them.
23+- **Flip tips into mistakes**: "5 Ways to Write Better Prompts" → "5 Prompt Mistakes Wrecking Your Output".
24+- **Invert a proven format**: "How to Ship Faster" → "The Fastest Way to Wreck Your Codebase".
25+- **Tease the danger, don't name it**: "The Setting That Leaks Your API Keys" makes the viewer check; naming the setting answers the question.
26+
27+Only a fear the audience already has, and one the video actually addresses. Don't overdo it: one worry per title, no doom.
28+
29+### Desire
30+The title promises a transformation the viewer wants.
31+- **Sell the result, not the process**: the deployed app, the hours saved, the job — not the tutorial steps.
32+- The video must deliver the full result it promises, or the click turns into a thumbs-down.
33+
34+### Curiosity
35+The title opens a question only the video can answer.
36+- **Ask what nobody thought to ask**: "How Much Does a Claude Code Session Really Cost?"
37+- **Build in contrast**: a $5 setup next to a $500 one, 1 prompt next to 100.
38+- **Go novel**: something almost nobody would try ("I Let AI Run My Side Project for 30 Days").
39+- **Use "actually" or "really"**: "Do AI Agents Actually Save Time?" implies the answer is surprising.
40+
41+### Stacking
42+- Desire + curiosity: "Get Your First 1,000 Users (Nobody Teaches This Part)"
43+- Fear + curiosity: "The Copilot Habit Slowing You Down (Without You Noticing)"
44+- Fear + desire: "Stop Learning New Frameworks (Learn This Instead)"
45+
16 ## What You Need46 ## What You Need
17 47
18 Ask the user for:48 Ask the user for:
@@ -33,6 +63,7 @@ Before writing anything, list what the video actually contains.
33 | Transformation | What changes for the viewer: skills, career, income, time, way of working? |63 | Transformation | What changes for the viewer: skills, career, income, time, way of working? |
34 | Big idea | The one claim from the video people would repeat to a friend |64 | Big idea | The one claim from the video people would repeat to a friend |
35 | Audience | Who gains, and what they want or fear |65 | Audience | Who gains, and what they want or fear |
66+| Risk | The mistake, waste or danger the video helps the viewer avoid — only if it really does |
36 | Contrast | Where a modest effort leads to an outsized result, or where the advice goes against the grain |67 | Contrast | Where a modest effort leads to an outsized result, or where the advice goes against the grain |
37 68
38 **The facts**69 **The facts**
@@ -67,7 +98,7 @@ A concrete amount of time or effort, then where to put it.
67 - "2 Hours a Day for 6 Months (The Skills Worth Learning Now)"98 - "2 Hours a Day for 6 Months (The Skills Worth Learning Now)"
68 - "From Screenshot to Working Page in 18 Minutes (Full Build)"99 - "From Screenshot to Working Page in 18 Minutes (Full Build)"
69 100
70-Spread these levers across the 20 titles, each in several titles:101+Across the 20 titles, all three triggers appear several times each, and at least half the titles stack two. Spread these levers too, each in several titles:
71 102
72 | Lever | How | Wording |103 | Lever | How | Wording |
73 | --- | --- | --- |104 | --- | --- | --- |
@@ -75,6 +106,7 @@ Spread these levers across the 20 titles, each in several titles:
75 | Transformation | A visible change in the viewer | "change your career", "you won't work the same way" |106 | Transformation | A visible change in the viewer | "change your career", "you won't work the same way" |
76 | Insider knowledge | What most people miss | "what nobody tells you", "most people ignore this" |107 | Insider knowledge | What most people miss | "what nobody tells you", "most people ignore this" |
77 | Status | Getting ahead | "ahead of 99 % of developers", "irreplaceable" |108 | Status | Getting ahead | "ahead of 99 % of developers", "irreplaceable" |
109+| Mistake / risk | What the viewer may be getting wrong | "the mistake killing your…", "before it's too late", "you're doing it wrong" |
78 110
79 And these contrasts, in several titles:111 And these contrasts, in several titles:
80 - **Small input, big output:** "2 hours a day" → "a new career", "one screenshot" → "a full app".112 - **Small input, big output:** "2 hours a day" → "a new career", "one screenshot" → "a full app".
@@ -83,7 +115,7 @@ And these contrasts, in several titles:
83 115
84 ## Step 3: 10 Free Titles116 ## Step 3: 10 Free Titles
85 117
86-Ten more that leave the formulas aside: the most clickable titles you can find for this video, noticeably different from the first twenty. Draw on these patterns, at least five of them:118+Ten more that leave the formulas aside: the most clickable titles you can find for this video, noticeably different from the first twenty. Draw on these patterns, at least five of them, and cover all three triggers:
87 119
88 ### 1. Curiosity Gap120 ### 1. Curiosity Gap
89 Create an information gap the viewer needs to close. Say enough to intrigue, not enough to satisfy.121 Create an information gap the viewer needs to close. Say enough to intrigue, not enough to satisfy.
@@ -120,6 +152,11 @@ Direct value promise. Works best when the outcome is specific.
120 - "How to [Achieve Specific Result] (Step by Step)"152 - "How to [Achieve Specific Result] (Step by Step)"
121 - "The Complete Guide to [X] for [Audience]"153 - "The Complete Guide to [X] for [Audience]"
122 154
155+### 8. Mistake / Warning
156+The fear trigger on its own: what the viewer is getting wrong, without saying exactly what.
157+- "[Number] [X] Mistakes Killing Your [Outcome]"
158+- "You're Using [Tool] Wrong"
159+
123 For tech, tutorial and tool videos, the content type points to the strongest pattern:160 For tech, tutorial and tool videos, the content type points to the strongest pattern:
124 161
125 | The video is… | Lead with |162 | The video is… | Lead with |
@@ -158,12 +195,13 @@ Present each title with:
158 ```195 ```
159 **[Title]**196 **[Title]**
160 Pattern: [which formula or pattern]197 Pattern: [which formula or pattern]
161-Why it works: [one sentence — what makes this clickable for the target audience]198+Triggers: [fear, desire and/or curiosity]
199+Why it works: [one sentence — which trigger it pulls on and why this audience feels it]
162 ```200 ```
163 201
164 ## After the List202 ## After the List
165 203
166-Recommend your **top 3 picks** and explain why. Pick three titles that make three different promises (for example one statement, one how-to, one free title), so an A/B test tells the author which kind of promise their audience prefers. Consider:204+Recommend your **top 3 picks** and explain why. Pick three titles led by three different triggers (one fear, one desire, one curiosity), so an A/B test tells the author which drive moves their audience. Within that, prefer titles that stack a second trigger. Consider:
167 - Which ones have the strongest curiosity gap?205 - Which ones have the strongest curiosity gap?
168 - Which ones most clearly signal value to the target audience?206 - Which ones most clearly signal value to the target audience?
169 - Which ones would stand out in a feed full of similar content?207 - Which ones would stand out in a feed full of similar content?
@@ -173,6 +211,7 @@ If the user has existing videos (check CLAUDE.md or ask), factor in what title s
173 ## Rules211 ## Rules
174 212
175 - **High conviction, never a lie.** Be bold, take sides, be polarizing when it fits — but every title is a promise the video actually keeps.213 - **High conviction, never a lie.** Be bold, take sides, be polarizing when it fits — but every title is a promise the video actually keeps.
214+- **Real fears only.** A fear title names a worry the audience already has and the video resolves; never invent a threat to scare people into clicking.
176 - **30 distinct titles.** No two titles that only differ by a word; no formula twice in a row.215 - **30 distinct titles.** No two titles that only differ by a word; no formula twice in a row.
177 - **The core idea stays.** Every title is about this video, not a more clickable neighbouring topic.216 - **The core idea stays.** Every title is about this video, not a more clickable neighbouring topic.
178 - Every title under 60 characters when possible (displays fully on mobile), 70 at most217 - Every title under 60 characters when possible (displays fully on mobile), 70 at most