@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.
- package/README.md +26 -2
- package/assets/worker-kits/growthub-email-marketing-v1/brands/_template/brand-kit.md +172 -0
- package/assets/worker-kits/growthub-email-marketing-v1/brands/growthub/VERSION.md +32 -0
- package/assets/worker-kits/growthub-email-marketing-v1/brands/growthub/brand-kit.md +282 -0
- package/assets/worker-kits/growthub-email-marketing-v1/broadcasts/_template/broadcast-vault.md +188 -0
- package/assets/worker-kits/growthub-email-marketing-v1/broadcasts/growthub/broadcast-vault.md +324 -0
- package/assets/worker-kits/growthub-email-marketing-v1/bundles/growthub-email-marketing-v1.json +66 -0
- package/assets/worker-kits/growthub-email-marketing-v1/examples/campaign-brief-sample.md +110 -0
- package/assets/worker-kits/growthub-email-marketing-v1/examples/nurture-sequence-sample.md +265 -0
- package/assets/worker-kits/growthub-email-marketing-v1/examples/subject-line-matrix-sample.md +116 -0
- package/assets/worker-kits/growthub-email-marketing-v1/growthub-meta/README.md +108 -0
- package/assets/worker-kits/growthub-email-marketing-v1/growthub-meta/kit-standard.md +87 -0
- package/assets/worker-kits/growthub-email-marketing-v1/kit.json +101 -0
- package/assets/worker-kits/growthub-email-marketing-v1/output/growthub/showcase-proof-ai-ugc-v1-20260410/Growthub_Broadcast_ShowcaseProof_v1_20260410.md +139 -0
- package/assets/worker-kits/growthub-email-marketing-v1/output/growthub/showcase-proof-ai-ugc-v1-20260410/Growthub_CampaignBrief_ClientResults_v1_20260410.md +115 -0
- package/assets/worker-kits/growthub-email-marketing-v1/output/growthub/showcase-proof-ai-ugc-v1-20260410/Growthub_SubjectLineMatrix_v1_20260410.md +83 -0
- package/assets/worker-kits/growthub-email-marketing-v1/output-standards.md +174 -0
- package/assets/worker-kits/growthub-email-marketing-v1/runtime-assumptions.md +268 -0
- package/assets/worker-kits/growthub-email-marketing-v1/skills.md +490 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/broadcast-formats/INDEX.md +75 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/broadcast-formats/activation-booking.md +156 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/broadcast-formats/engagement-nudge.md +175 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/broadcast-formats/lead-magnet-traffic.md +149 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/broadcast-formats/showcase-proof.md +153 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/broadcast-formats/value-delivery.md +141 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/campaign-brief-template.md +115 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/cta-matrix.md +90 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/email-draft.md +145 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/email-formats/INDEX.md +59 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/email-formats/follow-up-sequence.md +111 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/email-formats/nurture-sequence.md +143 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/email-formats/outbound-cold-sequence.md +134 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/email-formats/promotional-broadcast.md +117 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/email-formats/re-engagement.md +108 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/email-modules/INDEX.md +97 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/email-modules/body/education-block.md +131 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/email-modules/body/problem-agitate.md +107 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/email-modules/body/story-bridge.md +112 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/email-modules/body/value-reveal.md +107 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/email-modules/cta/primary-cta.md +116 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/email-modules/cta/reply-cta.md +131 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/email-modules/cta/soft-cta.md +117 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/email-modules/subject-lines/curiosity.md +112 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/email-modules/subject-lines/personal.md +108 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/email-modules/subject-lines/social-proof.md +109 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/email-modules/subject-lines/urgency.md +112 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/hooks-library/subject-line-patterns.csv +73 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/qa-checklist.md +106 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/sequence-planner.md +94 -0
- package/assets/worker-kits/growthub-email-marketing-v1/templates/subject-line-matrix.md +136 -0
- package/assets/worker-kits/growthub-email-marketing-v1/workers/email-marketing-strategist/CLAUDE.md +294 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/.env.example +9 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/QUICKSTART.md +85 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/brands/NEW-CLIENT.md +46 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/brands/_template/brand-kit.md +89 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/brands/growthub/brand-kit.md +96 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/bundles/growthub-open-higgsfield-studio-v1.json +57 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/docs/open-higgsfield-fork-integration.md +63 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/docs/provider-adapter-layer.md +67 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/examples/platform-ready-handoff-sample.md +24 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/examples/prompt-matrix-sample.md +6 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/examples/shot-plan-sample.md +7 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/examples/visual-campaign-brief-sample.md +22 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/growthub-meta/README.md +67 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/growthub-meta/kit-standard.md +47 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/kit.json +106 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/output/README.md +34 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/output-standards.md +133 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/runtime-assumptions.md +108 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/setup/check-deps.sh +37 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/setup/clone-fork.sh +27 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/setup/verify-env.mjs +72 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/skills.md +257 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/asset-tracking.md +5 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/frame-analysis.md +24 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/generation-batch-plan.md +7 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/model-selection-recommendation.md +23 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/platform-ready-execution-handoff.md +17 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/prompt-matrix.md +7 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/prompt-templates/cinema-generation.md +16 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/prompt-templates/image-generation.md +11 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/prompt-templates/lip-sync-generation.md +14 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/prompt-templates/video-generation.md +11 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/review-qa-checklist.md +26 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/shot-plan.md +11 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/studio-selection-brief.md +18 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/templates/visual-campaign-brief.md +24 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/validation-checklist.md +49 -0
- package/assets/worker-kits/growthub-open-higgsfield-studio-v1/workers/open-higgsfield-studio-operator/CLAUDE.md +264 -0
- package/package.json +1 -1
|
@@ -0,0 +1,268 @@
|
|
|
1
|
+
# Runtime Assumptions — Email Marketing Strategist v1
|
|
2
|
+
|
|
3
|
+
This document defines all runtime assumptions for this kit. Read before any platform integration work.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## OVERVIEW
|
|
8
|
+
|
|
9
|
+
This kit supports **platform-agnostic email delivery**. Email platform integration is handled through a pluggable adapter pattern. The first reference implementation is GoHighLevel (GHL). Future platforms are added by implementing the same adapter interface without modifying existing kit files.
|
|
10
|
+
|
|
11
|
+
**Three integration modes:**
|
|
12
|
+
|
|
13
|
+
| Mode | When to use | Requires |
|
|
14
|
+
|---|---|---|
|
|
15
|
+
| A — API | Platform has REST API and credentials are configured | Platform API key in env var |
|
|
16
|
+
| B — Browser-assisted | Platform lacks needed API endpoint, or visual QA required | Chrome browser tools available |
|
|
17
|
+
| C — Export only | No platform integration needed — human uploads copy | Nothing — default mode |
|
|
18
|
+
|
|
19
|
+
**Default mode is C (Export only).** The agent should confirm the mode in Step 3 of CLAUDE.md before any platform work.
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## PLATFORM ADAPTER INTERFACE
|
|
24
|
+
|
|
25
|
+
Any email platform integration must implement these operations. GHL implements all of them. Future adapters implement the same interface.
|
|
26
|
+
|
|
27
|
+
### Required operations
|
|
28
|
+
|
|
29
|
+
```
|
|
30
|
+
LIST_TEMPLATES
|
|
31
|
+
Input: platform credentials (from env var)
|
|
32
|
+
Output: list of available email templates [{id, name, slots}]
|
|
33
|
+
Purpose: lets the agent match output copy to a platform template
|
|
34
|
+
|
|
35
|
+
GET_TEMPLATE
|
|
36
|
+
Input: template_id
|
|
37
|
+
Output: template structure with slot definitions [{slot_name, slot_type, description}]
|
|
38
|
+
Purpose: maps platform template slots to email draft sections
|
|
39
|
+
|
|
40
|
+
CREATE_CAMPAIGN
|
|
41
|
+
Input: campaign metadata + sequence plan
|
|
42
|
+
Output: campaign_id
|
|
43
|
+
Purpose: creates the campaign/sequence container in the platform
|
|
44
|
+
|
|
45
|
+
ADD_EMAIL_TO_CAMPAIGN
|
|
46
|
+
Input: campaign_id, email_draft (with slot map), send_delay
|
|
47
|
+
Output: email_id
|
|
48
|
+
Purpose: adds one email draft to the campaign sequence
|
|
49
|
+
|
|
50
|
+
TRIGGER_TEST_SEND
|
|
51
|
+
Input: email_id, test_recipient_email
|
|
52
|
+
Output: confirmation
|
|
53
|
+
Purpose: sends a test version of the email for visual QA
|
|
54
|
+
|
|
55
|
+
SET_SEGMENT_TRIGGER
|
|
56
|
+
Input: campaign_id, segment_tag or trigger_condition
|
|
57
|
+
Output: confirmation
|
|
58
|
+
Purpose: sets which audience segment triggers the sequence
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### Optional operations (platform-specific)
|
|
62
|
+
|
|
63
|
+
```
|
|
64
|
+
LIST_CONTACTS_BY_TAG
|
|
65
|
+
Purpose: look up contacts in a segment before sending
|
|
66
|
+
|
|
67
|
+
GET_CAMPAIGN_STATS
|
|
68
|
+
Purpose: retrieve open/click/reply stats for a completed campaign
|
|
69
|
+
|
|
70
|
+
UPDATE_EMAIL
|
|
71
|
+
Purpose: modify an existing email draft in a campaign
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|
|
76
|
+
## GHL ADAPTER — REFERENCE IMPLEMENTATION
|
|
77
|
+
|
|
78
|
+
GoHighLevel (GHL) is the reference platform. All adapter operations map to GHL REST API endpoints.
|
|
79
|
+
|
|
80
|
+
### Authentication
|
|
81
|
+
|
|
82
|
+
```
|
|
83
|
+
API Key: env var GHL_API_KEY
|
|
84
|
+
Location ID: env var GHL_LOCATION_ID
|
|
85
|
+
Base URL: https://rest.gohighlevel.com/v1
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
**Never hardcode credentials in any kit file, output file, or example.**
|
|
89
|
+
**Always read from environment variables.**
|
|
90
|
+
|
|
91
|
+
### Endpoint mapping
|
|
92
|
+
|
|
93
|
+
| Adapter operation | GHL endpoint |
|
|
94
|
+
|---|---|
|
|
95
|
+
| `LIST_TEMPLATES` | `GET /email-templates/?locationId={GHL_LOCATION_ID}` |
|
|
96
|
+
| `GET_TEMPLATE` | `GET /email-templates/{id}` |
|
|
97
|
+
| `CREATE_CAMPAIGN` | `POST /campaigns/` |
|
|
98
|
+
| `ADD_EMAIL_TO_CAMPAIGN` | `POST /campaigns/{id}/emails` |
|
|
99
|
+
| `TRIGGER_TEST_SEND` | `POST /emails/send` |
|
|
100
|
+
| `SET_SEGMENT_TRIGGER` | `PUT /campaigns/{id}/trigger` |
|
|
101
|
+
| `LIST_CONTACTS_BY_TAG` | `GET /contacts/?tags={tag}` |
|
|
102
|
+
|
|
103
|
+
### GHL template slot convention
|
|
104
|
+
|
|
105
|
+
GHL email templates expose these standard slots:
|
|
106
|
+
|
|
107
|
+
| Slot name | Maps to email draft section |
|
|
108
|
+
|---|---|
|
|
109
|
+
| `subject_line` | Subject line (primary) |
|
|
110
|
+
| `preview_text` | Preview text |
|
|
111
|
+
| `from_name` | `brand_kit.email_from_name` |
|
|
112
|
+
| `from_email` | `brand_kit.email_from_address` |
|
|
113
|
+
| `body_html` | Email body (HTML rendered from Markdown) |
|
|
114
|
+
| `cta_text` | Primary CTA text |
|
|
115
|
+
| `cta_url` | Primary CTA URL |
|
|
116
|
+
| `footer_text` | Unsubscribe + physical address |
|
|
117
|
+
|
|
118
|
+
### GHL API call pattern (agent reference)
|
|
119
|
+
|
|
120
|
+
```bash
|
|
121
|
+
# List available templates
|
|
122
|
+
curl -H "Authorization: Bearer $GHL_API_KEY" \
|
|
123
|
+
"https://rest.gohighlevel.com/v1/email-templates/?locationId=$GHL_LOCATION_ID"
|
|
124
|
+
|
|
125
|
+
# Get a specific template structure
|
|
126
|
+
curl -H "Authorization: Bearer $GHL_API_KEY" \
|
|
127
|
+
"https://rest.gohighlevel.com/v1/email-templates/{template_id}"
|
|
128
|
+
|
|
129
|
+
# Trigger a test send
|
|
130
|
+
curl -X POST \
|
|
131
|
+
-H "Authorization: Bearer $GHL_API_KEY" \
|
|
132
|
+
-H "Content-Type: application/json" \
|
|
133
|
+
-d '{"templateId":"{id}","to":"{test_email}"}' \
|
|
134
|
+
"https://rest.gohighlevel.com/v1/emails/send"
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
---
|
|
138
|
+
|
|
139
|
+
## BROWSER-ASSISTED WORKFLOWS (MODE B)
|
|
140
|
+
|
|
141
|
+
When API operations are not sufficient or visual QA is needed, the agent uses browser tools.
|
|
142
|
+
|
|
143
|
+
**Available browser tools:**
|
|
144
|
+
- `mcp__Claude_in_Chrome__navigate` — navigate to GHL URL
|
|
145
|
+
- `mcp__Claude_Preview__preview_screenshot` — screenshot for review log
|
|
146
|
+
- `mcp__Claude_in_Chrome__get_page_text` — read campaign builder state
|
|
147
|
+
- `mcp__Claude_in_Chrome__form_input` — fill template slot fields
|
|
148
|
+
- `mcp__Claude_in_Chrome__find` — locate elements in GHL UI
|
|
149
|
+
|
|
150
|
+
### Documented browser workflows
|
|
151
|
+
|
|
152
|
+
**Workflow B1 — Navigate to GHL campaign builder and copy-paste email copy**
|
|
153
|
+
|
|
154
|
+
```
|
|
155
|
+
1. Navigate to GHL: https://app.gohighlevel.com/campaigns
|
|
156
|
+
2. Open or create the target campaign
|
|
157
|
+
3. Open the email at position N in the sequence
|
|
158
|
+
4. Transfer copy from <ClientSlug>_Email0N_<Theme>_v1_<YYYYMMDD>.md into template slots
|
|
159
|
+
5. Screenshot the completed email for the review log
|
|
160
|
+
6. Repeat for each email in the sequence
|
|
161
|
+
7. Log completion in deliverables log
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
**Workflow B2 — Visual QA of a completed campaign**
|
|
165
|
+
|
|
166
|
+
```
|
|
167
|
+
1. Navigate to the campaign in GHL
|
|
168
|
+
2. Open each email preview
|
|
169
|
+
3. Screenshot subject line, preview text, and rendered email body
|
|
170
|
+
4. Verify: correct subject/preview, links active, CTA text matches spec, footer present
|
|
171
|
+
5. Flag any discrepancies in the QA checklist
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
**Workflow B3 — Pull existing GHL email template HTML**
|
|
175
|
+
|
|
176
|
+
```
|
|
177
|
+
1. Navigate to GHL email templates
|
|
178
|
+
2. Open the target template
|
|
179
|
+
3. Use get_page_text to extract the HTML structure
|
|
180
|
+
4. Map template slots to the platform slot map in the email draft
|
|
181
|
+
5. Document slot names in the campaign brief platform notes
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
### What browser CANNOT do
|
|
185
|
+
|
|
186
|
+
- Cannot click "Send" on a live broadcast without explicit human confirmation
|
|
187
|
+
- Cannot modify GHL account-level settings (sender domain, DKIM, etc.)
|
|
188
|
+
- Cannot create new GHL sub-accounts
|
|
189
|
+
- Cannot handle GHL 2FA or login flows without manual intervention
|
|
190
|
+
- All browser actions are logged — no silent changes
|
|
191
|
+
|
|
192
|
+
### Browser confirmation requirement
|
|
193
|
+
|
|
194
|
+
**Before any browser-assisted change to a live campaign or send:**
|
|
195
|
+
```
|
|
196
|
+
The agent must state:
|
|
197
|
+
"I am about to [action] in GHL. This will [consequence]. Confirm to proceed."
|
|
198
|
+
|
|
199
|
+
The user must confirm before the action is taken.
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
---
|
|
203
|
+
|
|
204
|
+
## ADDING A NEW PLATFORM ADAPTER
|
|
205
|
+
|
|
206
|
+
To add support for a new email platform (ActiveCampaign, Klaviyo, HubSpot, etc.):
|
|
207
|
+
|
|
208
|
+
1. Add a new section to this file: `## <PLATFORM_NAME> ADAPTER`
|
|
209
|
+
2. Map all required adapter operations to the platform's API endpoints
|
|
210
|
+
3. Document authentication env var names
|
|
211
|
+
4. Document the template slot convention for that platform
|
|
212
|
+
5. Do NOT modify any other kit file
|
|
213
|
+
|
|
214
|
+
**New adapter template:**
|
|
215
|
+
|
|
216
|
+
```markdown
|
|
217
|
+
## <PLATFORM_NAME> ADAPTER
|
|
218
|
+
|
|
219
|
+
### Authentication
|
|
220
|
+
API Key: env var <PLATFORM_NAME>_API_KEY
|
|
221
|
+
[other auth fields as needed]
|
|
222
|
+
Base URL: [platform API base URL]
|
|
223
|
+
|
|
224
|
+
### Endpoint mapping
|
|
225
|
+
| Adapter operation | <Platform> endpoint |
|
|
226
|
+
|---|---|
|
|
227
|
+
| LIST_TEMPLATES | [endpoint] |
|
|
228
|
+
| GET_TEMPLATE | [endpoint] |
|
|
229
|
+
...
|
|
230
|
+
|
|
231
|
+
### Template slot convention
|
|
232
|
+
| Slot name | Maps to email draft section |
|
|
233
|
+
|---|---|
|
|
234
|
+
...
|
|
235
|
+
```
|
|
236
|
+
|
|
237
|
+
---
|
|
238
|
+
|
|
239
|
+
## ENVIRONMENT VARIABLE NAMING CONVENTION
|
|
240
|
+
|
|
241
|
+
| Variable | Purpose |
|
|
242
|
+
|---|---|
|
|
243
|
+
| `GHL_API_KEY` | GHL REST API authentication token |
|
|
244
|
+
| `GHL_LOCATION_ID` | GHL location/account ID |
|
|
245
|
+
| `<PLATFORM>_API_KEY` | Future platform API keys follow this pattern |
|
|
246
|
+
| `EMAIL_PLATFORM` | Active platform name (e.g., `GHL`, `KLAVIYO`) — used by agent to select adapter |
|
|
247
|
+
|
|
248
|
+
**Never store credentials in:**
|
|
249
|
+
- Kit files (any `.md`, `.json`, `.js`)
|
|
250
|
+
- Output files
|
|
251
|
+
- Brand kit files
|
|
252
|
+
- Example files
|
|
253
|
+
- Git-tracked files of any kind
|
|
254
|
+
|
|
255
|
+
---
|
|
256
|
+
|
|
257
|
+
## RUNTIME CHECKLIST
|
|
258
|
+
|
|
259
|
+
Before beginning any platform integration work:
|
|
260
|
+
|
|
261
|
+
- [ ] `EMAIL_PLATFORM` env var is set and matches an implemented adapter
|
|
262
|
+
- [ ] Platform API key env var is set and valid (test with `LIST_TEMPLATES`)
|
|
263
|
+
- [ ] Platform location/account ID is set (if required by platform)
|
|
264
|
+
- [ ] `email_from_name` and `email_from_address` are confirmed in brand kit
|
|
265
|
+
- [ ] Test send recipient email is confirmed
|
|
266
|
+
- [ ] User has confirmed platform handoff mode (API / Browser / Export)
|
|
267
|
+
- [ ] All email drafts are complete and QA-checked before platform upload
|
|
268
|
+
- [ ] No browser actions taken without explicit user confirmation
|