Communitygithub.com

lexuanthanhhy/MKT.LANDINGPAGE.SKILLS

为销售落地页设置基于SMTP的邮件自动回复器——用户填写表单(姓名/电话/邮箱)后自动发送邮件,不绑定任何特定邮件提供商。该技能会(1)请用户选择SMTP提供商(Gmail/Google Workspace、Resend SMTP、SendGrid、Mailgun、Brevo、Zoho或越南主机的自定义SMTP)并检测所用的Next.js框架;(2)从`offer.json`和`conversion-copy.md`(来自`/biz-offer-alex-hormozi`)读取上下文,或直接通过`ui-ux-pro-max`读取已构建的Next.js项目(`app/page.tsx`文件),或读取已部署的HTML落地页以理解产品卖点、理想结果、机制和赠品。注意:`biz-sales-page-layout`技能已于2026-05-14废弃——新流程跳过layout/copy.json;(3)**草拟2封邮件**:邮件A——自动回复发送给潜在客户(热情欢迎并交付相应产品类型的引流磁铁/预订确认/支付链接),邮件B——通知发送给网站所有者(潜在客户提醒及联系方式);(4)**在将邮件内容写入代码前先展示草稿供用户审查和编辑**;(5)安装`nodemailer`。

MKT.LANDINGPAGE.SKILLS 是什么?

该技能旨在为销售落地页构建一个完整、灵活的SMTP邮件自动回复系统。核心功能是当用户(潜在客户)在落地页提交包含姓名、电话和邮箱的表单后,立即自动发送两封邮件:一封为个性化的欢迎邮件(邮件A)给潜在客户,另一封为新潜在客户提醒通知(邮件B)给网站所有者。该技能最大的特点是**不绑定任何特定邮件服务商**,采用了开放式的SMTP架构,支持Gmail、Resend、SendGrid、Mailgun、Brevo、Zoho以及越南主机的自定义SMTP等7种提供商,用户可自由选择。它通过读取项目上下文(如`offer.json`和`conversion-copy.md`,或直接解析Next.js的`page.tsx`或已部署的HTML)来深入理解产品卖点,从而生成针对不同产品类型(如免费引流磁铁、免费咨询预约、低价课程付款提醒、高价销售电话跟进以及付费后引导)的5种邮件模式。工作流程分为7个阶段:检测技术栈、选择SMTP提供商、收集上下文、选择邮件模式、草拟并展示邮件供用户审查和编辑、编写集成代码、提供提供商设置和测试计划。该技能强调用户对邮件内容(品牌资产)的最终控制权,不会自动发送测试邮件,确保安全性和灵活性。

兼容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/lexuanthanhhy/MKT.LANDINGPAGE.SKILLS/tree/main/.claude/skills/biz-email-setup

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

Biz SMTP 表单自动回复器 — 潜在客户填写表单后自动发送邮件

此技能将落地页上的注册表单(符合越南流量标准的姓名/电话/邮箱)转变为在用户提交表单后立即发送的2封自动邮件:(A) 发送给潜在客户的热情欢迎邮件,(B) 发送给网站所有者的通知邮件。邮件将根据来自 biz-* 流程的现有上下文为每个产品定制草稿(而非通用的“感谢您的注册,我们会尽快与您联系”——那是在浪费潜在客户)。

核心理念:邮件自动回复是黄金时刻。潜在客户刚点击提交按钮 = 处于意图巅峰期。30秒内到达的邮件必须 (1) 确认他们提交成功,(2) 交付CTA中承诺的内容(引流磁铁/预订/支付链接),(3) 明确下一步的期望。一封好的自动回复邮件 = 将20-40%的潜在客户从冷淡转化为热情。一封通用邮件 = 潜在客户屏蔽发件人或24小时内忘记品牌名称。

为什么选择SMTP(不锁定一个提供商):SMTP是开放标准——用户可以选择适合预算、地区及合规要求的提供商。Gmail SMTP免费每天500封(适用于每天<50个潜在客户的落地页),Resend SMTP每月3000封,SendGrid每天100封永久免费,Brevo(越南流行)每天300封免费,越南主机商(Mắt Bão/PA/Inet)通常赠送SMTP。代码使用nodemailer——更换提供商只需更改4个环境变量,无需修改代码。避免供应商锁定。

输出技能:代码补丁 + 2封响应式HTML邮件草稿 + 环境变量列表 + 测试计划。技能不会自动发送测试邮件——用户必须首先确认草稿,因为引流磁铁链接、品牌语气和紧迫感措辞均属于用户的资产。


何时使用此技能

  • 用户刚通过/biz-deploy-vercel部署完毕落地页,但表单提交后无响应。
  • 用户已有落地页(Next.js, Vite或Vercel上的静态HTML)并希望接入邮件自动回复。
  • 用户正在新建项目,希望从开始就集成邮件功能,然后再部署。
  • 用户已有Gmail/Google Workspace,希望利用免费SMTP,而不是创建新的提供商账户。
  • 用户有越南主机商(Mắt Bão, PA, Inet)提供现成SMTP服务器并希望使用。

在以下情况请勿使用此技能:

  • 用户希望进行邮件营销广播(新闻通讯、7-30天滴灌活动)→ 更适合使用Mailchimp/ConvertKit/MailerLite。
  • 用户希望使用SMS/Zalo OA自动回复 → 不同的使用场景。
  • 用户希望集成CRM(将潜在客户导入Hubspot/Pipedrive/Notion数据库)→ 其他技能。
  • 用户需要大量冷邮件推广 → 应使用Instantly/Smartlead,而非事务性邮件。

总体工作流程(7个阶段)

阶段0:检测项目技术栈(Next.js App / Pages / Vite / 静态HTML)
       ↓
阶段1:选择SMTP提供商(Gmail / Resend SMTP / SendGrid / Mailgun / Brevo / Zoho / 自定义)
       ↓
阶段2:收集上下文(offer.json + conversion-copy.md,或读取Next.js app/page.tsx,或读取已部署的HTML)
       ↓
阶段3:选择邮件模式(引流磁铁 / 预订 / 支付 / 培育)
       ↓
阶段4:草拟2封邮件(自动回复 + 网站所有者通知)—— 展示给用户
       ↓
阶段5:用户审查和编辑 —— 迭代直到用户批准
       ↓
阶段6:编写代码(安装 nodemailer + API 路由 + 表单绑定 + 环境变量)
       ↓
阶段7:提供商设置 + 测试计划 —— 指导如何获取SMTP凭据、验证域名(如果需要)、进行在线测试

每个阶段停等待用户确认——尤其是阶段1(提供商选择)、阶段4-5(邮件内容)、阶段7(提供商DNS),因为这些是用户的品牌资产。代码生成在阶段6,技能会更为主动。


阶段0 — 检测项目技术栈

读取项目的根文件以确定技术栈。技术栈决定了:API路由放置位置、nodemailer的导入语法、表单绑定类型(使用fetch还是form action)。

检测到的文件技术栈API路由路径表单绑定
next.config.js/mjs/ts + app/ 文件夹Next.js App Routerapp/api/submit/route.ts客户端组件 fetch('/api/submit')
next.config.js/mjs/ts + pages/ 文件夹Next.js Pages Routerpages/api/submit.ts客户端组件 fetch('/api/submit')
vite.config.js/tsVite (React/Vue/Svelte)api/submit.js (Vercel 函数)客户端组件 fetch('/api/submit')
package.json 无框架,有 index.html静态HTMLapi/submit.js (Vercel 函数)内联 <script> 使用 fetch('/api/submit')
无本地项目,仅有URL已部署的现有页面需要用户先克隆仓库或提供仓库路径—

进一步读取以确定表单字段:

  • 在代码中查找 <form> → 列出所有现有的 <input name="...">
  • 默认预期(根据项目记忆):name, phone, email。某些页面可能包含:company, message, budget, utm_source。
  • 如果表单尚不存在 → 技能将在阶段6创建一个包含最少3个字段(姓名/电话/邮箱)的新表单。

重要提示:如果用户没有本地项目(仅部署了URL),则暂停询问:"Anh/chị có repo local để em wire code không? Em cần edit file source. Nếu chỉ có URL, anh/chị clone repo về và chỉ em đường dẫn nhé." 无法仅通过URL编写代码。


阶段1 — 选择SMTP提供商

请用户从7个提供商中选择1个。每个提供商有不同的SMTP配置(主机/端口/认证),技能在用户选择后会自动填写环境变量模板。

#提供商免费层适用场景SMTP主机端口备注
1Gmail / Google Workspace每天500封用户已有Gmail/Workspace,流量低smtp.gmail.com587 (STARTTLS)必须使用应用专用密码(2FA),不要使用主密码
2Resend SMTP每月3000封需要高送达率 + 美观日志,可以设置DNSsmtp.resend.com587用户 = resend,密码 = API key。需要验证域名才能从自定义 @brand.vn 发送
3SendGrid SMTP每天100封永久免费技术栈已熟悉SendGrid,需要webhooksmtp.sendgrid.net587用户 = apikey 字面值,密码 = API key
4Mailgun SMTP每天100封 × 3个月欧盟/美国地区,对开发者友好smtp.mailgun.org (美国) 或 smtp.eu.mailgun.org (欧盟)587用户/密码来自Mailgun域名设置
5Brevo (Sendinblue) SMTP每天300封永久免费越南流行,免费层最广,有越南支持smtp-relay.brevo.com587用户 = 登录邮箱,密码 = SMTP key(不同于API key)
6Zoho Mail SMTP每天5封免费,$1/用户/月用户已使用Zoho Workspacesmtp.zoho.com587如果开启2FA,需要应用专用密码
7自定义SMTP取决于主机提供商越南主机商(Mắt Bão/PA/Inet/Nhân Hòa)赠送SMTP,或使用自托管的Postfix用户提供用户提供用户需粘贴完整主机/端口/用户/密码

根据产品类型的默认推荐:

  • 落地页每天<50个潜在客户,用户有Gmail → Gmail SMTP(零成本,5分钟设置)。
  • 落地页每天>50个潜在客户或需要专业级送达率 → Brevo(免费每天300封,在越南送达率好)或 Resend SMTP(每月3000封,日志美观)。
  • 用户希望迁移无忧,将来可自托管 → 从一开始就使用自定义SMTP。

向用户提问的格式:

Anh/chị muốn dùng SMTP provider nào để gửi email tự động?

1. Gmail / Google Workspace (free 500/ngày, dễ nhất nếu đã có Gmail)
2. Resend SMTP (free 3000/tháng, deliverability cao, cần verify domain)
3. SendGrid SMTP (free 100/ngày forever, đã quen API)
4. Mailgun SMTP (free 100/ngày × 3 tháng)
5. Brevo / Sendinblue SMTP (free 300/ngày, popular VN)
6. Zoho Mail SMTP (nếu đã xài Zoho Workspace)
7. Custom SMTP (hosting VN của anh/chị có sẵn / tự host)

Nếu chưa có sẵn account nào, em đề xuất [Gmail nếu traffic thấp / Brevo nếu cần deliverability cao]. Anh/chị chọn số mấy?

用户选择后 → 保存,以便在阶段6注入环境变量模板,并在阶段7根据正确的提供商指导获取凭据。

⚠️ 重要 — 安全性:SMTP凭据(尤其是Gmail应用专用密码)拥有从用户账户发送邮件的权限。切勿将其硬编码到源代码中。始终使用环境变量。如果意外提交,警告用户立即轮换。


阶段2 — 收集上下文

目标:对产品足够深入地理解,以便草拟的邮件不通用。3种输入模式:

模式A — 存在流程产物(最丰富)

用户刚刚运行了/biz-offer-alex-hormozi和/或ui-ux-pro-max → 拥有以下文件:

  • output/<case-slug>/offer.json — 细分市场、理想成果、机制、赠品堆叠、保证、定价(主要真相来源)
  • output/<case-slug>/conversion-copy.md — 即用型英雄区块(标题、副标题、CTA措辞)
  • output/<case-slug>/landing-page/app/page.tsx — 当前已构建的Next.js销售页面(读取以了解正在使用的板块和表单字段)

⚠️ 2026-05-14更新: 旧流程包含 layout.json + copy.json(来自已废弃的biz-sales-page-layout)——新流程跳过这两个文件。只需 offer.json + 读取 page.tsx 即可获得足够的上下文。

读取上述3个来源。提取用于邮件的如下信息:

  • 细分市场 + 理想成果 → 个性化主题行("[Tên], lộ trình AI Agent 8 tuần đã sẵn sàng" 而非 "Welcome")
  • 机制名称 → 在正文中强化("Hệ thống PROMPT framework anh/chị sắp học...")
  • 赠品堆叠 → 在邮件中列出(如果产品是免费/低价且可立即交付赠品)
  • 保证文案 → 在邮件中引用以减轻焦虑
  • CTA措辞 → 在邮件的最终CTA中呼应

模式B — 有落地页但无JSON

用户有已部署的HTML但未运行biz-offer/biz-sales-page。技能读取HTML:

  • curl -s <URL> 或读取本地 index.html 文件
  • 解析hero区域h1、副标题、CTA按钮文案、定价区域、保证区域
  • 从中推断产品类型 + 细分市场

模式B在80%的情况下足够好,但邮件的个性化程度不如模式A。建议用户:"可以运行/biz-offer-alex-hormozi来获取offer.json然后再回来,邮件质量会更高。或者继续使用模式B。"

模式C — 没有任何上下文

用户只有表单HTML,没有上下文。技能必须快速提问5个问题:

  1. 您销售的产品/服务是什么?(一句话概括)
  2. 用户填写表单后,您想发送给他们什么?(可下载的PDF / 预订链接 / 支付链接 / 仅确认稍后致电)
  3. 品牌名称 + 发件人名称(将显示在 "From:" 中)
  4. 您希望接收新潜在客户通知的邮箱地址
  5. 您拥有的域名,用于验证SPF/DKIM(如果选择Resend/SendGrid/Mailgun/Brevo — Gmail则跳过)

阶段3 — 选择邮件模式

2触发器模型(适用于有结账流程的产品):对于低价课程/数字产品且有在线支付,存在2个不同的触发点,发送2封不同的邮件。不要将它们合并到一封邮件中。

潜在客户在落地页填写表单
         ↓
   [触发点A — /api/submit]
         ↓
   邮件P3(付款前提醒,简洁版)
         ↓
潜在客户完成支付 → 支付提供商webhook
         ↓
   [触发点B — /api/payment-webhook]
         ↓
   邮件P5(购买后引导,完整版)

内容规则:

  • P3(付款前):仅包含支付链接 + 简短保证 + 紧迫感。不要列出全部交付物/赠品堆叠——潜在客户尚未"赚取",列出会降低支付紧迫感。
  • P5(付款后):交付所有内容——访问链接、全部交付物、赠品堆叠、群组链接、办公时间表、1个跟进问题以个性化互动。这才是真正的黄金时刻。

(阅读记忆feedback_email-autoresponder-2-stage-flow以获取详细理由。)


根据阶段2的上下文,选择合适的模式。阅读references/email-formulas.md以获取详细的越南语模板。

模式触发器使用场景主题行提示
P1 — 引流磁铁交付表单提交产品 = 下载PDF/电子书/模板/荟萃分析/免费清单"[Tên], tài liệu [X] đã sẵn sàng — mở file ngay 👇"
P2 — 预订确认表单提交产品 = 预约通话/咨询/演示/免费策略会"[Tên], đã ghi nhận đăng ký buổi tư vấn — bước tiếp theo bên trong"
P3 — 付款前提醒表单提交(尚未支付)产品 = 低价产品(199K-3M VND),邮件引导至结账"[Tên], link thanh toán [Khóa X] — giữ giá ưu đãi 24h ⏰"
P4 — 培育(销售电话即将进行)表单提交产品 = 高价教练/代理服务(5M-50M+ VND),销售团队将在24小时内致电"[Tên], em [Người gọi] sẽ liên hệ trong 24h — checklist chuẩn bị bên trong"
P5 — 购买后引导支付Webhook潜在客户刚完成支付——交付全部价值 + 1个个性化问题"🎉 Chào mừng [Tên] vào [Khóa X] — mở khoá ngay"

选择模式的规则:

  • 产品 = 免费下载/培训 → 仅P1(1个触发器,1封邮件)。
  • 产品 = 免费预订通话 → 仅P2(1个触发器,1封邮件)。
  • 产品 = 低价商品带在线支付(Stripe/Momo/ZaloPay/Sepay) → P3 + P5(2个触发器,2封邮件)。
  • 产品 = 高价销售电话 → 仅P4,通过销售团队跟进(成交后的引导是另一个流程)。

技能推荐合适的模式 + 理由,请求用户确认。例如:"Dựa vào offer.json em thấy đây là khoá 1.99M VND có payment integration. Em đề xuất setup 2 email: P3 (nhắc thanh toán khi điền form) + P5 (onboarding sau khi pay xong + 1 câu hỏi personalize). Anh/chị đồng ý hay chỉ muốn 1 email P3 trước?"


阶段4 — 草拟2封邮件

生成 2封纯越南语邮件(使用anh/chị称谓),响应式HTML。

邮件A — 发送给潜在客户的自动回复

6区块结构(阅读references/email-formulas.md以获取每个模式的具体措辞):

  1. 主题行 — 使用 {{name}} 进行个性化,少于50个字符,如果适合品牌语气则在末尾添加1个轻量emoji(✉️ 👇 ✓),避免垃圾邮件触发器("FREE", "$$", "guarantee"大写)。
  2. 预览文本 — 主题行下方收件箱中显示的1行文本,说明打开邮件的价值。
  3. 问候语 — "Chào anh/chị {{name}}," — 不使用"Dear",不使用"Xin chào quý khách"。
  4. 正文 — 根据所选模式。规则:
    • 简短(少于200词)。
    • 包含1个清晰的主要CTA链接/按钮。
    • 从上下文中明确引用产品名称/机制(而不是"sản phẩm của chúng tôi")。
    • 如果模式为P3/P4 → 包含1个紧迫性提醒 + 1个保证(担保)。
  5. 签名 — 发件人姓名 + 品牌名称 + 1个联系方式链接(Zalo/电话/网站)。
  6. 页脚 — 地址(反垃圾邮件法要求)+ 取消订阅链接(出于合规性需要,即使是事务性邮件也应有)。

邮件B — 发送给网站所有者的通知

结构(根据模式略有不同):

  1. 主题行 — "[🔔] 新潜在客户:{{name}} — [产品名称]"
  2. 正文 — 摘要表格:
    • 姓名:{{name}}
    • 电话:{{phone}}
    • 邮箱:{{email}}
    • 时间戳:[当前时间]
    • 来源:{{formSource}}
    • 下一步:根据模式。如果P3 → 提醒潜在客户尚未支付("等待支付——链接在邮件A中已发送")。如果P4 → 提醒销售团队在X小时内致电。
  3. 关键信息 — 额外上下文:UTM参数(如果表单收集)、是否有客户历史、未完成支付金额。
  4. 页脚 — 用于监控的无关紧要注释。

展示用于审查的格式:

  • 邮件A和B分别显示为预览块(主题行 + 带有 {{...}} 变量占位符的渲染HTML)。
  • 使用清晰的标题分隔,例如 "--- 自动回复(发送给潜在客户)---" 和 "--- 通知(发送给您)---"。

⚠️ 关键:展示草稿以供审查后,技能等待用户反馈。仅在此之后才继续到阶段6(编写代码)。不进行演示,不"顺便"编写代码。


阶段5 — 用户审查和编辑

用户被展示2封草稿邮件。他们可以:

  • 批准两者("已批准,继续")
  • 要求修改特定邮件或部分("主题行太长,缩短,将加粗改为斜体")
  • 完全重写("让我给你新的副本" → 粘贴,技能更新模板)
  • 添加变量("添加'价格'字段" → 技能在适当位置添加 {{price}})
  • 询问解释或替代方案("为什么选择这个模式?" → 技能引用规则并推荐模式,可能需要重新运行阶段3)

迭代限制:无严格限制,但用户确认("已批准")后,技能锁定内容并在阶段6中使用。如果用户想再次更改,则重新运行阶段4-5。


阶段6 — 编写代码

在用户批准草稿后开始。仅在此之后。

在Next.js(App Router)中的示例代码实现:

文件:app/api/submit/route.ts

import { NextRequest, NextResponse } from 'next/server';
import nodemailer from 'nodemailer';

const transporter = nodemailer.createTransport({
  host: process.env.SMTP_HOST,
  port: parseInt(process.env.SMTP_PORT || '587'),
  auth: {
    user: process.env.SMTP_USER,
    pass: process.env.SMTP_PASS,
  },
});

export async function POST(request: NextRequest) {
  const body = await request.json();
  const { name, phone, email } = body;

  // 发送邮件A — 给潜在客户
  await transporter.sendMail({
    from: `"${process.env.BRAND_NAME}" <${process.env.SMTP_FROM_EMAIL}>`,
    to: email,
    subject: `[Tên], tài liệu [X] đã sẵn sàng — mở file ngay 👇`,
    html: `<!-- 邮件A的HTML内容,由阶段4-5生成,替换 {{name}} 等 -->`,
  });

  // 发送邮件B — 给网站所有者
  await transporter.sendMail({
    from: `"${process.env.BRAND_NAME}" <${process.env.SMTP_FROM_EMAIL}>`,
    to: process.env.OWNER_NOTIFY_EMAIL,
    subject: `[🔔] 新潜在客户:${name} — [产品名称]`,
    html: `<!-- 邮件B的HTML内容,由阶段4-5生成,替换 {{name}} 等 -->`,
  });

  return NextResponse.json({ success: true });
}

环境变量模板:

# 邮件提供商SMTP凭据
SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
[email protected]
SMTP_PASS=your-app-password

[email protected]

# 接收新潜在客户通知的所属者邮箱
[email protected]

# 品牌名称(用于邮件的From:名称)
BRAND_NAME=Thương hiệu của bạn

注意:BRAND_NAME 用于发件人显示名称。如果提供商支持,SMTP_FROM_EMAIL 可以是一个验证过的域名(例如 [email protected])。


阶段7 — 提供商设置 + 测试计划

在每个选中提供商的最后,列出具体步骤。

示例:Gmail SMTP

  1. 在您的Google账户中启用2FA(如果尚未启用)。
  2. 转到 https://myaccount.google.com/apppasswords → 创建一个名为"Landing Page SMTP"的应用专用密码。
  3. 将SMTP_HOST设置为smtp.gmail.com,SMTP_PORT设置为587,SMTP_USER设置为您的Gmail邮箱,SMTP_PASS设置为上面第2步生成的应用专用密码。
  4. 重要:Gmail SMTP每天限制约500封。如果超过此限制,邮件将失败。

测试计划(验证邮件有效性的通用步骤)

  1. 部署代码后,在您的落地页上填写表单,使用测试姓名、电话、邮箱(使用个人邮箱,不要使用该表单将使用的邮箱)。
  2. 检查邮件A是否在60秒内到达测试邮箱。如果没有:检查服务器日志(Vercel Functions / Node.js 日志)中的错误。常见错误:SMTP凭据错误、Gmail应用专用密码过期、端口587被防火墙阻止。
  3. 检查邮件B是否到达您的网站所有者通知邮箱。
  4. 检查邮件A中的链接(CTA)是否有效。
  5. 可选:使用 https://www.mail-tester.com 检查邮件A的垃圾邮件分数(在发送测试邮件时使用专用测试邮箱)。如果分数>5/10,通常认为不错。

附录:邮件公式参考

(完整的模板位于 references/email-formulas.md 文件中。以下是提取的核心规则。)

  • 主题行:始终使用 {{name}}。前4个词中承诺利益。避免ALL CAPS。
  • 问候语在越南文化中很重要:"Chào anh/chị {{name}},"。不要使用"Gửi"或"Dear"。
  • CTA链接/按钮:至少1个。使用动作导向的措辞。如果模式P3 → 链接是支付页面。如果模式P1 → 链接是直接下载或带访问密码的页面。
  • 签名:姓名、品牌名称、1个Zalo或电话号码。在品牌的地域市场内建立信任。
  • 页脚:包含邮寄地址(或品牌注册办公地址)+ 取消订阅。即使对于事务性邮件,取消订阅有助于避免Gmail收件箱中的垃圾邮件投诉。

由 skills/cursor/pro business-skills 于2026-05-14生成

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

lexuanthanhhy/MKT.LANDINGPAGE.SKILLS

Best practices for Remotion - Video creation in React

lexuanthanhhy/MKT.LANDINGPAGE.SKILLS

Scaffold trang `/admin` CRM-style trực quan vào Next.js project (Supabase backend) — KHÔNG còn variant Vercel KV. Layout 1CRM-inspired: sidebar 3 tab (Tổng quan / Khách hàng / Email marketing) + popup nhập mã đăng nhập. **Tab Tổng quan**: 4 KPI cards (Tổng leads / Đã thanh toán / Tỷ lệ chuyển đổi / Doanh thu) có delta arrow vs kỳ trước, line chart leads+paid+revenue theo ngày dùng `recharts`, donut trạng thái paid/pending/expired, period selector pill 7d/30d/90d, list 5 thanh toán gần nhất. **Tab Khách hàng**: bảng leads + search + filter trạng thái + filter ngày + CSV export. **Tab Email marketing**: form soạn chiến dịch (tên + tiêu đề + body chọn định dạng **văn bản thường HOẶC HTML** + placeholder `{{name}}` + audience 4 loại all/paid/pending/last_days + tên người gửi) — có nút **Xem trước** mở modal iframe render đúng email thật (text → auto convert + wrap khung; HTML fragment → wrap khung, HTML đầy đủ giữ nguyên) → gửi bulk qua SMTP (reuse `nodemailer` của `biz-email-setup` — KHÔN

lexuanthanhhy/MKT.LANDINGPAGE.SKILLS

Deploy landing page / website (React, Next.js, Vite, static HTML) lên Vercel — tự kiểm tra Vercel CLI hoặc Vercel MCP đã cài chưa, nếu chưa thì cài qua npm/pnpm và hướng dẫn user authenticate (vercel login), tự detect framework (Next.js / Vite / CRA / static), auto-generate vercel.json khi cần, chạy `vercel --prod`, trả về live URL + inspect URL + hướng dẫn custom domain. USE WHEN user says 'deploy lên vercel', 'đẩy landing page lên vercel', 'publish website', 'go live', 'deploy nextjs', 'deploy react', 'deploy vite', 'tạo URL live', 'đưa lên production', 'biz-deploy-vercel', 'host landing page', 'vercel deploy', 'ship lên vercel', 'đẩy code lên vercel'. Skill này áp dụng cho cả case dùng Vercel CLI lẫn Vercel MCP server.

lexuanthanhhy/MKT.LANDINGPAGE.SKILLS

Cài chatbot AI dạng floating widget góc dưới phải vào project Next.js có sẵn (App Router hoặc Pages Router), responsive đầy đủ web + tablet + mobile, gọi LLM qua OpenRouter (mặc định google/gemini-3-flash-preview, có thể đổi sang anthropic/claude-sonnet-4.6), streaming response, RENDER MARKDOWN trong assistant bubble (bold / list / link / code) qua react-markdown + remark-gfm — KHÔNG hiện raw **bold** dạng text — có knowledge base từ FAQ + tài liệu sản phẩm/khóa học do user cung cấp để chatbot tự động trả lời khách hàng, và TỰ ĐỘNG EXTRACT + LƯU LEAD (tên + SĐT + email) vào Upstash Redis/Vercel KV dưới namespace `chat-lead:{phone}` khi user cung cấp đầy đủ thông tin trong chat — dedupe theo SĐT, TTL 90 ngày, fire-and-forget không block stream. Skill tự detect số lượng project Next.js — nếu có nhiều hơn 1 sẽ hỏi user chọn project nào để cài; tự detect TypeScript/JS, App Router/Pages Router, Tailwind/CSS module, KV/Upstash availability (skip auto-save nếu chưa có); tự install react-markd

lexuanthanhhy/MKT.LANDINGPAGE.SKILLS

Đóng gói offer **không thể chối từ** (grand slam offer) theo phương pháp Alex Hormozi ($100M Offers) — nhận input pains/gains/customer jobs theo Value Proposition Design (Osterwalder 2014) + sản phẩm/dịch vụ, rồi sinh ra: (1) markdown report tiếng Việt đầy đủ Value Equation scoring + Core Offer + 3-4 Bonus stack + Guarantee + Urgency + Pricing, (2) offer.json structured cho pipeline downstream (`ui-ux-pro-max` build sales page production-ready), (3) conversion copy block (headline + subheadline + CTA) sẵn sàng paste landing page. 2 input mode: (B) user paste sẵn pains + gains + product, (C) user chỉ có sản phẩm — skill phỏng vấn theo VPD framework để surface pain/gain trước. Bonus stack mode hybrid: skill brainstorm 5-7 candidate có justification value rồi user pick/chỉnh 3-4 cái. Tiếng Việt thuần (xưng anh/chị), giá VND charm pricing (X99K), 3-tier decoy structure. USE WHEN user says 'đóng gói offer', 'tạo offer', 'thiết kế offer Hormozi', 'grand slam offer', 'value stack', 'offer sta

lexuanthanhhy/MKT.LANDINGPAGE.SKILLS

Nâng cấp copy sales page tiếng Việt — biến copy có sẵn (từ `offer.json` + `conversion-copy.md` của `/biz-offer-alex-hormozi`, HOẶC từ Next.js project đã build qua `ui-ux-pro-max`, HOẶC user paste block copy bất kỳ) thành **copy chất lượng cao chốt đơn**: headline punchy hơn, pain agitation đau hơn, mechanism rõ hơn, benefit cụ thể hơn, FAQ xử lý đúng objection của thị trường VN, CTA mạnh hơn. Skill này có 3 INTENSITY LEVEL: (1) **Polish** — light edit + power word + sửa nhịp; (2) **Conversion-optimized** — rewrite 5 block critical + tạo A/B variants cho hero/CTA; (3) **Sales-letter** — long-form story-driven full rewrite kèm P.S.. Mỗi section áp dụng đúng formula thuyết phục (PAR cho pain, BAB cho solution, FEP cho benefit, PVEN cho final CTA, Star-Chain-Hook cho testimonial). Output gồm 4 file: `copy-upgraded.md`, `copy-variants.md` (A/B test bank — 3 hero + 3 CTA + 3 final-CTA), `copy-changes.md` (diff Trước/Sau + lý do), `copy.json` (structured downstream). Giọng văn tiếng Việt thuầ

lexuanthanhhy/MKT.LANDINGPAGE.SKILLS

⚠️ DEPRECATED (2026-05-14) — Skill này KHÔNG còn trong pipeline chuẩn. Quy trình mới đã bỏ bước wireframe markdown trung gian: sau `/biz-offer-alex-hormozi` đi THẲNG sang `ui-ux-pro-max` để build Next.js sales page production-ready (có design language nhất quán: style + palette + font pairing, không phải Tailwind defaults). Lý do deprecate: wireframe markdown làm thêm 1 bước trung gian không tạo giá trị — `ui-ux-pro-max` đọc trực tiếp `offer.json` đã đầy đủ anchor + core + bonus + guarantee + urgency + pricing rồi ra HTML production luôn. Chỉ dùng skill này KHI user EXPLICITLY yêu cầu wireframe markdown để review/in/share trước khi build code (rare case). KHÔNG trigger trên các keyword 'tạo sales page', 'tạo landing page bán hàng' nữa — những keyword đó giờ trigger `ui-ux-pro-max`.

lexuanthanhhy/MKT.LANDINGPAGE.SKILLS

End-to-end Sepay VietQR payment infrastructure cho landing page Next.js — guide user setup Sepay account + bank linking + scaffold đầy đủ payment flow trong project. Skill này xử lý 7 phase: (0) detect Next.js stack + **HỎI user chọn lead store backend** (Vercel KV hoặc Supabase Free Postgres — default recommend Supabase do free tier rộng hơn ~50× + có SQL + admin UI), (1) GUIDE user đăng ký Sepay account tại my.sepay.vn + link bank account VN (Vietcombank/Techcombank/MB/ACB/VPBank/BIDV/...) + lấy API key + setup webhook URL trên Sepay dashboard, (2A nếu chọn KV) setup Vercel KV (install `@vercel/kv` + KV namespace + 4 env vars KV_*), (2B nếu chọn Supabase) setup Supabase project (tạo project tại Singapore region + chạy migration SQL tạo 4 bảng leads/phone_index/order_counter/webhook_dedup với pg_cron TTL cleanup + RLS deny-all + lấy SUPABASE_URL + SUPABASE_SERVICE_ROLE_KEY + Vercel Cron ping `/api/health` mỗi 6 ngày chống auto-pause), (3) scaffold `lib/leads-store.ts` (thin re-export

lexuanthanhhy/MKT.LANDINGPAGE.SKILLS

Setup Telegram bot notification cho thanh toán thành công từ Sepay webhook trong Next.js project. Skill này: (1) hướng dẫn user 3 bước tạo Telegram bot riêng qua @BotFather + lấy bot token + chat_id (qua @userinfobot cho chat 1-1, hoặc /getUpdates API cho group), (2) tạo helper function `sendTelegramNotification()` reusable trong `lib/telegram.ts`, (3) detect existing Sepay webhook route trong project (thường là `/api/sepay-webhook`, `/api/payment-success`, hoặc tương đương) và wire Telegram call CÙNG CHỖ với email auto-responder (Resend) — gửi parallel qua `Promise.allSettled` để Telegram fail KHÔNG block 200 response trả Sepay (Sepay sẽ retry webhook nếu nhận non-200, gây duplicate notification), (4) draft message format mặc định tiếng Việt: emoji + tên khách + SĐT + email + amount (charm pricing VND định dạng `499.000đ`) + tên sản phẩm + timestamp giờ VN dd/mm/yyyy HH:mm, (5) update `.env.local` với `TELEGRAM_BOT_TOKEN` + `TELEGRAM_CHAT_ID`, add vào `.gitignore`, nhắc user paste vào

lexuanthanhhy/MKT.LANDINGPAGE.SKILLS

Convert a single MP3 voiceover file into a single HeyGen avatar lip-sync MP4 video. Single-purpose — no planning, no SRT, no chunking, no Remotion compositing. Hybrid path — REST upload (helper script) + HeyGen MCP for video creation, because the post-2026 MCP no longer exposes an asset-upload tool. Reads avatar look pool (`HEYGEN_AVATAR_LOOKS`) from `.env` and HeyGen API key (`HEYGEN_API_KEY`) for the upload step. USE WHEN user says "tạo video heygen từ mp3", "mp3 to heygen", "heygen mp4 từ audio", "convert mp3 sang heygen video", "tạo avatar video từ file mp3", "lip sync mp3 heygen", "biến mp3 thành video heygen", or any time the user has exactly one MP3 file and wants exactly one HeyGen avatar MP4 out.

lexuanthanhhy/MKT.LANDINGPAGE.SKILLS

Demand-side market research cho digital product / service ở Việt Nam — đo cầu thật + WTP + channel-market fit + defensibility qua keyword volume, marketplace sales (Shopee/Unica/Edumall/Gitiho/KyNa), community signal (FB groups, TikTok hashtag, Zalo OA), competitor pricing, unit economics — không phải macro PESTEL. Output: keyword portfolio + Niche Score 100 điểm 7-dimension có evidence + go/no-go decision + falsification protocol. Force triangulate ≥3 sources cho mỗi claim quan trọng. USE WHEN user says 'nghiên cứu thị trường', 'market research', 'validate niche', 'keyword research', 'demand validation', 'niche có nên làm không', 'có ai làm chưa', 'thị trường đủ lớn không', 'có lời không', 'chọn ngách', 'kiểm tra cầu'. Cũng trigger khi user mô tả 1 ý tưởng kinh doanh cụ thể và muốn check feasibility. Skill này KHÔNG fit: high-ticket transactional sale (BĐS, ô tô), B2B enterprise (sales cycle 6+ tháng), hyper-local geo micro-market (1 toà nhà, 1 phường). KHÔNG làm: macro PESTEL/Porter

lexuanthanhhy/MKT.LANDINGPAGE.SKILLS

Transcribe an MP3 voiceover into an SRT subtitle file and a word-level segments JSON using local OpenAI Whisper. Input is a single MP3 path; output is `<stem>.srt` + `<stem>_segments.json` written next to the MP3 (or to a custom output dir). USE WHEN the user says 'extract srt from mp3', 'trích srt từ mp3', 'transcribe voiceover', 'tạo file srt và segments', 'whisper transcribe', 'bóc transcript có timestamp', 'extract voiceover segments', 'tách SRT từ audio', or any time a downstream skill (plan-short-video-edit, heygen-remotion-short-video-editor) needs an SRT + word-level segments JSON from a voiceover MP3 and one does not already exist.

lexuanthanhhy/MKT.LANDINGPAGE.SKILLS

Convert Vietnamese/English script text to MP3 voiceover using ElevenLabs TTS API. Calls POST /v1/text-to-speech/{voice_id}, streams audio bytes, writes MP3 directly. Locked to Hoang's brand voice ID by default. USE WHEN user says 'tạo mp3 elevenlabs', 'elevenlabs tts', 'eleven labs voice', 'text to speech elevenlabs', 'tạo voiceover elevenlabs', 'đọc text bằng elevenlabs', 'tts elevenlabs to mp3', 'eleven labs script to mp3', 'voiceover bằng elevenlabs', 'giọng elevenlabs'.

lexuanthanhhy/MKT.LANDINGPAGE.SKILLS

End-to-end orchestrator: **script → final MP4 16:9 (1920×1080) podcast-keynote**.

lexuanthanhhy/MKT.LANDINGPAGE.SKILLS

End-to-end short-video pipeline — từ kịch bản (Việt/Anh) ra MP4 TikTok/Reels 9:16 hoàn chỉnh. Orchestrator 3 phase ghép skill có sẵn — (1) TTS provider chọn được giữa `mkt-elevenlabs-tts-to-mp3` (default, voice của Hoàng) hoặc `mkt-video-script-to-mp3` (MiniMax speech-2.8-hd), (2) checkpoint user duyệt MP3, (3) `heygen-mp3-to-mp4` lip-sync avatar HeyGen, (4) delegate Phase 3 packaging cho sub-agent `mkt-full-video-phase3-packager` (transcribe + scene outline + checkpoint + fan-out N scene writers parallel + scaffold + preview Studio). API key + voice ID cho cả 2 provider lưu ở `.env`. USE WHEN user nói "tạo full video từ script", "script to tiktok video", "pipeline full video heygen + hyperframe", "tạo video từ kịch bản đến mp4", "elevenlabs heygen hyperframe full pipeline", "minimax heygen pipeline", "kịch bản ra video tiktok", hoặc có sẵn 1 script + (optional) ảnh b-roll và muốn ra MP4 9:16 đóng gói có captions, SFX, b-roll.

lexuanthanhhy/MKT.LANDINGPAGE.SKILLS

Build a TikTok/Reels/YouTube **landscape 16:9 (1920×1080)** short video from a pre-recorded talking-head MP4 using HyperFrames — transcribe Vietnamese audio, scaffold a complete preview-ready 1920×1080 project with a slide pane (1200px) on the left and a floating avatar frame on the right, GSAP timeline có SPLIT↔PIP transitions (slide full-screen + avatar PIP corner thumbnail), breathing yoyo zoom + beat-driven punch-in trên avatar, 5 scene compositions kiểu "tier-row" pattern (post-stack hook / chats-stack problem / hero-orb solution / counter-row recap / terminal-row CTA), optional cream-paper editorial infographic image slots với `<img onerror>` fallback, 6 SFX wired tại scene boundaries, **NO captions** (giọng avatar là spine). USE WHEN user nói "edit video 16:9 từ HeyGen MP4", "scaffold project landscape", "podcast keynote editor", "talking head + slide editor", "build hyperframes 1920×1080", "tạo project 16:9 từ avatar mp4", "scaffold 16:9 hyperframes", "hyperframe landscape vide

lexuanthanhhy/MKT.LANDINGPAGE.SKILLS

Pipeline đóng gói: từ MP4 quay sẵn (talking head 9:16) tới HyperFrames preview project hoàn chỉnh có captions, SFX, zoom hooks, b-roll toàn cảnh có hiệu ứng rich, và CTA finale.

lexuanthanhhy/MKT.LANDINGPAGE.SKILLS

Audit bài Facebook / Reels / YouTube để phát hiện 4 downward drivers (over-branding, over-production, stock imagery, standardized aesthetic) + frequency-over-quality. Mỗi anti-pattern bị drop ~75% performance nếu hiện diện. USE WHEN user says 'audit content', 'check anti pattern', 'content có lỗi gì không', 'kiểm tra over branding', 'vì sao video bị chết', 'vì sao post không ai xem', 'content audit', 'kiểm tra chất lượng content'.

lexuanthanhhy/MKT.LANDINGPAGE.SKILLS

Tìm viral pattern ở ngành khác (bác sĩ, luật sư, tài chính, bất động sản, thủ công) có thể apply cho niche AI/automation của Hoang. Ngách AI educator VN còn ít format được khai thác — cross-industry adaptation là blue ocean. USE WHEN user says 'tìm format ngành khác', 'cross industry research', 'học format từ ngành khác', 'blue ocean format', 'tìm format chưa ai làm', 'adapt format từ niche khác', 'cross industry viral'.

lexuanthanhhy/MKT.LANDINGPAGE.SKILLS

Rewrite CTA kiểu autocratic (Mua ngay! Follow ngay! Đăng ký liền!) sang 3 variants Democratic / Benevolent / Laissez-faire — reach 85% dân số thay vì chỉ 5% (action-based). Áp dụng cho landing page, caption FB, CTA video, email. USE WHEN user says 'rewrite cta', 'sửa cta', 'cta không autocratic', 'viết lại kêu gọi hành động', 'cta cho landing page', 'cta nhẹ nhàng hơn', 'inclusive cta', 'cta democratic benevolent'.

相关技能