skills/capabilities/early-access-email-sequence/SKILL.md
Generate a personalized 7-email onboarding sequence for Goose early access signups. Takes a LinkedIn profile URL and company domain, researches the person and company, classifies their role, and produces all 7 emails ready to send — personalized with real context, not merge tags. Outputs to a Notion database (one row per user, columns for each email). Use this skill whenever someone signs up for Goose early access, when you need to generate onboarding emails for new users, when the user says "generate emails for a new signup", "onboard this person", "add them to the email sequence", or provides a LinkedIn URL with a company domain in the context of the launch. Also use when processing a batch of signups.
npx skillsauth add athina-ai/goose-skills early-access-email-sequenceInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Research a new Goose signup, then generate all 7 onboarding emails personalized with real context about their role and company. Output goes to a shared Notion database — one row per person, every email ready to copy-paste and send on schedule.
The sequence runs over 14 days (Day 0, 2, 5, 8, 10, 12, 14). Emails 2 and 4 are personalized by role. Emails 1, 5, 6 are universal. Emails 3 and 7 branch by activation status (generate the default version; note when to swap).
| Input | Required | Description |
|-------|----------|-------------|
| linkedin_url | Yes | LinkedIn profile URL of the signup |
| company_domain | Yes | Company website domain (e.g., posthog.com) |
| signup_date | Yes | Date they signed up (to calculate send dates). Default: today. |
| sender_name | No | Name to sign emails with. Default: ask the user. |
| calendly_link | No | Calendly URL for feedback calls. Default: ask the user. |
| notion_db_url | No | Existing Notion database URL to add the row to. If not provided, create a new database. |
For batch processing, accept a list of {linkedin_url, company_domain, signup_date} objects and process each one sequentially.
Use web search to gather context on the signup. Do NOT scrape LinkedIn directly — use web search queries that surface LinkedIn profile data.
Search for the person:
"{{linkedin_url}}" OR site:linkedin.com/in/{{handle}}"{{person_name}}" {{company}} LinkedIn (once you have their name)Extract:
If LinkedIn data is thin, supplement with:
"{{person_name}}" {{company}} (company blog, press mentions, podcast appearances)Run these searches in parallel where possible:
What they do:
https://{{company_domain}} — extract tagline, product description, target audience{{company_domain}} what does {{company}} doGTM motion:
{{company}} careers sales OR marketing OR growth — are they hiring GTM roles?Size and stage:
{{company}} funding round series — latest funding, stage{{company}} headcount employees — approximate team sizeCompetitors:
{{company}} competitors alternatives vs{{company}} G2 category — what category are they in?Compile a company summary (2-3 sentences):
Based on the person's title, classify into one of four buckets. This determines which variants of Emails 2 and 4 to use.
| Bucket | Matching Titles | Notes | |--------|----------------|-------| | Sales | SDR, BDR, AE, Account Executive, Sales Manager, VP Sales, CRO, Head of Sales, Sales Director, Revenue | Anyone whose job is closing deals or generating pipeline | | Marketing | Content, SEO, Demand Gen, CMO, Marketing Manager, VP Marketing, Growth Marketing, Brand, Communications, PR | Anyone whose job is creating demand or content | | Growth / RevOps | Growth, RevOps, GTM Ops, Revenue Operations, Head of Growth, Business Operations, Strategy & Ops | Anyone running GTM systems, ops, or cross-functional growth | | Founder | CEO, Co-founder, Founder, CTO (at <20 person company), COO (at <20 person company) | Founders wearing the GTM hat. If company is <20 people and title is C-suite, classify as Founder. |
Ambiguous cases:
Read the email templates from references/email-templates.md in this skill's directory.
For each email, apply the research to personalize:
Email 1 (Day 0) — Welcome:
{{first_name}}, {{sender_name}}, {{calendly_link}}Email 2 (Day 2) — Use Case #1:
[PERSONALIZE] section: 1-2 sentences connecting the workflow to something specific about their company, based on your Phase 2 research. This is where the value is — reference their GTM motion, their market, their competitors, or their stage. Be specific and concrete, not generic.Email 3 (Day 5) — Nudge:
Email 4 (Day 8) — Use Case #2:
[PERSONALIZE] section: connect the second workflow to their specific situation. Use competitor names, industry events, or market context from your research.Email 5 (Day 10) — Community Spotlight:
Email 6 (Day 12) — Skills Page:
{{first_name}} and {{sender_name}}Email 7 (Day 14) — Feedback Ask:
From the signup_date, calculate each email's send date:
| Email | Day Offset | Send Date | |-------|-----------|-----------| | Email 1 | Day 0 | signup_date | | Email 2 | Day 2 | signup_date + 2 days | | Email 3 | Day 5 | signup_date + 5 days | | Email 4 | Day 8 | signup_date + 8 days | | Email 5 | Day 10 | signup_date + 10 days | | Email 6 | Day 12 | signup_date + 12 days | | Email 7 | Day 14 | signup_date + 14 days |
If notion_db_url is not provided, create a new Notion database. Use the Notion MCP notion-create-database or create a database page manually.
Database schema:
| Property | Type | Description | |----------|------|-------------| | Name | Title | Person's full name | | Company | Text | Company name | | Role Bucket | Select (Sales, Marketing, Growth/RevOps, Founder) | Classified role | | LinkedIn URL | URL | Profile link | | Signup Date | Date | When they signed up | | Status | Select (New, Email 1 Sent, Email 2 Sent, ..., All Sent) | Sending progress tracker | | Person Summary | Text | Research notes on the person | | Company Summary | Text | Research notes on the company | | Email 1 Subject | Text | Subject line | | Email 1 Body | Text | Full email body | | Email 1 Send Date | Date | When to send | | Email 2 Subject | Text | Subject line | | Email 2 Body | Text | Full email body | | Email 2 Send Date | Date | When to send | | Email 3 Subject | Text | Subject line | | Email 3 Body | Text | Full email body | | Email 3 Send Date | Date | When to send | | Email 4 Subject | Text | Subject line | | Email 4 Body | Text | Full email body | | Email 4 Send Date | Date | When to send | | Email 5 Subject | Text | Subject line | | Email 5 Body | Text | Template — fill live on send date | | Email 5 Send Date | Date | When to send | | Email 6 Subject | Text | Subject line | | Email 6 Body | Text | Full email body | | Email 6 Send Date | Date | When to send | | Email 7 Subject | Text | Subject line | | Email 7 Body | Text | Full email body | | Email 7 Send Date | Date | When to send | | Notes | Text | Swap notes, activation variants, special observations |
Use notion-create-pages with the database as parent. Fill all properties from the generated content.
In the Notes column, include:
Confirm to the user:
Added {{name}} ({{role_bucket}}) at {{company}} to the email sequence.
- Email 1 ready to send: {{email_1_send_date}}
- Email 2 ready to send: {{email_2_send_date}} ({{role_bucket}} variant: {{use_case_1}})
- ...through Email 7 on {{email_7_send_date}}
- Company summary: {{company_summary_short}}
When given multiple signups at once:
{linkedin_url, company_domain, signup_date} entries| # | Name | Company | Role | Email 1 Date | Email 7 Date | |---|------|---------|------|-------------|-------------| | 1 | ... | ... | ... | ... | ... |
These are non-negotiable — every generated email must follow them:
Input:
linkedin_url: https://www.linkedin.com/in/jamesmith
company_domain: posthog.com
signup_date: 2026-03-10
Research findings:
Email 2 personalization (Growth/RevOps variant):
Since you're running growth at PostHog, this one's for you: ... Given PostHog's open-source PLG motion and the Amplitude/Mixpanel competitive landscape, the audit's competitive positioning section will show you exactly where PostHog's content gaps are vs. those incumbents — and the white space map tends to surface channels that open-source companies underinvest in.
That level of specificity — naming their competitors, referencing their PLG motion, noting the open-source angle — is what makes the email feel personal rather than templated.
notion-create-pages, notion-fetch, optionally notion-create-database)references/email-templates.md in this skill's directorycontent-media
Takes an existing screen recording or demo video and adds professional zoom/pan effects synchronized to the narration. Uses transcript-driven zoom targeting and Remotion for rendering. Optionally replaces audio with a soundtrack.
tools
Repurposes long-form video (podcasts, interviews, talks) into short-form vertical clips for Instagram Reels, TikTok, and YouTube Shorts. Handles transcription, moment selection, clip extraction, speaker-tracked reframing (16:9 to 9:16), and animated captions.
development
Creates talking head videos from any source material (docs, changelogs, blog posts, notes, transcripts). Produces multi-scene videos with avatar narration over screenshots/images using HeyGen v2 API. Supports Quick Shot and Full Producer modes.
tools
Generates Instagram-ready product reels from any e-commerce product page URL. Scrapes product images, classifies by type, generates AI-animated clips via Higgsfield API, creates text overlays with style presets, and composes a 15-20 second reel with music. Supports model-based and product-only reels.