@growthub/cli 0.3.37 → 0.3.39

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 (90) hide show
  1. package/README.md +26 -2
  2. package/assets/worker-kits/growthub-email-marketing-v1/brands/_template/brand-kit.md +172 -0
  3. package/assets/worker-kits/growthub-email-marketing-v1/brands/growthub/VERSION.md +32 -0
  4. package/assets/worker-kits/growthub-email-marketing-v1/brands/growthub/brand-kit.md +282 -0
  5. package/assets/worker-kits/growthub-email-marketing-v1/broadcasts/_template/broadcast-vault.md +188 -0
  6. package/assets/worker-kits/growthub-email-marketing-v1/broadcasts/growthub/broadcast-vault.md +324 -0
  7. package/assets/worker-kits/growthub-email-marketing-v1/bundles/growthub-email-marketing-v1.json +66 -0
  8. package/assets/worker-kits/growthub-email-marketing-v1/examples/campaign-brief-sample.md +110 -0
  9. package/assets/worker-kits/growthub-email-marketing-v1/examples/nurture-sequence-sample.md +265 -0
  10. package/assets/worker-kits/growthub-email-marketing-v1/examples/subject-line-matrix-sample.md +116 -0
  11. package/assets/worker-kits/growthub-email-marketing-v1/growthub-meta/README.md +108 -0
  12. package/assets/worker-kits/growthub-email-marketing-v1/growthub-meta/kit-standard.md +87 -0
  13. package/assets/worker-kits/growthub-email-marketing-v1/kit.json +101 -0
  14. package/assets/worker-kits/growthub-email-marketing-v1/output/growthub/showcase-proof-ai-ugc-v1-20260410/Growthub_Broadcast_ShowcaseProof_v1_20260410.md +139 -0
  15. package/assets/worker-kits/growthub-email-marketing-v1/output/growthub/showcase-proof-ai-ugc-v1-20260410/Growthub_CampaignBrief_ClientResults_v1_20260410.md +115 -0
  16. package/assets/worker-kits/growthub-email-marketing-v1/output/growthub/showcase-proof-ai-ugc-v1-20260410/Growthub_SubjectLineMatrix_v1_20260410.md +83 -0
  17. package/assets/worker-kits/growthub-email-marketing-v1/output-standards.md +174 -0
  18. package/assets/worker-kits/growthub-email-marketing-v1/runtime-assumptions.md +268 -0
  19. package/assets/worker-kits/growthub-email-marketing-v1/skills.md +490 -0
  20. package/assets/worker-kits/growthub-email-marketing-v1/templates/broadcast-formats/INDEX.md +75 -0
  21. package/assets/worker-kits/growthub-email-marketing-v1/templates/broadcast-formats/activation-booking.md +156 -0
  22. package/assets/worker-kits/growthub-email-marketing-v1/templates/broadcast-formats/engagement-nudge.md +175 -0
  23. package/assets/worker-kits/growthub-email-marketing-v1/templates/broadcast-formats/lead-magnet-traffic.md +149 -0
  24. package/assets/worker-kits/growthub-email-marketing-v1/templates/broadcast-formats/showcase-proof.md +153 -0
  25. package/assets/worker-kits/growthub-email-marketing-v1/templates/broadcast-formats/value-delivery.md +141 -0
  26. package/assets/worker-kits/growthub-email-marketing-v1/templates/campaign-brief-template.md +115 -0
  27. package/assets/worker-kits/growthub-email-marketing-v1/templates/cta-matrix.md +90 -0
  28. package/assets/worker-kits/growthub-email-marketing-v1/templates/email-draft.md +145 -0
  29. package/assets/worker-kits/growthub-email-marketing-v1/templates/email-formats/INDEX.md +59 -0
  30. package/assets/worker-kits/growthub-email-marketing-v1/templates/email-formats/follow-up-sequence.md +111 -0
  31. package/assets/worker-kits/growthub-email-marketing-v1/templates/email-formats/nurture-sequence.md +143 -0
  32. package/assets/worker-kits/growthub-email-marketing-v1/templates/email-formats/outbound-cold-sequence.md +134 -0
  33. package/assets/worker-kits/growthub-email-marketing-v1/templates/email-formats/promotional-broadcast.md +117 -0
  34. package/assets/worker-kits/growthub-email-marketing-v1/templates/email-formats/re-engagement.md +108 -0
  35. package/assets/worker-kits/growthub-email-marketing-v1/templates/email-modules/INDEX.md +97 -0
  36. package/assets/worker-kits/growthub-email-marketing-v1/templates/email-modules/body/education-block.md +131 -0
  37. package/assets/worker-kits/growthub-email-marketing-v1/templates/email-modules/body/problem-agitate.md +107 -0
  38. package/assets/worker-kits/growthub-email-marketing-v1/templates/email-modules/body/story-bridge.md +112 -0
  39. package/assets/worker-kits/growthub-email-marketing-v1/templates/email-modules/body/value-reveal.md +107 -0
  40. package/assets/worker-kits/growthub-email-marketing-v1/templates/email-modules/cta/primary-cta.md +116 -0
  41. package/assets/worker-kits/growthub-email-marketing-v1/templates/email-modules/cta/reply-cta.md +131 -0
  42. package/assets/worker-kits/growthub-email-marketing-v1/templates/email-modules/cta/soft-cta.md +117 -0
  43. package/assets/worker-kits/growthub-email-marketing-v1/templates/email-modules/subject-lines/curiosity.md +112 -0
  44. package/assets/worker-kits/growthub-email-marketing-v1/templates/email-modules/subject-lines/personal.md +108 -0
  45. package/assets/worker-kits/growthub-email-marketing-v1/templates/email-modules/subject-lines/social-proof.md +109 -0
  46. package/assets/worker-kits/growthub-email-marketing-v1/templates/email-modules/subject-lines/urgency.md +112 -0
  47. package/assets/worker-kits/growthub-email-marketing-v1/templates/hooks-library/subject-line-patterns.csv +73 -0
  48. package/assets/worker-kits/growthub-email-marketing-v1/templates/qa-checklist.md +106 -0
  49. package/assets/worker-kits/growthub-email-marketing-v1/templates/sequence-planner.md +94 -0
  50. package/assets/worker-kits/growthub-email-marketing-v1/templates/subject-line-matrix.md +136 -0
  51. package/assets/worker-kits/growthub-email-marketing-v1/workers/email-marketing-strategist/CLAUDE.md +294 -0
  52. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/.env.example +9 -0
  53. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/QUICKSTART.md +85 -0
  54. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/brands/NEW-CLIENT.md +46 -0
  55. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/brands/_template/brand-kit.md +89 -0
  56. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/brands/growthub/brand-kit.md +96 -0
  57. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/bundles/growthub-open-higgsfield-studio-v1.json +57 -0
  58. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/docs/open-higgsfield-fork-integration.md +63 -0
  59. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/docs/provider-adapter-layer.md +67 -0
  60. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/examples/platform-ready-handoff-sample.md +24 -0
  61. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/examples/prompt-matrix-sample.md +6 -0
  62. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/examples/shot-plan-sample.md +7 -0
  63. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/examples/visual-campaign-brief-sample.md +22 -0
  64. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/growthub-meta/README.md +67 -0
  65. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/growthub-meta/kit-standard.md +47 -0
  66. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/kit.json +106 -0
  67. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/output/README.md +34 -0
  68. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/output-standards.md +133 -0
  69. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/runtime-assumptions.md +108 -0
  70. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/setup/check-deps.sh +37 -0
  71. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/setup/clone-fork.sh +27 -0
  72. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/setup/verify-env.mjs +72 -0
  73. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/skills.md +257 -0
  74. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/asset-tracking.md +5 -0
  75. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/frame-analysis.md +24 -0
  76. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/generation-batch-plan.md +7 -0
  77. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/model-selection-recommendation.md +23 -0
  78. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/platform-ready-execution-handoff.md +17 -0
  79. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/prompt-matrix.md +7 -0
  80. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/prompt-templates/cinema-generation.md +16 -0
  81. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/prompt-templates/image-generation.md +11 -0
  82. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/prompt-templates/lip-sync-generation.md +14 -0
  83. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/prompt-templates/video-generation.md +11 -0
  84. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/review-qa-checklist.md +26 -0
  85. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/shot-plan.md +11 -0
  86. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/studio-selection-brief.md +18 -0
  87. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/visual-campaign-brief.md +24 -0
  88. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/validation-checklist.md +49 -0
  89. package/assets/worker-kits/growthub-open-higgsfield-studio-v1/workers/open-higgsfield-studio-operator/CLAUDE.md +264 -0
  90. package/package.json +1 -1
@@ -0,0 +1,141 @@
1
+ # Broadcast Format: Value Delivery
2
+
3
+ > **Format ID:** `value-delivery`
4
+ > **Purpose:** Deliver a free resource directly to the subscriber — no friction, no pitch. Pure value send.
5
+ > **Vault asset types:** Lead magnets (`lm-*`) from `broadcasts/<client>/broadcast-vault.md`
6
+ > **Recommended segment:** All active subscribers, new opt-ins, lead magnet requesters
7
+ > **Email count:** 1 (single broadcast)
8
+ > **Tone:** Generous, direct, no strings attached
9
+
10
+ ---
11
+
12
+ ## FORMAT RULES
13
+
14
+ - **No pitch.** This email gives something away. The only CTA is to access the resource. Never mention services or offers.
15
+ - **Short body.** Value-delivery emails should be scannable in under 30 seconds. Hook → 1–2 sentences of framing → CTA → done.
16
+ - **Lead with the gift.** The subject line and first sentence should make clear something valuable is coming. Don't bury the lede.
17
+ - **One resource, one CTA.** Never deliver multiple assets in a single value-delivery email.
18
+ - **PS line is optional but powerful.** Use to reinforce why this resource matters or tease what's in it.
19
+
20
+ ---
21
+
22
+ ## PLACEHOLDERS
23
+
24
+ | Placeholder | Source | Notes |
25
+ |---|---|---|
26
+ | `[BRAND_NAME]` | `brand_kit.brand_name` | Sender identity |
27
+ | `[FROM_NAME]` | `brand_kit.email_from_name` | e.g. "Antonio from Growthub" |
28
+ | `[ASSET_TITLE]` | vault `lead_magnets[].title` | Exact title of the resource |
29
+ | `[ASSET_DESCRIPTION]` | vault `lead_magnets[].description` | 1–2 sentence description |
30
+ | `[ASSET_URL]` | vault `lead_magnets[].url` | Direct link to resource |
31
+ | `[ASSET_TYPE]` | vault `lead_magnets[].type` | e.g. "playbook", "guide", "database" |
32
+ | `[PRIMARY_CTA_TEXT]` | vault `lead_magnets[].cta_text` | Exact CTA copy from vault |
33
+ | `[PERSONA_DESCRIPTION]` | vault `lead_magnets[].audience` | Who this is most relevant for |
34
+ | `[PILLAR]` | vault `lead_magnets[].pillar` | Informs tone + framing angle |
35
+ | `[SEGMENT_TAG]` | campaign brief | The list segment receiving this |
36
+
37
+ ---
38
+
39
+ ## SUBJECT LINE SLOT
40
+
41
+ ```
42
+ subject_line: [SUBJECT_LINE — see matrix below]
43
+ preview_text: [PREVIEW_TEXT — 1 sentence, completes the subject]
44
+ ```
45
+
46
+ ### Subject line matrix — generate 3–5 options
47
+
48
+ **Structures to use for value-delivery:**
49
+
50
+ | Type | Structure | Example |
51
+ |---|---|---|
52
+ | Direct gift | "Here's [ASSET_TYPE]: [ASSET_TITLE]" | "Here's the playbook: Winning Ads 2026" |
53
+ | Curiosity gap | "[Outcome they get] — [resource name]" | "Better ad hooks in 10 minutes — get the database" |
54
+ | Personal handoff | "I put this together for [PERSONA_DESCRIPTION]" | "I built this for performance teams running paid media" |
55
+ | No-pitch signal | "No pitch. Just [resource]." | "No pitch. Just 500 proven hooks." |
56
+ | Earned value | "You asked, here it is — [ASSET_TITLE]" | "You asked, here it is — the AI Batch Image Guide" |
57
+
58
+ ---
59
+
60
+ ## EMAIL BODY TEMPLATE
61
+
62
+ ```
63
+ ---
64
+ FROM: [FROM_NAME]
65
+ TO: [SEGMENT_TAG]
66
+ SUBJECT: [SUBJECT_LINE]
67
+ PREVIEW: [PREVIEW_TEXT]
68
+ ---
69
+
70
+ [HOOK — 1 sentence. State what they're getting. No fluff.]
71
+
72
+ [FRAMING — 1–2 sentences. Why this resource exists and who it's for.]
73
+
74
+ [VALUE BRIDGE — 1 sentence. What they'll be able to do after using it.]
75
+
76
+ → [PRIMARY_CTA_TEXT]
77
+ [ASSET_URL]
78
+
79
+ [OPTIONAL PS — reinforce the value or add a warm, human note.]
80
+
81
+
82
+ [FROM_NAME]
83
+ [BRAND_NAME]
84
+
85
+ ---
86
+ [Footer: unsubscribe | physical address]
87
+ ```
88
+
89
+ ---
90
+
91
+ ## FILLED EXAMPLE — Growthub
92
+
93
+ **Asset used:** `lm-10` — 500+ Proven Winning Hooks
94
+ **Segment:** All active subscribers
95
+
96
+ ```
97
+ ---
98
+ FROM: Antonio from Growthub
99
+ TO: all-active
100
+ SUBJECT: No pitch. Just 500 proven ad hooks.
101
+ PREVIEW: The same library we use internally for every creative brief.
102
+ ---
103
+
104
+ Here's the hooks database — free, no strings.
105
+
106
+ We built this internally to speed up creative briefing. It's 500+ proven ad hooks
107
+ organized by niche, format, and hook type. When you're staring at a blank brief,
108
+ this is what we reach for.
109
+
110
+ If you're writing ads or briefing creative, this'll save you hours.
111
+
112
+ → Access 500+ Winning Hooks →
113
+ https://www.notion.so/growthub/2d7d28ab9783802aa48dcda105f8c63f?v=8e6120c3ec8e401daa8eaefad2de89d6
114
+
115
+ PS — If you find something useful in there, hit reply and tell me which hook type
116
+ worked for your niche. Always curious what's landing.
117
+
118
+
119
+ Antonio
120
+ Growthub
121
+
122
+ ---
123
+ [unsubscribe] · Growthub · [physical address]
124
+ ```
125
+
126
+ ---
127
+
128
+ ## QA CHECKLIST
129
+
130
+ Before approving this broadcast:
131
+
132
+ - [ ] Subject line matches value-delivery tone (no pitch language, no urgency manipulation)
133
+ - [ ] Body is under 150 words
134
+ - [ ] One CTA only — points to the resource URL
135
+ - [ ] URL is correct and live
136
+ - [ ] CTA text matches vault `cta_text` exactly
137
+ - [ ] No mention of services, pricing, or offers
138
+ - [ ] FROM name matches `brand_kit.email_from_name`
139
+ - [ ] Footer present (unsubscribe + physical address)
140
+ - [ ] Segment tag confirmed before send
141
+ - [ ] Cadence rules checked — same asset not sent to same segment in last 60 days
@@ -0,0 +1,115 @@
1
+ # Campaign Brief Template
2
+
3
+ > Fill in all [REQUIRED] fields before writing any copy. Confirm with the user before proceeding to Step 5.
4
+
5
+ ---
6
+
7
+ ## CAMPAIGN OVERVIEW
8
+
9
+ | Field | Value |
10
+ |---|---|
11
+ | **Campaign name** | [REQUIRED] |
12
+ | **Client** | [REQUIRED] |
13
+ | **Campaign type** | [REQUIRED] nurture / cold outbound / follow-up / re-engagement / promotional |
14
+ | **Content pillar (anchor)** | [REQUIRED] Pillar 1–5 name |
15
+ | **Content pillar (secondary)** | [OPTIONAL] |
16
+ | **Date** | [REQUIRED] YYYY-MM-DD |
17
+ | **Owner** | [REQUIRED] |
18
+
19
+ ---
20
+
21
+ ## AUDIENCE
22
+
23
+ | Field | Value |
24
+ |---|---|
25
+ | **Segment name** | [REQUIRED] new-lead / warm-prospect / past-client / re-engage / pipeline-active |
26
+ | **Persona** | [REQUIRED] who is this person — role, situation, awareness level |
27
+ | **Entry trigger** | [REQUIRED] what event starts this sequence (e.g. form fill, demo no-show, tag applied) |
28
+ | **Segment tag (platform)** | [OPTIONAL] platform tag or list name |
29
+ | **What they want** | [REQUIRED] specific desired outcome — not generic |
30
+ | **What they're afraid of** | [OPTIONAL] loss or risk that's holding them back |
31
+ | **What they've tried** | [OPTIONAL] context about their journey so far |
32
+
33
+ ---
34
+
35
+ ## CAMPAIGN ANGLE
36
+
37
+ | Field | Value |
38
+ |---|---|
39
+ | **Campaign angle** | [REQUIRED] one-sentence angle confirmed with user |
40
+ | **Emotional arc** | [REQUIRED] e.g. Frustrated → Informed → Activated |
41
+ | **Primary message** | [REQUIRED] the one thing this campaign communicates |
42
+ | **What the campaign is NOT** | [REQUIRED] what you are explicitly NOT saying or doing |
43
+
44
+ ---
45
+
46
+ ## SEQUENCE MAP
47
+
48
+ > Fill one row per email. Used as the plan before drafts are written.
49
+
50
+ | # | Send Day | Theme | Subject (primary) | Body Arc | CTA | Platform Tag |
51
+ |---|---|---|---|---|---|---|
52
+ | 1 | Day 0 | [theme] | [subject] | [arc] | [CTA] | [tag] |
53
+ | 2 | Day +3 | [theme] | [subject] | [arc] | [CTA] | [tag] |
54
+ | 3 | Day +6 | [theme] | [subject] | [arc] | [CTA] | [tag] |
55
+ | 4 | Day +10 | [theme] | [subject] | [arc] | [CTA] | [tag] |
56
+ | 5 | Day +14 | [theme] | [subject] | [arc] | [CTA] | [tag] |
57
+
58
+ > Adjust rows for campaign type. Nurture = 5 emails. Cold = 4. Follow-up = 3. Re-engagement = 3. Broadcast = 1.
59
+
60
+ ---
61
+
62
+ ## CTA SPEC
63
+
64
+ | Field | Value |
65
+ |---|---|
66
+ | **Primary CTA** | [REQUIRED] exact CTA text |
67
+ | **Primary CTA URL** | [REQUIRED] or [TBD] |
68
+ | **Secondary CTA** | [OPTIONAL] softer ask |
69
+ | **Reply CTA** | [OPTIONAL] conversational ask |
70
+
71
+ ---
72
+
73
+ ## VOICE & TONE NOTES
74
+
75
+ | Field | Value |
76
+ |---|---|
77
+ | **Tone** | [REQUIRED] pull from brand kit — e.g. direct, operator-level, no-fluff |
78
+ | **Voice notes** | [OPTIONAL] any campaign-specific tone adjustments |
79
+ | **Phrases to use** | [OPTIONAL] pull approved phrases from brand kit |
80
+ | **Phrases to avoid** | [REQUIRED] pull from brand kit messaging_guardrails |
81
+
82
+ ---
83
+
84
+ ## COMPLIANCE
85
+
86
+ | Field | Value |
87
+ |---|---|
88
+ | **Required disclaimers** | [REQUIRED] pull from brand kit compliance_notes |
89
+ | **CAN-SPAM footer** | [REQUIRED] Yes — physical address + unsubscribe on all broadcasts |
90
+ | **Hard restrictions** | [REQUIRED] anything confirmed in Step 3 Q5 |
91
+
92
+ ---
93
+
94
+ ## PLATFORM NOTES
95
+
96
+ | Field | Value |
97
+ |---|---|
98
+ | **Platform** | [REQUIRED if in scope] e.g. GHL |
99
+ | **Handoff mode** | [REQUIRED] API / Browser / Export only |
100
+ | **Template name (platform)** | [OPTIONAL] existing template to map into |
101
+ | **Test send recipient** | [OPTIONAL] email address for test send |
102
+
103
+ ---
104
+
105
+ ## SIGN-OFF
106
+
107
+ > Agent confirms this brief with the user before writing any email drafts.
108
+
109
+ - [ ] Campaign angle confirmed
110
+ - [ ] Sequence map confirmed (email count, themes, CTAs)
111
+ - [ ] Compliance notes reviewed
112
+ - [ ] Platform handoff mode confirmed
113
+
114
+ **Confirmed by:** [name]
115
+ **Date confirmed:** [YYYY-MM-DD]
@@ -0,0 +1,90 @@
1
+ # CTA Matrix
2
+
3
+ > Use this to plan and document CTA variants across a campaign.
4
+ > File naming: `<ClientSlug>_CTAMatrix_v<N>_<YYYYMMDD>.md`
5
+
6
+ ---
7
+
8
+ ## MATRIX METADATA
9
+
10
+ ```
11
+ CAMPAIGN: [campaign name]
12
+ CLIENT: [client slug]
13
+ PILLAR: [anchor pillar]
14
+ VERSION: v1
15
+ DATE: YYYY-MM-DD
16
+ ```
17
+
18
+ ---
19
+
20
+ ## CTA TYPE GUIDE
21
+
22
+ | Type | When to use | Commitment level |
23
+ |---|---|---|
24
+ | Primary CTA | Warm audience, late nurture, promotional | High — direct ask |
25
+ | Soft CTA | Cold audience, early nurture, educational | Medium — resource or info ask |
26
+ | Reply CTA | Cold outbound, re-engagement | Low — conversational |
27
+ | PS CTA | Secondary reinforcement in any email | Reinforces primary or adds angle |
28
+
29
+ ---
30
+
31
+ ## PRIMARY CTAs
32
+
33
+ > Use for: warm audiences, late-stage nurture, promotional broadcasts
34
+
35
+ | # | CTA Text | URL / Action | Email(s) | Notes |
36
+ |---|---|---|---|---|
37
+ | P1 | [e.g. "Book your growth call →"] | [URL] | Email 4, 5 | [notes] |
38
+ | P2 | [e.g. "See how it works →"] | [URL] | Email 3 | [notes] |
39
+ | P3 | [e.g. "Get your custom growth plan →"] | [URL] | Email 5 | [notes] |
40
+
41
+ **Recommended primary CTA:** `P1` — [rationale]
42
+
43
+ ---
44
+
45
+ ## SOFT CTAs
46
+
47
+ > Use for: cold audiences, early nurture, first and second emails
48
+
49
+ | # | CTA Text | URL / Action | Email(s) | Notes |
50
+ |---|---|---|---|---|
51
+ | S1 | [e.g. "Read the full breakdown →"] | [URL] | Email 2 | [notes] |
52
+ | S2 | [e.g. "Download the framework →"] | [URL] | Email 1 | [notes] |
53
+ | S3 | [e.g. "Watch the 3-min walkthrough →"] | [URL] | Email 2, 3 | [notes] |
54
+
55
+ ---
56
+
57
+ ## REPLY CTAs
58
+
59
+ > Use for: cold outbound sequences, re-engagement
60
+
61
+ | # | CTA Text | Notes |
62
+ |---|---|---|
63
+ | R1 | [e.g. "Reply and tell me — what's your biggest creative bottleneck right now?"] | Email 1 cold |
64
+ | R2 | [e.g. "Reply with 'yes' if this sounds familiar →"] | Email 1 re-engage |
65
+ | R3 | [e.g. "One question — still relevant?"] | Email 3 re-engage |
66
+
67
+ ---
68
+
69
+ ## PS LINE CTAs
70
+
71
+ > Use in PS to reinforce primary or add a secondary angle
72
+
73
+ | # | PS Line | Email(s) | Notes |
74
+ |---|---|---|---|
75
+ | PS1 | [e.g. "P.S. If you're spending $10K+ on ads and still hitting the creative ceiling, this is worth 20 minutes. [Book here →]"] | Email 3, 4 | |
76
+ | PS2 | [e.g. "P.S. This isn't for everyone — but if finding winners faster is the constraint, reply and let's talk."] | Email 5 | |
77
+ | PS3 | [e.g. "P.S. The case study we sent last week had a 37% reply rate. Worth reading before this call."] | Email 4 | |
78
+
79
+ ---
80
+
81
+ ## CTA RULES (NON-NEGOTIABLE)
82
+
83
+ - One primary CTA per email — never stack two primary CTAs
84
+ - Verb-first: "Book", "Get", "See", "Download", "Start" — not "Click here" or "Learn more"
85
+ - Specific outcome in the CTA text: "Get your custom growth plan" beats "Book a call"
86
+ - CTA always on its own line — not buried in a paragraph
87
+ - PS always reinforces or extends — never introduces a completely unrelated topic
88
+ - For promotional emails: CTA appears once above the fold AND once in the PS
89
+ - Never use urgency language in the CTA itself unless it's a genuinely time-limited offer
90
+ - All URLs must be confirmed real before platform handoff
@@ -0,0 +1,145 @@
1
+ # Email Draft Template
2
+
3
+ > One file per email. Copy this template for each email in the sequence.
4
+ > File naming: `<ClientSlug>_Email<NN>_<Theme>_v<N>_<YYYYMMDD>.md`
5
+
6
+ ---
7
+
8
+ ## METADATA
9
+
10
+ ```
11
+ EMAIL: [N of N in sequence]
12
+ THEME: [theme name from sequence plan]
13
+ SEND DAY: [Day X]
14
+ PILLAR: [pillar name]
15
+ SEGMENT: [segment tag]
16
+ CAMPAIGN: [campaign name]
17
+ CLIENT: [client slug]
18
+ VERSION: v1
19
+ DATE: YYYY-MM-DD
20
+ ```
21
+
22
+ ---
23
+
24
+ ## SUBJECT LINE (PRIMARY)
25
+
26
+ **Subject:** [subject line — from subject line matrix]
27
+ **Preview:** [preview text — complements, does not repeat the subject]
28
+
29
+ > Note: Always write subject line and preview text as a pair.
30
+ > Full subject line variants in: `<ClientSlug>_SubjectLineMatrix_v1_<YYYYMMDD>.md`
31
+
32
+ ---
33
+
34
+ ## EMAIL BODY
35
+
36
+ ---
37
+
38
+ ### OPENING HOOK
39
+
40
+ > 1–2 sentences. Earns the scroll. Names the tension, opens a loop, or delivers an insight.
41
+ > Rule: If the reader stops here, they should still feel like they got something.
42
+
43
+ [Opening hook — write here]
44
+
45
+ ---
46
+
47
+ ### BODY BLOCK 1
48
+
49
+ > Choose block type from module library. 2–4 sentences. One idea.
50
+ > Module: `templates/email-modules/body/[problem-agitate | value-reveal | story-bridge | education-block].md`
51
+
52
+ [Body block 1 — write here]
53
+
54
+ ---
55
+
56
+ ### BODY BLOCK 2
57
+
58
+ > Second block. Advance the arc. 2–4 sentences.
59
+ > If this is a short email (cold/follow-up), Body Block 2 may be the CTA setup.
60
+
61
+ [Body block 2 — write here]
62
+
63
+ ---
64
+
65
+ ### BODY BLOCK 3 (OPTIONAL)
66
+
67
+ > Use for nurture and educational emails. Skip for cold/follow-up.
68
+
69
+ [Body block 3 — write here if needed]
70
+
71
+ ---
72
+
73
+ ### PRIMARY CTA
74
+
75
+ > One CTA. Verb-first. Specific outcome. Repeat in PS.
76
+ > Module: `templates/email-modules/cta/[primary-cta | soft-cta | reply-cta].md`
77
+
78
+ **[CTA text — e.g. "Book your growth call →"]**
79
+
80
+ [CTA URL or action]
81
+
82
+ ---
83
+
84
+ ### PS LINE
85
+
86
+ > High-readership. Reinforce the primary CTA or add a secondary angle.
87
+ > Rule: Always include a PS. It's often the second thing the reader reads.
88
+
89
+ **PS:** [PS line — 1–2 sentences max]
90
+
91
+ ---
92
+
93
+ ## PLAIN-TEXT FALLBACK
94
+
95
+ > Required in every draft. Used by platform for plain-text version of the email.
96
+ > No formatting, no links except raw URLs.
97
+
98
+ ```
99
+ Subject: [subject line]
100
+ Preview: [preview text]
101
+
102
+ [Full email in plain text]
103
+
104
+ [Primary CTA text]: [URL]
105
+
106
+ ---
107
+
108
+ You're receiving this because [reason]. Unsubscribe: [link]
109
+ [Physical mailing address]
110
+ ```
111
+
112
+ ---
113
+
114
+ ## PLATFORM SLOT MAP
115
+
116
+ > Complete only if platform handoff is in scope.
117
+ > Maps email copy into platform template slots for API or browser transfer.
118
+
119
+ ```yaml
120
+ subject_line: "[value]"
121
+ preview_text: "[value]"
122
+ from_name: "[value from brand kit]"
123
+ from_email: "[value from brand kit]"
124
+ body_block_1: "[copy]"
125
+ body_block_2: "[copy]"
126
+ body_block_3: "[copy — or 'N/A']"
127
+ cta_text: "[value]"
128
+ cta_url: "[value]"
129
+ ps_line: "[value]"
130
+ footer_text: "[unsubscribe + physical address from brand kit]"
131
+ platform_tag: "[segment tag from sequence plan]"
132
+ send_delay: "[Day X of sequence]"
133
+ ```
134
+
135
+ ---
136
+
137
+ ## NOTES & VARIANTS
138
+
139
+ > Optional. Use to log review notes, copy variants, or decisions made during writing.
140
+
141
+ - [ ] Subject line A/B test selected: **[variant X]** vs **[variant Y]**
142
+ - [ ] Reviewed against brand kit guardrails
143
+ - [ ] Compliance footer confirmed
144
+ - [ ] Plain-text fallback complete
145
+ - [ ] Platform slot map complete
@@ -0,0 +1,59 @@
1
+ # Email Format Library — INDEX
2
+
3
+ > Check this index FIRST before creating any campaign structure.
4
+ > If a frozen format matches the campaign type, use it — do not reinvent the arc.
5
+ > If no format matches, build from `templates/sequence-planner.md` and freeze after delivery.
6
+
7
+ ---
8
+
9
+ ## FORMAT LOOKUP TABLE
10
+
11
+ | # | Format Name | Campaign Type | Emails | Duration | Pillar Fit | File |
12
+ |---|---|---|---|---|---|---|
13
+ | 1 | Lead Nurture — 5 Email | Nurture sequence for new leads | 5 | 14 days | 1, 2, 4 | `nurture-sequence.md` |
14
+ | 2 | Cold Outbound — 4 Email | Cold outreach to new prospect | 4 | 9 days | 2, 4, 5 | `outbound-cold-sequence.md` |
15
+ | 3 | Promotional Broadcast | Single one-off promotional email | 1 | Single send | 2, 3, 5 | `promotional-broadcast.md` |
16
+ | 4 | Re-Engagement — 3 Email | Win-back for silent or stalled contacts | 3 | 15 days | 3, 5 | `re-engagement.md` |
17
+ | 5 | Post-Demo Follow-Up — 3 Email | Follow-up after demo or discovery call | 3 | 4 days | 1, 3, 5 | `follow-up-sequence.md` |
18
+
19
+ ---
20
+
21
+ ## FORMAT SELECTION GUIDE
22
+
23
+ **"I have a new lead from a form fill or ad opt-in"**
24
+ → Use Format 1: Lead Nurture — 5 Email
25
+
26
+ **"I want to reach out cold to a prospect list"**
27
+ → Use Format 2: Cold Outbound — 4 Email
28
+
29
+ **"I want to send one email about an offer, event, or announcement"**
30
+ → Use Format 3: Promotional Broadcast
31
+
32
+ **"I have contacts who went silent or didn't convert — I want to re-engage them"**
33
+ → Use Format 4: Re-Engagement — 3 Email
34
+
35
+ **"Someone just had a demo or discovery call and I need to follow up"**
36
+ → Use Format 5: Post-Demo Follow-Up — 3 Email
37
+
38
+ **"None of these match what I need"**
39
+ → Build a custom arc using `templates/sequence-planner.md`. After delivery, freeze it here.
40
+
41
+ ---
42
+
43
+ ## HOW TO FREEZE A NEW FORMAT
44
+
45
+ When you create a custom campaign arc that works well:
46
+
47
+ 1. Document it using the format structure from any existing format file
48
+ 2. Save to `templates/email-formats/<format-id>.md`
49
+ 3. Add a row to this INDEX
50
+ 4. Note the client and campaign it was first used for in the format file header
51
+
52
+ ---
53
+
54
+ ## SACRED RULES FOR FORMATS
55
+
56
+ - **Format email count is sacred.** If a format has 5 emails, the sequence has 5 emails. Don't compress unless the user explicitly requests a shorter version.
57
+ - **Format arc is sacred.** The emotional arc (e.g. problem → insight → proof → activation) does not change. Only the content and copy change.
58
+ - **Pillar determines angle.** The same format used with Pillar 2 vs Pillar 4 produces completely different copy — that's intentional.
59
+ - **One format per campaign.** Never blend nurture and cold outbound logic in the same sequence.
@@ -0,0 +1,111 @@
1
+ # Email Format: Post-Demo Follow-Up — 3 Email Sequence
2
+
3
+ **Format ID:** `follow-up-post-demo-3-email`
4
+ **Campaign type:** Follow-up
5
+ **Email count:** 3
6
+ **Duration:** 4 days
7
+ **Entry trigger:** Demo, discovery call, or sales call completed — no immediate decision
8
+ **Primary pillar fit:** Pillar 1 (Growth System), Pillar 3 (Client Results), Pillar 5 (Pipeline & Revenue)
9
+ **Audience:** Post-demo — highly warm, has seen the product/service, has not yet committed
10
+
11
+ ---
12
+
13
+ ## FORMAT PURPOSE
14
+
15
+ Moves a post-demo prospect from "interested but undecided" to a decision — yes, no, or a clear next step. This sequence is tight, fast, and specific. It references the call. It addresses the specific objections or interests raised in the demo.
16
+
17
+ This format is NOT generic follow-up. It is written with context from the call. If call notes are not available, ask the user to provide them before writing.
18
+
19
+ ---
20
+
21
+ ## EMOTIONAL ARC
22
+
23
+ ```
24
+ Email 1: Recap + reinforce — anchor the value from the call
25
+ Email 2: Objection or question addressed — remove the sticking point
26
+ Email 3: Decision prompt — make it easy to say yes or name the next step
27
+ ```
28
+
29
+ ---
30
+
31
+ ## SEQUENCE MAP
32
+
33
+ | # | Send Day | Theme | Body Arc | CTA Type | Subject Type |
34
+ |---|---|---|---|---|---|
35
+ | 1 | Day 0 (same day or next morning) | Call recap + value anchor | Recap key points → reinforce the specific value they responded to → warm CTA | Primary CTA or soft CTA | Personal |
36
+ | 2 | Day +1 | Address the sticking point | Name the objection/question from the call → resolve it with proof or context | Primary CTA | Social proof or curiosity |
37
+ | 3 | Day +3 | Decision prompt | Direct ask → what happens next → make the path clear | Primary CTA | Direct or urgency |
38
+
39
+ ---
40
+
41
+ ## EMAIL 1 — CALL RECAP + VALUE ANCHOR
42
+
43
+ **Theme:** Here's what we covered — and the specific thing I think applies most to you
44
+ **Arc:** Thank them for the time → recap 1–2 key points from the call → anchor on the specific value/insight they responded to most → warm CTA
45
+ **Tone:** Personal, warm, specific — this is a 1:1 email, not a broadcast
46
+ **CTA type:** Soft CTA (resource mentioned on call) or primary CTA (next step discussed)
47
+ **Body modules:** `value-reveal` → `soft-cta` or `primary-cta`
48
+ **Subject type:** Personal ("Following up from our call, [First Name]") or callback to the call topic
49
+ **Length:** Medium — 8–10 sentences
50
+
51
+ **Sacred elements for Email 1:**
52
+ - Must reference something specific from the call — generic follow-up emails fail
53
+ - Lead with the thing they were most interested in, not the full recap
54
+ - If a resource was promised on the call, deliver it in Email 1
55
+ - Send within 24 hours of the call — timing matters
56
+
57
+ ---
58
+
59
+ ## EMAIL 2 — OBJECTION OR QUESTION ADDRESSED
60
+
61
+ **Theme:** I want to address something that came up in our conversation
62
+ **Arc:** Name the objection or question directly → give the specific resolution → proof if available → ask
63
+ **Tone:** Direct, helpful, not defensive
64
+ **CTA type:** Primary CTA
65
+ **Body modules:** `value-reveal` → `story-bridge` (optional) → `primary-cta`
66
+ **Subject type:** Social proof or curiosity ("The question I get most from [role]") or personal callback
67
+ **Length:** Medium — 8–12 sentences
68
+
69
+ **Sacred elements for Email 2:**
70
+ - The objection must be the real one from the call — not a generic objection
71
+ - Common objections per persona: see brand kit persona notes
72
+ - Do not be defensive about the objection — acknowledge it, resolve it, move forward
73
+ - If no specific objection was raised, use this email to go deeper on the pillar they were most interested in
74
+
75
+ **Common Growthub objections and resolution angles:**
76
+ - "We can't scale creative fast enough" → address with Creative OS speed + system
77
+ - "We've tried AI UGC before and it didn't work" → address with insight layer differentiation
78
+ - "I need internal buy-in first" → address with the "Buy-In Deck" angle (make them look smart internally)
79
+ - "The cost doesn't make commercial sense yet" → address with cost-per-learning vs cost-per-creative framing
80
+
81
+ ---
82
+
83
+ ## EMAIL 3 — DECISION PROMPT
84
+
85
+ **Theme:** Where do we go from here?
86
+ **Arc:** One sentence callback to the sequence → acknowledge they're deciding → make the path clear → ask the question directly
87
+ **Tone:** Direct, honest, calm — no pressure
88
+ **CTA type:** Primary CTA (book next call / confirm next step) or reply CTA ("Just reply with where you're at")
89
+ **Body modules:** `primary-cta` or `reply-cta`
90
+ **Subject type:** Direct ("Quick question, [First Name]") or urgency ("Next step on [topic from call]")
91
+ **Length:** SHORT — 4–6 sentences
92
+
93
+ **Sacred elements for Email 3:**
94
+ - Be direct about the fact that they're deciding
95
+ - Give them two options maximum: yes (next step) or not now (and give them the option to say so)
96
+ - Do not send more follow-up emails after Email 3 without a reason — move them to re-engagement or remove
97
+
98
+ ---
99
+
100
+ ## FOLLOW-UP SPECIFIC RULES
101
+
102
+ **Personalization is required.**
103
+ This format only works if it's specific to the call. Ask the user for call notes before writing. Minimum required: what was discussed, what the prospect's specific situation was, what they responded to most.
104
+
105
+ **Speed matters.**
106
+ Email 1 must go out within 24 hours of the call. Ideally same day. After 48 hours, the window closes significantly.
107
+
108
+ **Address the real objection.**
109
+ Generic follow-up that doesn't reference the specific sticking point from the call will not move deals forward.
110
+
111
+ **See:** `skills.md → STEP 4` for pillar-specific follow-up angles and language.