@sellable/mcp 0.1.212 → 0.1.214

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/README.md +7 -7
  2. package/agents/post-find-leads-message-scout.md +176 -134
  3. package/dist/engage-memory.js +0 -5
  4. package/dist/identity-memory.js +0 -4
  5. package/dist/tools/engage-memory.js +2 -2
  6. package/dist/tools/leads.js +7 -3
  7. package/dist/tools/prompts.js +18 -12
  8. package/package.json +1 -1
  9. package/skills/create-campaign/SKILL.md +11 -12
  10. package/skills/create-campaign/context/learnings.md +1 -1
  11. package/skills/create-campaign/references/brief-template.md +2 -2
  12. package/skills/create-campaign-brief/references/brief-template.md +2 -2
  13. package/skills/create-campaign-brief/references/draft-lifecycle.md +1 -1
  14. package/skills/create-campaign-brief/references/examples/briefs/gelee.md +2 -2
  15. package/skills/create-campaign-brief/references/examples/briefs/superpower.md +41 -28
  16. package/skills/create-campaign-brief/references/phase75-active-runtime-message-pack.md +27 -36
  17. package/skills/create-campaign-v2/SKILL.md +16 -9
  18. package/skills/create-campaign-v2/core/auto-execute.README.md +11 -11
  19. package/skills/create-campaign-v2/core/auto-execute.yaml +4 -4
  20. package/skills/create-campaign-v2/core/flow.v2.json +1 -1
  21. package/skills/create-campaign-v2/references/ai-tells.md +54 -19
  22. package/skills/create-campaign-v2/references/approval-gate-framing.md +10 -10
  23. package/skills/create-campaign-v2/references/escalation-ladder.md +3 -3
  24. package/skills/create-campaign-v2/references/final-handoff-contract.md +3 -3
  25. package/skills/create-campaign-v2/references/gold-standard-message-examples.md +295 -226
  26. package/skills/create-campaign-v2/references/gold-standard-message-patterns.md +48 -9
  27. package/skills/create-campaign-v2/references/gold-standard-message-validation-example.md +4 -4
  28. package/skills/create-campaign-v2/references/lead-validation-preview.md +1 -1
  29. package/skills/create-campaign-v2/references/parallel-critique-protocol.md +10 -10
  30. package/skills/create-campaign-v2/references/sample-validation-loop.md +3 -3
  31. package/skills/create-campaign-v2/references/{thomas-revision-filters.md → sellable-cleanup-rules.md} +29 -19
  32. package/skills/create-campaign-v2/references/step-15-re-cascade.md +1 -1
  33. package/skills/create-campaign-v2/references/thomas-variant-selection.md +1 -1
  34. package/skills/create-campaign-v2/references/validation-criteria.md +24 -18
  35. package/skills/create-campaign-v2-tail/SKILL.md +7 -7
  36. package/skills/create-campaign-v2-validation/SKILL.md +23 -7
  37. package/skills/create-post/SKILL.md +27 -27
  38. package/skills/engage/SKILL.md +12 -12
  39. package/skills/engage/core/README.md +14 -14
  40. package/skills/find-leads/SKILL.md +1 -1
  41. package/skills/generate-messages/SKILL.md +305 -147
  42. package/skills/interview/SKILL.md +24 -24
  43. package/skills/interview/references/legacy-linkedin-interview.md +12 -12
  44. package/skills/interview/references/reference-curation.md +4 -4
  45. package/skills/interview/references/voice-capture-method.md +1 -1
  46. package/skills/load-voice/SKILL.md +21 -25
  47. package/skills/research/SKILL.md +1 -1
  48. package/skills/research/config.json +9 -0
@@ -1,149 +1,258 @@
1
1
  # Gold-Standard Message Examples
2
2
 
3
- These are the archive winners. Treat them as the **quality bar and motion
4
- reference**, not a paste source. Your job is to write a new message that could
5
- plausibly belong in this archive for the motion you're validating — not to
6
- recolor an existing one.
3
+ This is the canonical example asset for `generate-messages` and Sellable
4
+ campaign message drafting.
5
+
6
+ Use this file as the quality bar, motion reference, and runtime example set.
7
+ Do not load a separate runtime-message-pack for message drafting. Primary
8
+ runtime examples are safe default inspiration. Conditional examples are only for
9
+ matching motions.
10
+
11
+ ## Example Governance
12
+
13
+ - Primary runtime examples are the first line-level inspiration set.
14
+ - Conditional examples are only for matching campaign motions.
15
+ - CTA shapes are patterns, not full examples.
16
+ - Word-for-word preservation only applies when the archived winner is the same
17
+ company as the brief, such as Superposition drafting for Superposition.
18
+ - In every other case, match the quality bar and motion skeleton, but write fresh
19
+ sentences from the verified brief and campaign-table rows.
20
+ - Do not use examples marked acceptance-only, removed, or bad as runtime
21
+ inspiration.
22
+ - If any example conflicts with `sellable-cleanup-rules.md` or `ai-tells.md`,
23
+ the cleanup rules win.
24
+ - Before choosing any example, name the strongest true thing we can say to this
25
+ buyer: the safest compelling mechanism, proof, asset, diagnostic, offer, or
26
+ buyer outcome available from the brief and sample.
27
+ - Extract the job each gold line does before copying any shape: buyer situation,
28
+ reply reason, sender relevance, offer clarity, mechanism clarity, proof role,
29
+ CTA job, and surface traits not to copy blindly.
30
+
31
+ ## Primary Runtime Examples
32
+
33
+ Use these as the safe everyday runtime inspiration set.
34
+
35
+ ### Example 1: sellable.dev A/B Meta Demo
36
+
37
+ Use when the brief supports:
38
+
39
+ - a clear buyer signal
40
+ - a self-aware source bridge
41
+ - a product whose own workflow can be shown in the CTA
42
+ - two genuinely useful next-step options
7
43
 
8
- When to preserve word-for-word:
44
+ ```text
45
+ hey [name],
9
46
 
10
- - the archived winner is the **same company** you're drafting for (e.g.,
11
- Superposition drafting for Superposition). Keep casing, spacing, CTA shape,
12
- and proof ordering; swap only documented tokens.
47
+ saw you raise your hand for claude + gtm (creepy to reach out based on that, i know) - but this felt too on the nose to ignore.
13
48
 
14
- Every other case: match the quality bar, match the motion's skeleton (opener
15
- rhythm, proof placement, CTA tone), but write the sentences fresh from the
16
- validated brief + sample.
49
+ i'm building sellable, the only gtm platform that runs natively on claude code.
17
50
 
18
- Each example ends with a **Proof ranks used** line so retrieval can line up
19
- with the proof inventory in `gold-standard-message-patterns.md`.
51
+ we're looking for design partners - and [PERSONALIZED REASON - their team size, role, or why they're a perfect fit].
20
52
 
21
- Do not put active validation fixtures in this file as exact company-specific
22
- examples. The library should teach transferable winning motions, not leak the
23
- fixture answer into Phase 84.
53
+ two options:
24
54
 
25
- ## Example 1: Revvix / Spektion Event-Led Security
55
+ a) 15-min call - i'll show you how you could book more meetings with [THEIR ICP - who they want to reach], and if you like it we launch a pilot right there
26
56
 
27
- Use when the brief has:
57
+ b) i send you the video of me using sellable to write and send this exact message to you (yes, it's that meta)
28
58
 
29
- - a real security event
30
- - booth or logistics detail
31
- - a low-pressure coffee / demo ask
59
+ p.s. yes, this message was entirely written and sent via claude code
60
+ ```
61
+
62
+ Why it works:
32
63
 
33
- Template shape:
64
+ - the signal is real and the self-aware parenthetical lowers source risk
65
+ - the product line is short and bold
66
+ - the A/B CTA offers either a working session or a proof asset
67
+ - the AI-native tokens are intent-shaped, not generic mail-merge slots
68
+
69
+ **Proof ranks used:** rank 1 (mechanism - GTM platform running natively on
70
+ Claude Code), rank 4 (speed-to-value - launch a pilot on the call).
71
+
72
+ ### Example 2: Hey Digital Scenario + Case-Study Asset
73
+
74
+ Use when the brief supports:
75
+
76
+ - a company moment the buyer already understands
77
+ - one strong peer case study
78
+ - an asset CTA that is useful without a meeting
34
79
 
35
80
  ```text
36
- Subject: RSAC next week
81
+ Hey Sarah,
37
82
 
38
- Hey {{first_name}},
83
+ Saw Acme just closed their Series B... usually that's when the board starts asking about paid channels.
39
84
 
40
- So I noticed you'll be at RSAC and wanted to reach out before the week gets crazy.
85
+ We helped PostHog through that exact moment - they had a huge free user base but needed to figure out if paid could actually drive cloud conversions without burning budget. Ended up increasing cloud conversions 18.5%.
41
86
 
42
- Most {{team_type}} we chat with are sending thousands of "critical" CVEs to IT, and it's getting harder to prioritize the ones that matter most.
87
+ The thing that made it work was having a clear system from day one... not just launching ads and hoping.
43
88
 
44
- We show what's actually exploitable on your endpoints based on runtime activity, including AI tools that scanners might miss.
89
+ two options:
45
90
 
46
- We'll be at the Spektion booth ESE #7 all week, happy to grab a coffee or just say hi.
91
+ a) 15-min call - I walk through how PostHog set it up and what would apply to Acme
47
92
 
48
- Let me know if this sounds interesting.
93
+ b) I send you our B2B Ads Arsenal - ad templates, playbooks, and case studies from 200+ SaaS companies so you can dig in yourself
49
94
  ```
50
95
 
51
96
  Why it works:
52
97
 
53
- - concrete, time-bound trigger first
54
- - one pain statement
55
- - one mechanism
56
- - one low-pressure event CTA
57
- - no extra proof laundry list
98
+ - starts from a business moment instead of a generic pain
99
+ - one case study does the proof work
100
+ - the second CTA is valuable even if the buyer is not ready for a call
58
101
 
59
- **Proof ranks used:** rank 1 (mechanism "actually exploitable on endpoints based on runtime activity"). Event hook carries relevance; proof is intentionally light.
102
+ **Proof ranks used:** rank 3 (concrete outcome - 18.5% cloud conversion lift),
103
+ rank 2 (named social proof - PostHog), rank 4 (asset-led next step).
60
104
 
61
- If the brief has an event motion but the lead sample does not validate attendee
62
- proof, do not fake the event hook. Borrow the brevity and single-pain structure
63
- instead of the explicit event claim.
105
+ ### Example 3: Clover Report Offer
64
106
 
65
- Preferred non-attendee variant:
107
+ Use when the brief supports:
108
+
109
+ - work already done for the buyer
110
+ - a concrete report, thread set, or analysis artifact
111
+ - permission-to-send CTA
66
112
 
67
113
  ```text
68
- Subject: RSAC next week
114
+ hey {{firstName}},
115
+
116
+ we tracked every reddit discussion around {{category/keyword}} and found {{X}} conversations and {{Y}} responses where people are actively comparing tools or asking for recommendations.
117
+
118
+ {{companyName}} isn't showing up in any of them yet so we put the threads into a short report for you.
119
+
120
+ thought it could help to see where you can convert more customers from the few million viewers already searching for that on reddit.
121
+
122
+ can I send it over?
123
+ ```
69
124
 
125
+ Why it works:
126
+
127
+ - leads with useful work already done
128
+ - makes the missed opportunity concrete
129
+ - asks only for permission to send the artifact
130
+
131
+ **Proof ranks used:** rank 4 (deployment / speed-to-value - report already
132
+ prepared), rank 3 (concrete scale - conversations, responses, viewers).
133
+
134
+ ### Example 4: Persona Proof Framing
135
+
136
+ Use when the brief supports:
137
+
138
+ - founder-led or executive-led content
139
+ - strong proof that needs translation
140
+ - a useful A/B CTA
141
+ - careful token discipline
142
+
143
+ ```text
144
+ hey {{first_name}},
145
+
146
+ not sure if this is relevant but saw you in a few conversations around {{founder_led_topic}} and thought i'd send a note.
147
+
148
+ for context, {{role_group}} i ghostwrite for generated over 350 million impressions in the past 12 months.
149
+
150
+ but what actually matters is that 85%+ of the engagement is ICP aligned. if there isn't ICP alignment, none of the virality or engagement matters.
151
+
152
+ two options:
153
+
154
+ a) in a 15 min call, i can show you a content roadmap and what i'd do for {{company}}
155
+
156
+ b) i can share a page showing how one founder hit 30 million impressions in a year and another went from 0 to 60k followers in 12 months
157
+ ```
158
+
159
+ Required token lesson from this motion:
160
+
161
+ ```text
162
+ BAD: founders in the generative ai space i ghostwrite for generated over 350 million impressions
163
+ BETTER: founders in tech i ghostwrite for generated over 350 million impressions
164
+ ```
165
+
166
+ Why it works:
167
+
168
+ - the proof is not just a big number; it explains why the number matters
169
+ - the token lesson prevents awkward over-specific fills
170
+ - the CTA offers either a working session or a proof page
171
+
172
+ **Proof ranks used:** rank 3 (350M impressions, 85%+ ICP-aligned engagement),
173
+ rank 4 (roadmap / proof page next step).
174
+
175
+ ### Example 5: Superpower Signal-Led Benefits
176
+
177
+ Use when the brief supports:
178
+
179
+ - benefits, rewards, preventive health, or healthcare buyers
180
+ - a weak engagement signal that must stay low-certainty
181
+ - simple mechanism language in a complex domain
182
+
183
+ ```text
70
184
  Hey {{first_name}},
71
185
 
72
- RSAC is next week so reaching out before things get hectic.
186
+ saw you in a few conversations around {{topic}}, so hope this is relevant.
73
187
 
74
- Most {{team_type}} we chat with are sending thousands of "critical" CVEs to IT, and it's getting harder to prioritize the ones that matter most.
188
+ if preventive health is anywhere near the benefits plan at {{company}}, Superpower helps the team spot risk earlier.
75
189
 
76
- We show what's actually exploitable on your endpoints based on runtime activity, including AI tools that scanners might miss.
190
+ it screens for 1,000+ conditions from a single blood draw and surfaces risks before they become claims.
77
191
 
78
- Happy to grab a coffee at the Spektion booth or send a short overview first.
192
+ basically your team gets to see what's coming instead of only reacting to it.
193
+
194
+ should i send over the short version?
79
195
  ```
80
196
 
81
- ## Example 2: Stack-Replacement Operator Diagnostic
197
+ Why it works:
198
+
199
+ - the topic signal does not imply buyer intent
200
+ - the product line is plain-English and buyer-readable
201
+ - the ask is tiny and specific
82
202
 
83
- Use when the brief has:
203
+ **Proof ranks used:** rank 1 (mechanism - 1,000+ conditions from one blood
204
+ draw), rank 3 (risk before claims).
84
205
 
85
- - HubSpot / Salesforce / form-routing workflow pain
86
- - inbound or paid traffic leakage
87
- - a lightweight overlay / no-migration promise
88
- - credible social proof, backing, founder-proof, or a concrete diagnostic that
89
- is strong enough to make the buyer care
206
+ ## Conditional Examples
90
207
 
91
- Preferred expanded InMail shape:
208
+ Use these only when the campaign motion matches.
209
+
210
+ ### Example 6: Revvix / Spektion Event-Led Security
211
+
212
+ Use when the brief has:
213
+
214
+ - a real security event
215
+ - booth or logistics detail
216
+ - a low-pressure coffee or demo ask
92
217
 
93
218
  ```text
94
- Curious how you're handling the current stack between HubSpot/Salesforce, form routing, scheduling, and follow-up today. Most teams end up duct-taping 3-4 tools together and good leads die somewhere in that handoff.
219
+ Subject: RSAC next week
220
+
221
+ Hey {{first_name}},
95
222
 
96
- [Product] replaces that whole chain with one lightweight AI layer. Capture, qualify, route, and book without asking the team to rip out the CRM.
223
+ So I noticed you'll be at RSAC and wanted to reach out before the week gets crazy.
224
+
225
+ Most {{team_type}} we chat with are sending thousands of "critical" CVEs to IT, and it's getting harder to prioritize the ones that matter most.
226
+
227
+ We show what's actually exploitable on your endpoints based on runtime activity, including AI tools that scanners might miss.
228
+
229
+ We'll be at the Spektion booth ESE #7 all week, happy to grab a coffee or just say hi.
97
230
 
98
- [Use the strongest true thing available from the brief here: a named customer
99
- result, a concrete diagnostic, a founder/builder credibility point, a proof
100
- asset, or a specific offer. Do not add a PS just because the template has one.]
231
+ Let me know if this sounds interesting.
101
232
  ```
102
233
 
103
234
  Why it works:
104
235
 
105
- - names the exact workflow/tool
106
- - names the current stack, not just the abstract category
107
- - says what is wrong with the stack in buyer-language terms
108
- - identifies the loss clearly
109
- - positions the product as a lightweight fix
110
- - uses the strongest true proof or offer available, wherever it belongs
111
- - sounds like one operator typed it, not like a framework assembled it
112
-
113
- **Proof ranks used:** rank 1 (mechanism — "lightweight overlay / AI layer
114
- replacing the stack") in body, then the strongest safe proof available from the
115
- brief. Do not reserve proof for a PS by default. If the strongest proof is a
116
- customer result, it can sit in the body. If the strongest asset is a teardown,
117
- audit, report, video, or diagnostic, it should usually become the CTA. If the
118
- strongest credibility is founder/backing/prior-company proof, a short PS can
119
- work, but only when it makes the message more believable instead of more
120
- templated.
121
-
122
- **This is also the default proof-led specialist fallback exemplar.** When the
123
- brief has no event, no active signal, and no hiring hook, default to this
124
- decision process even if the category isn't stack-replacement: observed
125
- current-state → what breaks → product-name-first mechanism → strongest true
126
- proof / offer / asset. The point is not to fill a shape; it is to surface the
127
- best reason a real buyer should reply.
128
-
129
- For dry mode, use only the safe proof available in `brief.md`. Preserve the
130
- logic even when the exact proof number is unavailable. Never invent a metric to
131
- make the shape work.
132
-
133
- ## Example 3: Superposition Exact Job-Post Template
236
+ - concrete, time-bound trigger first
237
+ - one pain statement
238
+ - one mechanism
239
+ - one low-pressure event CTA
240
+
241
+ **Proof ranks used:** rank 1 (mechanism - exploitable endpoints based on runtime
242
+ activity). Event hook carries relevance.
243
+
244
+ ### Example 7: Superposition Exact Job-Post Template
134
245
 
135
246
  Use when the brief has:
136
247
 
137
- - founder / CEO buyer
248
+ - founder or CEO buyer
138
249
  - active hiring signal
139
250
  - exact proof stack already validated
140
251
 
141
- Template shape:
142
-
143
252
  ```text
144
253
  Hey {{firstName}},
145
254
 
146
- Saw you posted for {{a role}} I'm sure every recruiter on LinkedIn is already in your DMs.
255
+ Saw you posted for {{a role}} - I'm sure every recruiter on LinkedIn is already in your DMs.
147
256
 
148
257
  But..
149
258
 
@@ -162,7 +271,7 @@ The whole thing is outcome-based, so you only pay when someone actually starts.
162
271
 
163
272
  Two quick options:
164
273
 
165
- a) 15-min call find the uncommonly specific {{role}} who's the exact right fit for your team
274
+ a) 15-min call - find the uncommonly specific {{role}} who's the exact right fit for your team
166
275
 
167
276
  b) see why Vince at Plastic Labs calls Superposition "a no-brainer" - we scanned 43,802 candidates to find 15 that matched traits no resume would show
168
277
 
@@ -175,17 +284,16 @@ Why it works:
175
284
  - proof compounds line by line
176
285
  - the CTA is part of the mechanism, not a generic ask
177
286
  - freestyling makes it worse
178
- - this is a good example of proof as stacked credibility, not just product
179
- explanation
180
287
 
181
- **Proof ranks used:** rank 5 (founder proof "first engineering hire at Brex"), rank 2 (named social proof — Newton, Vitable, Plastic Labs, Vince quote), rank 3 (concrete outcome — "43,802 candidates to find 15"). This is proof _stacking_, only valid when every line is verifiable.
288
+ **Proof ranks used:** rank 5 (founder proof - first engineering hire at Brex),
289
+ rank 2 (named social proof - Newton, Vitable, Plastic Labs, Vince quote), rank 3
290
+ (concrete outcome - 43,802 candidates to find 15).
182
291
 
183
- **Word-for-word preservation applies here only when the brief is Superposition
184
- itself.** For other job-post motions, match the rhythm (acknowledge the
185
- recruiter DMs → founder credibility → specific client proof → outcome-based
186
- CTA) but write fresh sentences from the brief's actual proof.
292
+ Word-for-word preservation applies only when the brief is Superposition itself.
293
+ For other job-post motions, match the rhythm and write fresh sentences from the
294
+ brief's actual proof.
187
295
 
188
- ## Example 4: Galley Event / Pass / Demo
296
+ ### Example 8: Galley Event / Pass / Demo
189
297
 
190
298
  Use when the brief has:
191
299
 
@@ -194,201 +302,162 @@ Use when the brief has:
194
302
  - concrete booth demo
195
303
  - tactile operational pain
196
304
 
197
- Template shape:
198
-
199
305
  ```text
200
306
  Subject: catersource booth 1517
201
307
 
202
308
  Hey {{first_name}},
203
309
 
204
- not sure if catersource is on your radar next week, but we're at a booth and I've got some free attendance passes if you want one (code: PARTNER2026).
310
+ not sure if catersource is on your radar next week, but we're at booth 1517 and I have a few free attendance passes if you want one (code: PARTNER2026).
311
+
312
+ We just built an AI that reads messy BEOs and turns them into production-ready event plans in minutes.
205
313
 
206
- Wanted to reach out though as we just built an AI that reads the messiest BEOs and turns them into production-ready plans in minutes. recipes, purchasing, prep, nutrition, all mapped automatically.
314
+ One BEO becomes:
207
315
 
208
- The part where your team spends hours rebuilding every event order by hand, that's what this replaces.. And a bit more
316
+ - recipes your kitchen can follow
317
+ - purchasing lists tied to portions
318
+ - prep, station, and nutrition notes
209
319
 
210
- We're doing live demos at the booth. With the free pass you can join the conference and bring a BEO, we'll run it through right there.
320
+ We're doing live demos at the booth. Bring a BEO and we'll run it through right there.
211
321
 
212
- So if you're around LA march 3-5, would love to have you stop by. first-look slots are filling up though so lmk if you want me to hold one.
322
+ If you're around LA march 3-5, want me to hold you a first-look slot?
213
323
  ```
214
324
 
215
325
  Why it works:
216
326
 
217
- - pass + booth + BEO are concrete objects
218
- - tactile pain beats abstract ops language
219
- - casual tone matters
327
+ - pass, booth, and BEO are concrete objects
328
+ - the bullet stack turns one operational input into three short outputs, which is easier to scan on mobile than a dense feature paragraph
329
+ - live demo with the buyer's real input makes the CTA useful
330
+
331
+ Bullet-stack rule from this example:
332
+
333
+ - use exactly three bullets when one input becomes multiple concrete outputs
334
+ - keep each bullet short and parallel: object + useful outcome
335
+ - do not use bullets for vague benefits, feature laundry lists, or proof that belongs in narrative
220
336
 
221
- **Proof ranks used:** rank 1 (mechanism "AI that reads the messiest BEOs and turns them into production-ready plans in minutes"), rank 4 (deployment / speed — "in minutes" + "we'll run it through right there"). No social proof; the concrete asset (pass + booth + BEO walk-through) carries the weight.
337
+ **Proof ranks used:** rank 1 (mechanism - reads messy BEOs and turns them into
338
+ production-ready plans), rank 4 (speed-to-value - in minutes and live booth run).
222
339
 
223
- ## Example 5: Superpower Signal-Led Benefits
340
+ ### Example 9: Galley Signal-Led Honest Operator
224
341
 
225
342
  Use when the brief has:
226
343
 
227
- - signal-led topic engagement
228
- - benefits / rewards / wellness buyers
229
- - proof-heavy preventive-health positioning
344
+ - a real content or topic-engagement signal
345
+ - a founder/operator sender voice
346
+ - a product that can be explained simply
347
+ - a source bridge that should stay low-certainty and specific
230
348
 
231
- Template shape:
349
+ Tokenized template:
232
350
 
233
351
  ```text
234
- hey {{first name}},
352
+ Hey {{first_name}},
353
+
354
+ [LOW_CERTAINTY_SOURCE_BRIDGE - write ONE sentence that names the topic source without implying intent. DO: "Found you in a thread about food cost margins, so may be off, but this seemed relevant." DO: if the source is too weak, use "May be off, but this seemed relevant if [buyer workflow] is on your plate." DON'T: say "you reacted to", "saw you engaging with", "your activity", or "found you through". FALLBACK: omit this line.]
235
355
 
236
- saw you were active around some {{topic}} stuff recently and figured this might actually be relevant
356
+ [BUYER_PAIN_LINE - write ONE concrete sentence about the buyer workflow getting messy. DO: name the connected objects that drift apart, like recipes, portions, and vendor prices. DON'T: use generic "teams struggle with operations" language. FALLBACK: use the campaign's clearest buyer pain from the brief.]
237
357
 
238
- any chance you're exploring early detection or preventive health programs at {{company}}?
358
+ {{product_name}} is a {{plain_product_category}} for {{buyer_team_type}}.
239
359
 
240
- we screen for 1,000+ conditions from a single blood draw and surface risks before they ever become claims.
360
+ [MECHANISM_LINE - write ONE sentence showing what the product keeps connected. DO: name 2-4 operational objects and the team handoff they support. DON'T: list features without the buyer-side reason. FALLBACK: omit if the product line already explains the mechanism.]
241
361
 
242
- basically your team gets to see what's coming instead of just reacting to it
362
+ Open to a quick call on [CONCRETE_CTA_TOPIC - write a short buyer-readable topic for the call, like "recipe costing and margin visibility". DON'T: use "compare notes", "quick chat", or "worth a look" by itself.]?
243
363
 
244
- can I send over some more info?
364
+ P.S. [PROOF_ASIDE - write ONE short proof line only if verified. DO: use one compact social-proof or rating line. DON'T: invent customer counts, ratings, revenue, or named customers. FALLBACK: omit the P.S.]
245
365
  ```
246
366
 
247
- Alternative proof-led variant:
367
+ Rendered example:
248
368
 
249
369
  ```text
250
- hey {{first name}},
370
+ Hey Mohamed,
251
371
 
252
- saw you were active in some {{topic}} conversations recently and wanted to run something by you
372
+ Found you in a thread about food cost margins, so may be off, but this seemed relevant.
253
373
 
254
- most annual physicals test 15 biomarkers max.
374
+ Bulk costing gets messy when recipes, portions, and vendor prices live apart.
255
375
 
256
- there's over 100 that actually matter and the gap between those two numbers is where the expensive claims tend to sit
376
+ Galley is a Culinary Resource Planning platform for foodservice teams.
257
377
 
258
- teams like Lyft and Notion are already exploring this. one draw, 1,000+ conditions, $199 a person.
378
+ It keeps recipes, ingredient costs, and menu margins connected - where purchasing and production can work from the same numbers.
259
379
 
260
- if your claims costs have been going up and you're not sure where it's coming from... that gap may be a good place to start looking
380
+ Open to a quick call on recipe costing and margin visibility?
261
381
 
262
- can I send over some more info?
382
+ P.S. 2,400+ kitchens already use Galley - with a 4.9 average rating :)
263
383
  ```
264
384
 
265
385
  Why it works:
266
386
 
267
- - signal comes first
268
- - all lowercase matters
269
- - the CTA stays tiny
270
- - this should not get polished into generic benefits copy
271
- - the proof sentence does real work; it is not optional filler
387
+ - the source bridge is specific, low-certainty, and not source-defensive
388
+ - the buyer pain is concrete before the product line
389
+ - the product category is clear on first read
390
+ - the mechanism connects the operational objects without a feature dump
391
+ - the CTA names the useful conversation instead of asking for a generic call
392
+ - the P.S. uses proof as a short final aside
272
393
 
273
- **Proof ranks used:** rank 1 (mechanism "1,000+ conditions from a single blood draw"), rank 3 (concrete outcome — "15 biomarkers vs 100 that matter" + "$199 a person"), rank 2 (named social proof — Lyft, Notion). Lowercase tone is load-bearing; polishing it kills the signal-led voice.
394
+ **Proof ranks used:** rank 1 (mechanism - recipes, ingredient costs, menu
395
+ margins, purchasing, and production connected), rank 2 (social proof - 2,400+
396
+ kitchens and 4.9 average rating).
274
397
 
275
- ## Example 6: Signal-Led Honest Operator
398
+ ## Useful CTA Shapes
276
399
 
277
- Use when the brief has:
400
+ Use these as CTA patterns, not as complete messages.
278
401
 
279
- - a real content or topic-engagement signal
280
- - a founder/operator sender voice
281
- - a product that can be explained simply in one or two lines
282
- - a motion where "two options" feels natural
402
+ ### Sellable A/B CTA Shape
283
403
 
284
- Template shape:
404
+ Use when both choices are genuinely useful and supported.
285
405
 
286
406
  ```text
287
- hey {{first_name}},
288
-
289
- reaching out because it looked like you were active around some {{signal_topic}} recently.
290
-
291
- figured this might actually be relevant.
292
-
293
- [product] does [simple one-line mechanism].
294
-
295
407
  two options:
296
408
 
297
- a) [useful working-session / direct conversation option]
298
-
299
- b) [short overview / lightweight alternate only if the brief supports it]
409
+ a) 15-min call - i'll show you how {{team_or_company}} could [specific buyer outcome] with [their ICP / workflow / channel]
300
410
 
301
- p.s. [short proof line]
411
+ b) i send you [specific proof asset, teardown, report, or demo artifact] so you can judge it yourself
302
412
  ```
303
413
 
304
- Why it works:
305
-
306
- - the signal is first and easy to understand
307
- - the "figured this might actually be relevant" line feels honest without
308
- over-explaining
309
- - the product is framed simply
310
- - "two options" makes the CTA easy to scan
311
- - the proof stays short and sits in the `PS`
312
-
313
- Important constraint:
314
-
315
- - borrow the honesty and option structure from `sellable.dev`, but do not copy
316
- the exact Claude-terminal gimmick unless the brief explicitly supports it
317
- and the product can really carry that move
318
-
319
- **Proof ranks used:** rank 1 (mechanism) in the one-line product sentence, rank 2 or 5 (social proof or founder/backing) in the PS. "Two options" is the CTA shape; proof stays small and honest.
320
-
321
- ## Example 7: Useful CTA Shapes
414
+ ### Low-Commitment Binary CTA
322
415
 
323
- Use when the brief supports a useful next step but not a hard meeting ask.
324
-
325
- From Gelee:
416
+ Use when the buyer might prefer an artifact before a call.
326
417
 
327
418
  ```text
328
419
  is this worth a look or should i send a short overview first?
329
420
  ```
330
421
 
331
- From Galley:
422
+ ### Concrete Preview CTA
423
+
424
+ Use when the product can show the buyer their own input or workflow.
332
425
 
333
426
  ```text
334
- easiest way to see if it's worth a look is to try it with one of your actual menus. happy to set that up or I can send a 2-min video instead.
427
+ open to seeing what one of your actual menus would look like in Galley?
335
428
  ```
336
429
 
337
- Use these patterns to avoid generic asks like:
338
-
339
- - worth a conversation?
340
- - open to a call?
341
- - worth a look?
342
-
343
- Prefer a binary or useful CTA when the brief supports it.
344
-
345
- CTA decision rule:
430
+ CTA decision rules:
346
431
 
347
432
  - generate single-ask and A/B options before deciding
348
433
  - use A/B only when both choices are genuinely useful and supported
349
- - for unfamiliar categories, the CTA should name the buyer-specific preview in
350
- one short phrase, not list every screen or workflow
351
- - do not use abstract artifact words like "setup link", "overview", or
352
- "walkthrough" unless the message has already made what the buyer will see
353
- concrete
354
- - for new categories, make the CTA object the buyer-specific preview or
355
- outcome, not the artifact itself
356
-
357
- PS decision rule:
358
-
359
- - PS is optional and rare
360
- - use it only as a natural final aside that lowers commitment, makes a
361
- new-category preview easier to picture, verifies the core claim with a wink,
362
- or carries one short customer/result proof
363
- - do not use PS to explain why the pitch is credible, add a second unrelated
364
- offer, or patch weak body copy
365
-
366
- Proof decision rule:
367
-
368
- - metrics, interaction counts, usage counts, time-window claims, and revenue
369
- math must pass the "so what?" test
370
- - if the buyer can immediately understand why the number is impressive and
371
- relevant, it can work
372
- - if the number only proves "this is live" or "we are using it," translate it,
373
- test a different placement, or keep it internal
434
+ - translate `compare notes` into the concrete topic of the call
435
+ - avoid generic asks like `open to a call?`, `worth a look?`, and `quick chat?`
436
+ - for unfamiliar categories, name the buyer-specific preview or outcome
437
+
438
+ ## Do Not Use As Runtime Inspiration
439
+
440
+ - The removed generic Galley rotation/menu-plan example. It is weaker than the
441
+ concrete Mohamed/Galley and event examples.
442
+ - Amplify Security acceptance fixtures.
443
+ - Gelee as a full example. Keep only its useful low-commitment CTA shape.
444
+ - westpark villas.
445
+ - raw old-client archive examples not listed in this file.
446
+ - bad examples unless they are explicitly labeled `BAD` and paired with a better
447
+ rewrite.
374
448
 
375
449
  ## Hard Rules From The Examples
376
450
 
377
451
  - keep the opener to one observation or one pain, not both stacked together
378
- - keep the body to 3 short paragraphs max
452
+ - keep the body to three short paragraphs unless the exact validated motion needs
453
+ more
379
454
  - keep proof to one tight sentence unless the canonical template clearly needs
380
- more (Superposition is the only archive winner that stacks proof)
381
- - when the brief supports stronger proof, choose one compelling proof element
382
- rather than a bland generic credibility sentence
455
+ proof stacking
456
+ - choose one compelling proof element rather than a bland credibility sentence
383
457
  - avoid "X means you're likely..." framing; it reads synthesized
384
- - avoid "at your stage" and "in a setup like yours"; they sound inferred rather
385
- than observed
386
- - prefer product-name-first mechanism lines over "We built..." when both say
387
- the same thing
388
- - do not use em dashes unless the chosen Primary Example already uses one
389
- - samples in one set should feel like siblings, not three rhetorical styles
390
- - **word-for-word preservation only when the archived winner is the same
391
- company as the brief.** For every other case, match the quality bar and
392
- motion shape without recoloring the exemplar's wording
393
- - use the full archive for retrieval, but choose one primary example and at
394
- most one narrow secondary influence when drafting the final message
458
+ - avoid "at your stage" and "in a setup like yours"; they sound inferred
459
+ - prefer product-name-first mechanism lines when that is clearer than "We built"
460
+ - do not use em dashes unless the chosen primary example already uses one
461
+ - samples in one set should feel like siblings, not three unrelated styles
462
+ - choose one primary example and at most one narrow secondary influence when
463
+ drafting the final message