@sellable/mcp 0.1.0

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 (200) hide show
  1. package/.claude-plugin/plugin.json +12 -0
  2. package/.mcp.json +9 -0
  3. package/README.md +355 -0
  4. package/dist/api.d.ts +21 -0
  5. package/dist/api.js +73 -0
  6. package/dist/auth.d.ts +60 -0
  7. package/dist/auth.js +246 -0
  8. package/dist/engage-memory.d.ts +63 -0
  9. package/dist/engage-memory.js +354 -0
  10. package/dist/index-dev.d.ts +2 -0
  11. package/dist/index-dev.js +17 -0
  12. package/dist/index.d.ts +7 -0
  13. package/dist/index.js +8 -0
  14. package/dist/server.d.ts +1 -0
  15. package/dist/server.js +499 -0
  16. package/dist/skills.d.ts +11 -0
  17. package/dist/skills.js +97 -0
  18. package/dist/tools/auth.d.ts +30 -0
  19. package/dist/tools/auth.js +124 -0
  20. package/dist/tools/blueprint-commit.d.ts +174 -0
  21. package/dist/tools/blueprint-commit.js +286 -0
  22. package/dist/tools/bootstrap.d.ts +64 -0
  23. package/dist/tools/bootstrap.js +246 -0
  24. package/dist/tools/campaigns.d.ts +589 -0
  25. package/dist/tools/campaigns.js +892 -0
  26. package/dist/tools/cells.d.ts +58 -0
  27. package/dist/tools/cells.js +48 -0
  28. package/dist/tools/context.d.ts +88 -0
  29. package/dist/tools/context.js +271 -0
  30. package/dist/tools/csv-domains.d.ts +73 -0
  31. package/dist/tools/csv-domains.js +464 -0
  32. package/dist/tools/csv-linkedin.d.ts +102 -0
  33. package/dist/tools/csv-linkedin.js +712 -0
  34. package/dist/tools/direct-campaigns.d.ts +240 -0
  35. package/dist/tools/direct-campaigns.js +250 -0
  36. package/dist/tools/engage-bootstrap.d.ts +94 -0
  37. package/dist/tools/engage-bootstrap.js +205 -0
  38. package/dist/tools/engage-discovery.d.ts +78 -0
  39. package/dist/tools/engage-discovery.js +150 -0
  40. package/dist/tools/engage-memory.d.ts +181 -0
  41. package/dist/tools/engage-memory.js +143 -0
  42. package/dist/tools/engage-state.d.ts +72 -0
  43. package/dist/tools/engage-state.js +62 -0
  44. package/dist/tools/enrichment.d.ts +167 -0
  45. package/dist/tools/enrichment.js +174 -0
  46. package/dist/tools/flow-preflight.d.ts +68 -0
  47. package/dist/tools/flow-preflight.js +138 -0
  48. package/dist/tools/framework.d.ts +44 -0
  49. package/dist/tools/framework.js +153 -0
  50. package/dist/tools/interaction-mode.d.ts +27 -0
  51. package/dist/tools/interaction-mode.js +102 -0
  52. package/dist/tools/leads.d.ts +2417 -0
  53. package/dist/tools/leads.js +2307 -0
  54. package/dist/tools/linkedin.d.ts +210 -0
  55. package/dist/tools/linkedin.js +229 -0
  56. package/dist/tools/navigation.d.ts +91 -0
  57. package/dist/tools/navigation.js +381 -0
  58. package/dist/tools/one-off.d.ts +229 -0
  59. package/dist/tools/one-off.js +273 -0
  60. package/dist/tools/processing.d.ts +70 -0
  61. package/dist/tools/processing.js +56 -0
  62. package/dist/tools/prompts.d.ts +211 -0
  63. package/dist/tools/prompts.js +210 -0
  64. package/dist/tools/provider-preflight.d.ts +21 -0
  65. package/dist/tools/provider-preflight.js +59 -0
  66. package/dist/tools/readiness.d.ts +261 -0
  67. package/dist/tools/readiness.js +510 -0
  68. package/dist/tools/rows.d.ts +126 -0
  69. package/dist/tools/rows.js +105 -0
  70. package/dist/tools/rubrics.d.ts +497 -0
  71. package/dist/tools/rubrics.js +681 -0
  72. package/dist/tools/senders.d.ts +44 -0
  73. package/dist/tools/senders.js +69 -0
  74. package/dist/tools/sequencer.d.ts +127 -0
  75. package/dist/tools/sequencer.js +194 -0
  76. package/dist/tools/tables.d.ts +35 -0
  77. package/dist/tools/tables.js +36 -0
  78. package/dist/tools/verify-row.d.ts +36 -0
  79. package/dist/tools/verify-row.js +38 -0
  80. package/dist/tools/workspaces.d.ts +140 -0
  81. package/dist/tools/workspaces.js +139 -0
  82. package/dist/utils/workspace-root.d.ts +1 -0
  83. package/dist/utils/workspace-root.js +39 -0
  84. package/package.json +46 -0
  85. package/skills/building-gtm-tables/SKILL.md +216 -0
  86. package/skills/building-gtm-tables/core/auto-execute.yaml +19 -0
  87. package/skills/building-gtm-tables/core/blueprint-schema.json +72 -0
  88. package/skills/building-gtm-tables/references/brief-to-blueprint.md +334 -0
  89. package/skills/building-gtm-tables/references/column-type-catalog.md +318 -0
  90. package/skills/building-gtm-tables/references/common-blueprints.fixtures.ts +199 -0
  91. package/skills/building-gtm-tables/references/common-blueprints.md +44 -0
  92. package/skills/building-gtm-tables/references/failure-taxonomy.md +197 -0
  93. package/skills/building-gtm-tables/references/uat-seed-prompts.md +37 -0
  94. package/skills/building-gtm-tables/references/verify-loop.md +74 -0
  95. package/skills/campaign-messages/SKILL.md +173 -0
  96. package/skills/campaign-messages/flow.v1.json +75 -0
  97. package/skills/craft-message/SKILL.md +401 -0
  98. package/skills/create-campaign/ARCHITECTURE.md +232 -0
  99. package/skills/create-campaign/DISCUSS.md +296 -0
  100. package/skills/create-campaign/FLOW_ASCII.md +240 -0
  101. package/skills/create-campaign/HOST-PARITY-CHECKLIST.md +49 -0
  102. package/skills/create-campaign/README.md +142 -0
  103. package/skills/create-campaign/SKILL.md +286 -0
  104. package/skills/create-campaign/context/README.md +67 -0
  105. package/skills/create-campaign/context/_TEMPLATE.md +12 -0
  106. package/skills/create-campaign/context/context.md +35 -0
  107. package/skills/create-campaign/context/learnings.md +16 -0
  108. package/skills/create-campaign/context/registry.json +19 -0
  109. package/skills/create-campaign/core/flow.v1.json +217 -0
  110. package/skills/create-campaign/core/policy.md +191 -0
  111. package/skills/create-campaign/core/providers/apollo.json +35 -0
  112. package/skills/create-campaign/core/providers/prospeo.json +34 -0
  113. package/skills/create-campaign/core/providers/registry.json +31 -0
  114. package/skills/create-campaign/core/providers/sales-nav.json +37 -0
  115. package/skills/create-campaign/core/providers/signal-discovery.json +42 -0
  116. package/skills/create-campaign/references/brief-template.md +64 -0
  117. package/skills/create-campaign/references/campaign-quality.md +84 -0
  118. package/skills/create-campaign/references/copy-calibration-examples.md +120 -0
  119. package/skills/create-campaign/references/offer-patterns.md +108 -0
  120. package/skills/create-campaign/references/provider-selection-strategy.md +212 -0
  121. package/skills/create-campaign/references/question-examples.md +167 -0
  122. package/skills/create-campaign/references/token-fill-examples.md +81 -0
  123. package/skills/create-campaign-brief/ARCHITECTURE.md +72 -0
  124. package/skills/create-campaign-brief/DISCUSS.md +64 -0
  125. package/skills/create-campaign-brief/README.md +176 -0
  126. package/skills/create-campaign-brief/SKILL.md +537 -0
  127. package/skills/create-campaign-brief/references/brief-synthesis-rules.md +100 -0
  128. package/skills/create-campaign-brief/references/brief-template.md +220 -0
  129. package/skills/create-campaign-brief/references/campaign-idea-options.md +30 -0
  130. package/skills/create-campaign-brief/references/copy-appendix-template.md +62 -0
  131. package/skills/create-campaign-brief/references/draft-lifecycle.md +23 -0
  132. package/skills/create-campaign-brief/references/examples/MANIFEST.json +89 -0
  133. package/skills/create-campaign-brief/references/examples/briefs/clover.md +223 -0
  134. package/skills/create-campaign-brief/references/examples/briefs/galley.md +222 -0
  135. package/skills/create-campaign-brief/references/examples/briefs/gelee.md +220 -0
  136. package/skills/create-campaign-brief/references/examples/briefs/hey-digital.md +234 -0
  137. package/skills/create-campaign-brief/references/examples/briefs/persona.md +231 -0
  138. package/skills/create-campaign-brief/references/examples/briefs/revvix.md +220 -0
  139. package/skills/create-campaign-brief/references/examples/briefs/sellable-dev.md +220 -0
  140. package/skills/create-campaign-brief/references/examples/briefs/superposition.md +233 -0
  141. package/skills/create-campaign-brief/references/examples/briefs/superpower.md +219 -0
  142. package/skills/create-campaign-brief/references/examples/briefs/westpark-villas.md +220 -0
  143. package/skills/create-campaign-brief/references/icp-lock-question-bank.md +43 -0
  144. package/skills/create-campaign-brief/references/messaging-inputs.md +58 -0
  145. package/skills/create-campaign-brief/references/output-acceptance-rubric.md +62 -0
  146. package/skills/create-campaign-brief/references/phase75-active-runtime-message-pack.md +248 -0
  147. package/skills/create-campaign-brief/references/phase75-canonical-brief-template.md +319 -0
  148. package/skills/create-campaign-brief/references/phase75-good-brief-and-messaging-examples.md +445 -0
  149. package/skills/create-campaign-brief/references/quick-research-protocol.md +39 -0
  150. package/skills/create-campaign-brief/references/reference-sheet-protocol.md +60 -0
  151. package/skills/create-campaign-brief/references/zero-shot-iteration-rules.md +66 -0
  152. package/skills/create-campaign-v2/SKILL.md +1619 -0
  153. package/skills/create-campaign-v2/core/auto-execute.README.md +219 -0
  154. package/skills/create-campaign-v2/core/auto-execute.yaml +121 -0
  155. package/skills/create-campaign-v2/core/flow.v2.json +1643 -0
  156. package/skills/create-campaign-v2/core/policy.md +82 -0
  157. package/skills/create-campaign-v2/references/ai-tells.md +253 -0
  158. package/skills/create-campaign-v2/references/approval-gate-framing.md +346 -0
  159. package/skills/create-campaign-v2/references/draft-lifecycle.md +110 -0
  160. package/skills/create-campaign-v2/references/escalation-ladder.md +119 -0
  161. package/skills/create-campaign-v2/references/filter-leads.md +495 -0
  162. package/skills/create-campaign-v2/references/final-handoff-contract.md +176 -0
  163. package/skills/create-campaign-v2/references/gold-standard-message-examples.md +394 -0
  164. package/skills/create-campaign-v2/references/gold-standard-message-patterns.md +314 -0
  165. package/skills/create-campaign-v2/references/gold-standard-message-validation-example.md +212 -0
  166. package/skills/create-campaign-v2/references/lead-validation-preview.md +172 -0
  167. package/skills/create-campaign-v2/references/parallel-critique-protocol.md +368 -0
  168. package/skills/create-campaign-v2/references/sample-validation-loop.md +289 -0
  169. package/skills/create-campaign-v2/references/step-13-import-leads.md +151 -0
  170. package/skills/create-campaign-v2/references/step-15-re-cascade.md +90 -0
  171. package/skills/create-campaign-v2/references/thomas-revision-filters.md +521 -0
  172. package/skills/create-campaign-v2/references/thomas-variant-selection.md +202 -0
  173. package/skills/create-campaign-v2/references/tier-routing-matrix.md +66 -0
  174. package/skills/create-campaign-v2/references/validation-criteria.md +367 -0
  175. package/skills/create-campaign-v2/references/watch-link-handoff.md +106 -0
  176. package/skills/create-campaign-v2-validation/SKILL.md +296 -0
  177. package/skills/create-post/SKILL.md +1308 -0
  178. package/skills/create-rubric/SKILL.md +251 -0
  179. package/skills/engage/SKILL.md +549 -0
  180. package/skills/engage/core/README.md +23 -0
  181. package/skills/engage/core/proven-searches.json +11 -0
  182. package/skills/engage/core/style-guide.template.md +47 -0
  183. package/skills/engage/core/tracked-people.json +10 -0
  184. package/skills/enrich-prospects/SKILL.md +97 -0
  185. package/skills/find-leads/SKILL.md +467 -0
  186. package/skills/generate-messages/SKILL.md +2361 -0
  187. package/skills/interview/SKILL.md +132 -0
  188. package/skills/interview/core/ENGAGE_STYLE_GUIDE.template.md +54 -0
  189. package/skills/interview/core/ICP.template.md +54 -0
  190. package/skills/interview/core/VOICE_PROFILE.template.md +101 -0
  191. package/skills/providers/apollo.md +520 -0
  192. package/skills/providers/prospeo.md +398 -0
  193. package/skills/providers/sales-nav.md +372 -0
  194. package/skills/providers/signal-discovery.md +495 -0
  195. package/skills/research/SKILL.md +258 -0
  196. package/skills/research/config.json +9 -0
  197. package/skills/research/override.md +13 -0
  198. package/skills/research-prospect/SKILL.md +99 -0
  199. package/skills/research-sender/SKILL.md +158 -0
  200. package/skills/workflow-sequences/SKILL.md +85 -0
@@ -0,0 +1,220 @@
1
+ # westpark villas Campaign Brief + Rubric Archive
2
+
3
+ Source: [75-ALL-CLIENT-CAMPAIGN-CORPUS.json](/Users/christianreyes/dev/dittto-fresh/web/.planning/phases/75-canonical-campaign-brief-and-copy-calibration/75-ALL-CLIENT-CAMPAIGN-CORPUS.json)
4
+
5
+ Campaigns captured: 26
6
+
7
+ ---
8
+
9
+ ## Batangas Local Professional Campaign
10
+
11
+ - Sent: 259
12
+ - Replied: 1
13
+ - Accepted: 56
14
+ - Updated: 2026-01-22T23:58:30.490Z
15
+
16
+ ### Campaign Brief
17
+
18
+ # Investment Breakdown & New Year Sale for Batangas Professionals
19
+
20
+ ## Campaign Objective
21
+
22
+ Launch a campaign to **professionals and families in the Batangas/CALABARZON region** to offer them a **flood-free, 3-bedroom home at West Park Villas** with a special **New Year Sale discount** and a full investment breakdown.
23
+
24
+ ## Ideal Customer Profile (ICP)
25
+
26
+ - **Company type:** Local businesses, government offices, hospitals, and educational institutions (e.g., Lyceum faculty).
27
+ - **Role & seniority:** Mid-to-senior level professionals, healthcare workers, engineers, and educators.
28
+ - **Company size:** Stable local employers and regional hubs.
29
+ - **Geography:** Batangas (San Luis, Taal, Lemery, Bauan) and the wider CALABARZON area.
30
+
31
+ ## Meeting Value (Offer)
32
+
33
+ In a 15-minute call, I will walk you through the full investment breakdown for West Park Villas, including the 5-year ROI forecast for the San Luis growth corridor. I'll also share the specific New Year Sale discount details for our 120sqm units and show you the current site plan so we can identify the best remaining corner lots for your family or investment portfolio.
34
+
35
+ ## Social Proof
36
+
37
+ **Primary Proof:** West Park Villas is strategically located just 0.2km (2 minutes) from the Lyceum of San Luis, ensuring high long-term property value and consistent rental demand from faculty and families in a 100% flood-free, elevated terrain.
38
+
39
+ ## Messaging Style
40
+
41
+ - **Language:** Write all messages in **Tagalog** (or Taglish) for a friendlier, more personal tone
42
+ - **Tone:** Casual, approachable, like messaging a kababayan
43
+ - **Keep it natural:** Use everyday Tagalog, not formal/stiff language
44
+
45
+ ### Rubric Markdown
46
+
47
+ (none stored)
48
+
49
+ ### Structured Lead Scoring Rubrics
50
+
51
+ (none stored)
52
+
53
+ ---
54
+
55
+ ## Flood-Free Investment for Manila Families
56
+
57
+ - Sent: 8
58
+ - Replied: 1
59
+ - Accepted: 4
60
+ - Updated: 2026-01-20T22:03:27.873Z
61
+
62
+ ### Campaign Brief
63
+
64
+ # Flood-Free Investment for Manila Families
65
+
66
+ ## Campaign Objective
67
+
68
+ Launch campaign to **Filipino families in Manila** who are looking for **affordable property outside the metro** and offer them a **15-minute investment package review for Westpark Villas** - showing floor plans, pricing, and 10%+ annual appreciation in a flood-free zone near Lyceum University.
69
+
70
+ ## Ideal Customer Profile (ICP)
71
+
72
+ - **Company type:** Filipino families and individuals in Metro Manila area seeking affordable property investment outside the city
73
+ - **Role & seniority:** Homebuyers, property investors, family decision-makers with purchasing power
74
+ - **Income level:** ₱1.2M - ₱2.5M budget for property investment (can afford ₱1.8M house and lot)
75
+ - **Geography:** Metro Manila (NCR) - particularly those considering relocation or investment in CALABARZON region
76
+ - **Pain point:** Priced out of Manila market but concerned about flood risk in cheaper provincial areas
77
+
78
+ ## Meeting Value (Offer)
79
+
80
+ In a 15-minute call, we'll walk you through the complete Westpark Villas investment package: (1) floor plans and unit availability for the 176-lot subdivision, (2) transparent pricing breakdown (₱1.8M for 3BR/2BA house and lot), and (3) location advantages including flood-free elevated terrain, proximity to Lyceum University for rental income potential, and the new municipal building across the street. You'll see exactly why this property has appreciated 10%+ year-over-year, making it one of the fastest-growing spots in Batangas.
81
+
82
+ ## Social Proof
83
+
84
+ **Property Performance:** The Westpark Villas area has appreciated more than 10% year-over-year, making it one of the fastest-growing property markets in the Batangas region.
85
+
86
+ **Safety & Location Proof:** Flood-resistant elevated terrain with proper drainage systems, located directly across from the new municipal building in San Luis, and positioned in front of Lyceum University.
87
+
88
+ **Development Credibility:** Developed by Toloca Development Corp., offering 176 residential units with complete amenities (clubhouse, swimming pool, basketball court) in a medium-cost housing subdivision.
89
+
90
+ ### Rubric Markdown
91
+
92
+ (none stored)
93
+
94
+ ### Structured Lead Scoring Rubrics
95
+
96
+ #### not_real_estate_agent
97
+
98
+ - Required: true
99
+ - Use for scoring: true
100
+ - Allow partial credit: false
101
+ - Strict matching: false
102
+ - Description: Filters out competitors or industry peers who are not end-investors.
103
+ - Reason: We want to reach buyers and investors, not other agents looking to sell.
104
+ - Criterion: NO if the prospect's title indicates they are a Real Estate Broker, Agent, or Property Consultant. YES otherwise.
105
+
106
+ #### philippines_resident
107
+
108
+ - Required: true
109
+ - Use for scoring: true
110
+ - Allow partial credit: true
111
+ - Strict matching: false
112
+ - Description: Checks if the prospect is based in the Philippines.
113
+ - Reason: The campaign targets families looking for property near Manila or in Batangas; international leads without local ties are unlikely to invest.
114
+ - Criterion: YES if the prospect is located in the Philippines, specifically Metro Manila or CALABARZON. NO if they are based internationally with no clear ties to the Philippines.
115
+
116
+ #### professional_purchasing_power
117
+
118
+ - Required: true
119
+ - Use for scoring: true
120
+ - Allow partial credit: true
121
+ - Strict matching: false
122
+ - Description: Evaluates if the prospect's professional level suggests they can afford a ₱1.8M investment.
123
+ - Reason: A ₱1.8M property requires a stable income (₱1.2M - ₱2.5M annual budget), which is typically found in mid-to-senior professional roles.
124
+ - Criterion: YES if the prospect holds a mid-to-senior level professional role (e.g., Manager, Director, VP, Owner, CPA, Engineer, Consultant). NO for entry-level, student, or junior roles.
125
+
126
+ #### professional_purchasing_power
127
+
128
+ - Required: true
129
+ - Use for scoring: true
130
+ - Allow partial credit: true
131
+ - Strict matching: false
132
+ - Description: Evaluates if the prospect's professional level suggests they can afford a ₱1.8M investment.
133
+ - Reason: A ₱1.8M property requires a stable income (₱1.2M - ₱2.5M annual budget), which is typically found in mid-to-senior professional roles.
134
+ - Criterion: YES if the prospect holds a mid-to-senior level professional role (e.g., Manager, Director, VP, Owner, CPA, Engineer, Consultant). NO for entry-level, student, or junior roles.
135
+
136
+ #### not_real_estate_agent
137
+
138
+ - Required: true
139
+ - Use for scoring: true
140
+ - Allow partial credit: false
141
+ - Strict matching: false
142
+ - Description: Filters out competitors or industry peers who are not end-investors.
143
+ - Reason: We want to reach buyers and investors, not other agents looking to sell.
144
+ - Criterion: NO if the prospect's title indicates they are a Real Estate Broker, Agent, or Property Consultant. YES otherwise.
145
+
146
+ #### philippines_resident
147
+
148
+ - Required: true
149
+ - Use for scoring: true
150
+ - Allow partial credit: true
151
+ - Strict matching: false
152
+ - Description: Checks if the prospect is based in the Philippines.
153
+ - Reason: The campaign targets families looking for property near Manila or in Batangas; international leads without local ties are unlikely to invest.
154
+ - Criterion: YES if the prospect is located in the Philippines, specifically Metro Manila or CALABARZON. NO if they are based internationally with no clear ties to the Philippines.
155
+
156
+ ---
157
+
158
+ ## West Park Villas - Batangas Growth Campaign
159
+
160
+ - Sent: 15
161
+ - Replied: 0
162
+ - Accepted: 0
163
+ - Updated: 2026-01-22T05:14:31.244Z
164
+
165
+ ### Campaign Brief
166
+
167
+ # Investment ROI Analysis for Batangas Real Estate Investors
168
+
169
+ ## Campaign Objective
170
+
171
+ Launch campaign to **Investors** interested in the Batangas growth corridor and offer them a **15-minute Investment ROI Analysis** for West Park Villas in San Luis.
172
+
173
+ ## Ideal Customer Profile (ICP)
174
+
175
+ - **Company type:** Individual Real Estate Investors, Property Portfolio Managers, or Local Business Owners.
176
+ - **Role & seniority:** Decision-makers looking for tangible, appreciating assets.
177
+ - **Company size:** N/A (Focusing on individual investment capacity).
178
+ - **Geography:** Philippines (Batangas, Lipa, Metro Manila) and OFWs (Middle East, USA, Europe, Singapore).
179
+
180
+ ## Meeting Value (Offer)
181
+
182
+ In a 15-minute call, we will walk you through a custom Investment ROI Analysis for West Park Villas. We will show projected appreciation rates at the current ₱4.5K/sqm entry price and compare it to neighboring areas like Lipa to show the specific growth potential of San Luis. You’ll leave with a clear understanding of the yield potential before the next price increase.
183
+
184
+ ## Social Proof
185
+
186
+ **Primary Proof:** Model house and site progress photos showing the actual 3BR/2BA development in San Luis, Batangas. We will share current site development updates to demonstrate the project's momentum and tangible value.
187
+
188
+ ### Rubric Markdown
189
+
190
+ (none stored)
191
+
192
+ ### Structured Lead Scoring Rubrics
193
+
194
+ (none stored)
195
+
196
+ ---
197
+
198
+ ## Sellable: 90-Second GTM Sprint for Founders
199
+
200
+ - Sent: 0
201
+ - Replied: 0
202
+ - Accepted: 0
203
+ - Updated: 2026-02-13T23:54:32.351Z
204
+
205
+ ### Campaign Brief
206
+
207
+ # 5m Campaign Build for B2B SaaS Founders
208
+
209
+ ## Campaign Objective
210
+
211
+ Launch campaign to **B2B SaaS Founders** who are overwhelmed by GTM complexity and offer them a **live, 5m outbound campaign build via chat** to simplify their sales process.
212
+
213
+ ## Ideal Customer Profile (ICP)
214
+
215
+ - **Company type:** B2B SaaS Startups
216
+ - **Role & seniority:** Founders, Co-Founders, and CEOs (Founders who still lead sales)
217
+ - **Company size:** 1-50 employees
218
+ - **Geography:** North America and Europe
219
+
220
+ ## Meeting Value (Offer)
@@ -0,0 +1,43 @@
1
+ # ICP Lock Question Bank
2
+
3
+ ICP lock is about sourcing and filter mechanics. Messaging inputs come later.
4
+
5
+ ## Required Mechanics
6
+
7
+ - company demographics
8
+ - company size and maturity
9
+ - roles and titles
10
+ - title synonyms
11
+ - anti-titles
12
+ - exclusions
13
+ - geography
14
+ - signals and triggers
15
+ - volume constraints
16
+
17
+ Bias:
18
+
19
+ - required buyer-fit rules first
20
+ - required exclusion rules first
21
+ - optional/non-required rules are rare and usually belong after the lead sample
22
+ - use the first sample to discover false positives before getting more precise
23
+
24
+ ## Questions To Ask Only When Blocking
25
+
26
+ - Which buyer owns the pain and budget?
27
+ - Which titles are false positives?
28
+ - Which company sizes are too small or too mature?
29
+ - Which geography is actually serviceable?
30
+ - Which signals prove timing?
31
+ - What volume range makes the campaign worth running?
32
+ - Which existing customers, competitors, or verticals should be excluded?
33
+
34
+ ## Keep Out Of ICP Lock
35
+
36
+ - pain language
37
+ - social proof
38
+ - objections
39
+ - CTA
40
+ - voice
41
+ - token rules
42
+
43
+ Those belong in messaging inputs and the brief's copy sections.
@@ -0,0 +1,58 @@
1
+ # Messaging Inputs
2
+
3
+ Messaging inputs translate strategy into a compact message thesis for Phase 83.
4
+ Final copy-ready rules and variants belong to the later message step after the
5
+ first lead sample and filter tightening.
6
+
7
+ In Phase 83, draft only the likely InMail angle after the brief makes the
8
+ sequence clear: find leads first, tighten the filter second, and draft the real
9
+ message last. Copy quality depends on which prospects qualify and which proof
10
+ claims survive that process.
11
+
12
+ ## Required Inputs
13
+
14
+ - safe proof
15
+ - off-limits claims
16
+ - CTA preference
17
+ - voice notes
18
+ - token inventory
19
+ - token source
20
+ - token fill rules
21
+ - fallback or removal rules
22
+
23
+ ## Phase 83 Token Notes
24
+
25
+ Every likely personalization input should have:
26
+
27
+ - source
28
+ - fill rule
29
+ - fallback or removal rule
30
+
31
+ Required common tokens can include:
32
+
33
+ - `{{first_name}}`
34
+ - `{{company}}`
35
+ - `{{role_family}}`
36
+ - `{{signal_topic}}`
37
+ - `{{signal_evidence}}`
38
+ - `{{pain_context}}`
39
+ - `{{proof_point}}`
40
+ - `{{cta}}`
41
+
42
+ Optional tokens are allowed only when sourceable. Weak token sourcing means
43
+ rewrite the message thesis or mark it for validation.
44
+
45
+ ## Proof Discipline
46
+
47
+ Do not use proof-heavy variants when proof is thin. Put proof gaps in the brief
48
+ and write messages that do not depend on missing claims.
49
+
50
+ ## Examples Discipline
51
+
52
+ Good messaging examples should be derived from the actual prospect context,
53
+ signal, source material, and offer. Do not cite Sellable client examples,
54
+ internal reference briefs, or Phase 75 files as the reason a line is good.
55
+
56
+ Do not write connection-request copy by default. Do not recommend connection
57
+ requests as a warm-up, fallback, secondary channel, or exception. Default to
58
+ InMail unless the operator explicitly asks for connection requests.
@@ -0,0 +1,62 @@
1
+ # Output Acceptance Rubric
2
+
3
+ Use this rubric to judge whether a generated brief is client-ready.
4
+
5
+ ## Client-Ready Means
6
+
7
+ The brief is strong enough that:
8
+
9
+ - the client feels understood
10
+ - the offer direction feels plausible and specific
11
+ - the ICP feels precise
12
+ - Thomas would not need to rewrite the whole document
13
+ - downstream copy generation has stable guardrails
14
+
15
+ ## Scorecard
16
+
17
+ Score each area from 1-5.
18
+
19
+ ### 1. Accuracy
20
+
21
+ - 5: grounded in source material, no invented proof
22
+ - 3: mostly grounded but fuzzy in important places
23
+ - 1: generic or hallucinated
24
+
25
+ ### 2. Strategic Clarity
26
+
27
+ - 5: target, pain, offer, and plan are obvious on first read
28
+ - 3: understandable but still broad or mushy
29
+ - 1: vague, framework-heavy, or confused
30
+
31
+ ### 3. Client Voice Capture
32
+
33
+ - 5: clearly reflects how the client talks and what they care about
34
+ - 3: generally on-topic but generic
35
+ - 1: sounds like a template with the client's name swapped in
36
+
37
+ ### 4. Offer Quality
38
+
39
+ - 5: concrete, differentiated, and proportional to buyer intent
40
+ - 3: plausible but familiar or too heavy
41
+ - 1: generic free audit / book-a-call energy
42
+
43
+ ### 5. Operator Usefulness
44
+
45
+ - 5: downstream copy and campaign execution can use it immediately
46
+ - 3: needs moderate interpretation
47
+ - 1: still requires major rethinking
48
+
49
+ ## Automatic Failures
50
+
51
+ The brief is not client-ready if any of these happen:
52
+
53
+ - invented proof
54
+ - generic placeholder language left in the brief
55
+ - message copy dumped into the main brief
56
+ - no clear offer angle
57
+ - no meaningful open questions despite obvious missing information
58
+
59
+ ## Zero-Shot Goal
60
+
61
+ This command should be iterated until the first-pass output is good enough
62
+ zero-shot, not only after manual cleanup.
@@ -0,0 +1,248 @@
1
+ # Phase 75 Active Runtime Message Pack
2
+
3
+ This is the narrow message inspiration pack for `create-campaign-brief`.
4
+
5
+ Use this pack at runtime.
6
+ Use the raw archive only for curation.
7
+
8
+ ## Scope
9
+
10
+ Included as primary gold examples:
11
+
12
+ - `sellable.dev`
13
+ - `Hey Digital` — only `Predictable Paid Growth for B2B SaaS Leaders`
14
+ - `Galley`
15
+ - `Clover`
16
+ - `Persona`
17
+ - `Superpower`
18
+
19
+ Not included in runtime inspiration:
20
+
21
+ - `Amplify Security` — acceptance fixture only
22
+ - `Gelee` — useful proof stack, but the visible example lacks a strong CTA and
23
+ can teach landing-page proof without a reply path
24
+ - `Revvix` — useful event fixture, but the CTA is too soft for broad runtime
25
+ generation; use only when the campaign is explicitly event/logistics-led
26
+ - `superposition` — excellent exact-template lock for its own hiring motion, but
27
+ dangerous as broad inspiration because it teaches too much sender-first "I"
28
+ proof stacking; retrieve only for a job-post / founder-hiring motion
29
+ - `westpark villas`
30
+ - any archived old-client examples outside the active set
31
+
32
+ ## Runtime Rules
33
+
34
+ - Feed only endorsed examples into generation.
35
+ - Keep bad lines only if they are explicitly labeled `BAD` and paired with a `BETTER` version.
36
+ - Default to one approved message in the generated brief unless the ICP is genuinely broad.
37
+ - A/B CTA is optional. Use it only when the second option is truly strong.
38
+ - If there is a great low-friction proof asset or case study, that is often the best Option B.
39
+ - Never shorten, summarize, or omit the CTA block from a gold example. If an
40
+ example is included at runtime, preserve the complete ask, option text, proof
41
+ asset, and URL lines because those are part of the motion.
42
+ - Use the runtime set as a quality bar, not a template fill. The best examples
43
+ win because they make the buyer care quickly: clear signal or current-state
44
+ observation, one concrete mechanism, one strongest true proof/asset, and a CTA
45
+ that offers a useful next step.
46
+ - Before copying any surface trait from a gold example, pass the buyer-role
47
+ test: as this exact buyer, is the first line relevant, is the product clear,
48
+ is the sender context useful rather than repetitive, is the proof the
49
+ strongest safe proof available, and is the CTA the lowest-friction true next
50
+ step? If not, choose a different shape.
51
+ - Do not copy weak surface traits from an example. Lowercase, ellipses,
52
+ parentheses, or a PS only matter when they serve the motion. The first
53
+ selection question is always: "what is the strongest true thing we can say to
54
+ this buyer?"
55
+ - Extract the job each gold line does before copying any shape. For each
56
+ candidate example, identify: buyer situation interrupted, why the buyer
57
+ replies, sender relevance, offer clarity move, mechanism clarity move, proof
58
+ role, CTA job, and surface traits not to copy blindly.
59
+ - Treat proof, CTA, and PS as elements to test. Customer/result proof belongs
60
+ in the body, CTA, PS, or nowhere depending on whether it improves clarity,
61
+ believability, or reply likelihood. Supported proof is not automatically good
62
+ copy.
63
+ - Metrics and time-window traction must pass the "so what?" test. Use them
64
+ when the buyer can immediately tell why the number matters. Otherwise
65
+ translate the number into the human claim it supports, test another
66
+ placement, or keep it internal.
67
+ - Every selected line needs a prospect-side "so what?" answer. If a line is
68
+ true but the buyer would not immediately care, it is not gold-standard copy
69
+ yet.
70
+ - A PS is rare. Use it only when it acts like a natural final aside: lowering
71
+ commitment, making a new-category preview easier to picture, verifying the
72
+ core claim with a wink, or carrying one short customer/result proof that
73
+ would bloat the body. Delete any PS that explains the pitch, patches
74
+ credibility, or says internal strategy out loud.
75
+
76
+ ## Included Message Examples
77
+
78
+ ### sellable.dev
79
+
80
+ Why included:
81
+
82
+ - strongest meta-demo CTA
83
+ - strong product line
84
+ - strong formatting control
85
+ - why it works: the signal is real, the self-aware parenthetical lowers the
86
+ "creepy signal" risk, the product line is short and bold, and the A/B CTA
87
+ offers either a direct working session or a proof asset
88
+
89
+ ```md
90
+ hey [name],
91
+
92
+ 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.
93
+
94
+ i'm building sellable, the only gtm platform that runs natively on claude code.
95
+
96
+ we're looking for design partners - and [PERSONALIZED REASON - their team size, role, or why they're a perfect fit].
97
+
98
+ two options:
99
+
100
+ 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
101
+
102
+ b) i send you the video of me using sellable to write and send this exact message to you (yes, it's that meta)
103
+
104
+ p.s. yes, this message was entirely written and sent via claude code 😊
105
+ ```
106
+
107
+ ### Hey Digital
108
+
109
+ Why included:
110
+
111
+ - strongest scenario-based structure
112
+ - good example of a strong case-study asset as Option B
113
+ - why it works: it starts from a business moment the buyer already understands,
114
+ uses one peer case study as proof, explains the operating lesson in plain
115
+ language, and makes the second CTA valuable even without a meeting
116
+
117
+ ```md
118
+ Hey Sarah,
119
+
120
+ Saw Acme just closed their Series B... usually that's when the board starts asking about paid channels.
121
+
122
+ 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%.
123
+
124
+ The thing that made it work was having a clear system from day one... not just launching ads and hoping.
125
+
126
+ two options:
127
+
128
+ a) 15-min call — I walk through how PostHog set it up and what would apply to Acme
129
+
130
+ b) I send you our B2B Ads Arsenal — ad templates, playbooks, and case studies from 200+ SaaS companies so you can dig in yourself
131
+ ```
132
+
133
+ ### Galley
134
+
135
+ Why included:
136
+
137
+ - strongest concrete operational offer
138
+ - easy to picture the output
139
+ - why it works: the pain is tactile, the mechanism is easy to visualize, and the
140
+ CTA lets the buyer test the product with their own real input instead of
141
+ committing to a generic call
142
+
143
+ ```md
144
+ hey {{first_name}},
145
+
146
+ this might not apply but if you're still rebuilding menu plans by hand every time a rotation changes, there's a way to skip that whole step.
147
+
148
+ we built a tool that takes a menu from whatever format it's in and just... builds the whole plan. recipes, purchasing, stations, all connected. no more starting from scratch every cycle.
149
+
150
+ works best for {{company_team_type}} running rotations across a bunch of locations where every menu change turns into hours of work nobody has time for.
151
+
152
+ 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.
153
+ ```
154
+
155
+ ### Clover
156
+
157
+ Why included:
158
+
159
+ - strongest asset-led report offer
160
+ - strongest reply-handling handoff
161
+ - why it works: the message leads with work already done for the buyer, makes
162
+ the missed opportunity concrete, and asks only for permission to send a useful
163
+ report
164
+
165
+ ```md
166
+ hey {{firstName}},
167
+
168
+ 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.
169
+
170
+ {{companyName}} isn't showing up in any of them yet so we put the threads into a short report for you.
171
+
172
+ thought it could help to see where you can convert more customers from the few million viewers already searching for that on reddit.
173
+
174
+ can I send it over?
175
+ ```
176
+
177
+ ### Persona
178
+
179
+ Why included:
180
+
181
+ - strongest proof framing
182
+ - strongest bad-vs-better token discipline
183
+ - why it works: the proof is not just "big number"; it explains why the number
184
+ matters by tying engagement to ICP alignment, then gives the buyer a choice
185
+ between a working session and a proof asset
186
+
187
+ ```md
188
+ hey {{first_name}},
189
+
190
+ not sure if this is relevant but i saw you engaging with some posts about {{founder_led_topic}} on linkedin and thought i'd send you a note.
191
+
192
+ for context, {{role_group}} i ghostwrite for generated over 350 million impressions in the past 12 months.
193
+
194
+ 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.
195
+
196
+ two options:
197
+
198
+ a) in a 15 min call, i can show you a content roadmap and what i'd do for {{company}}
199
+
200
+ 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
201
+ ```
202
+
203
+ Required token example from the same brief:
204
+
205
+ ```md
206
+ BAD: "founders in the generative ai space i ghostwrite for generated over 350 million impressions"
207
+ BETTER: "founders in tech i ghostwrite for generated over 350 million impressions"
208
+ ```
209
+
210
+ ### Superpower
211
+
212
+ Why included:
213
+
214
+ - simple language in a hard domain
215
+ - useful plain-language healthcare constraint example
216
+ - why it works: it asks about the buyer's existing benefits priority, explains
217
+ the mechanism in plain language, and keeps the ask tiny instead of forcing a
218
+ call
219
+
220
+ ```md
221
+ Hey {{first_name}},
222
+
223
+ not sure if you've looked into this but felt it may be relevant to your work.
224
+
225
+ have you ever looked into early detection or preventive health programs for {{company}}?
226
+
227
+ we screen for 1,000+ conditions from a single blood draw and surface risks before they ever become claims.
228
+
229
+ basically your team gets to see what's coming instead of just reacting to it
230
+
231
+ can I send over some more info?
232
+ ```
233
+
234
+ Locked production variant from the same Superpower campaign:
235
+
236
+ ```md
237
+ subject: {{company}} + 1,000 biomarkers + 24/7 care team
238
+
239
+ hey {{first_name}},
240
+
241
+ curious how you're thinking about preventative health + benefits innovation given your work at {{company}}.
242
+
243
+ we provide companies direct access to 100+ biomarker lab testing and screen 1,000+ conditions for every employee.
244
+
245
+ then we drive behaviour change with a 24/7 care team.
246
+
247
+ open to a 15 min call to learn more, or should i send over a short overview first?
248
+ ```