Communitygithub.com

lexuanthanhhy/MKT.LANDINGPAGE.SKILLS

로컬 OpenAI Whisper를 사용하여 MP3 음성 해설을 SRT 자막 파일과 단어 수준 세그먼트 JSON으로 변환합니다. 입력은 단일 MP3 경로이며, 출력은 MP3 파일 옆(또는 사용자 지정 출력 디렉토리)에 `<stem>.srt` + `<stem>_segments.json` 파일로 생성됩니다.

MKT.LANDINGPAGE.SKILLS란 무엇인가요?

이 스킬은 MP3 음성 해설 파일을 SRT 자막 파일과 단어 수준 타임스탬프가 포함된 JSON 파일로 변환하는 전문 도구입니다. 주로 단편 동영상 제작 파이프라인에서 사용되며, 'plan-short-video-edit' 또는 'heygen-remotion-short-video-editor' 같은 다운스트림 스킬이 정확한 자막과 단어별 애니메이션을 위해 필요로 하는 SRT 및 세그먼트 JSON을 제공합니다. 이 스킬은 Claude Code 환경에서 동작하며, 로컬 OpenAI Whisper 모델을 실행하는 기존 스크립트(`heygen-short-video/scripts/transcribe_mp3.py`)를 재사용하여 코드 중복을 방지합니다. 사용자는 MP3 경로, 언어(기본값 vi), Whisper 모델 크기(기본값 base), 그리고 선택적 출력 디렉토리를 지정할 수 있습니다. 스킬 실행 후 생성된 파일의 유효성을 검사하고, 스크립트 기반 텍스트 보정 단계를 거쳐 Whisper가 잘못 인식한 기술 용어(예: 'Claude Code'를 'Clocot'으로 인식)를 원본 스크립트 내용으로 교체하여 자막의 정확성을 보장합니다.

지원 대상✓Claude Code✓Codex CLI~Cursor
npx skills add https://github.com/lexuanthanhhy/MKT.LANDINGPAGE.SKILLS/tree/HEAD/.claude/skills/mkt-ai-video-extract-srt-segment

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

MKT AI 비디오 — MP3에서 SRT + 세그먼트 추출

음성 해설 MP3를 단편 동영상 제작 파이프라인 전체에서 사용하는 두 파일로 변환합니다:

  1. <stem>.srt — 표준 SRT 자막 (세그먼트 수준 타임스탬프, 캡션에 사용)
  2. <stem>_segments.json — 단어 수준 타임스탬프 (정확한 SFX 배치, 단어별 캡션 애니메이션, 다운스트림 세그먼트 분류에 사용)

두 파일 모두 기본적으로 MP3 파일 옆에 생성됩니다. 파일 이름은 MP3 스템을 따릅니다. 예: voiceover.mp3 → voiceover.srt + voiceover_segments.json

이 스킬을 사용해야 하는 경우

  • 사용자가 MP3 음성 해설을 제공하고 SRT/트랜스크립트/세그먼트를 요청할 때
  • 다운스트림 스킬(plan-short-video-edit, heygen-remotion-short-video-editor, 캡션 렌더링)이 단어 수준 타임스탬프를 필요로 하지만 아직 존재하지 않을 때
  • 기존 음성 해설에 대한 세그먼트를 다시 생성해야 할 때 (예: 재녹음 후)

두 출력 파일이 이미 존재하고 MP3보다 최신이면 Whisper를 다시 실행하는 대신 기존 파일을 재사용하는 것이 좋습니다.

입력

인자필수기본값설명
mp3_path예—MP3 파일의 절대 경로
language아니오viWhisper 언어 코드. 베트남어 음성 해설에는 vi, 영어에는 en 사용
model아니오baseWhisper 모델 크기: tiny / base / small / medium / large. base는 베트남어에 적절한 균형을 제공하며, small은 약 2배 비용으로 눈에 띄게 더 나은 정확도를 제공합니다.
output_dir아니오MP3의 상위 폴더SRT + JSON 파일을 저장할 위치

1단계 — 변환 스크립트 실행

heygen-short-video 스킬의 기존 Whisper 스크립트를 재사용합니다. 이 스크립트는 이미 이 동작을 정확히 구현하고 있으므로 코드를 중복하지 않습니다:

uv run .claude/skills/heygen-short-video/scripts/transcribe_mp3.py "<mp3_path>" --language vi --model base

이 명령은 다음을 생성합니다:

  • <mp3_parent>/<stem>.srt
  • <mp3_parent>/<stem>_segments.json

출력을 다른 곳에 저장하려면 --output-dir <path>를 추가하십시오.

예시 — workspace/content/2026-04-09/video-short/learn-claude-code/voiceover.mp3의 경우:

uv run .claude/skills/heygen-short-video/scripts/transcribe_mp3.py \
  "workspace/content/2026-04-09/video-short/learn-claude-code/voiceover.mp3" \
  --language vi --model base

출력:

  • workspace/content/2026-04-09/video-short/learn-claude-code/voiceover.srt
  • workspace/content/2026-04-09/video-short/learn-claude-code/voiceover_segments.json

2단계 — 출력물 검증

스크립트 실행이 완료된 후 두 파일이 모두 존재하고 내용이 비어 있지 않은지 확인합니다:

ls -lh "<output_dir>/<stem>.srt" "<output_dir>/<stem>_segments.json"
head -20 "<output_dir>/<stem>.srt"

예상 결과:

  • SRT는 1\n00:00:00,000 --> 00:00:0X,XXX\n<text>\n\n으로 시작해야 합니다.
  • JSON은 객체 배열이어야 하며, 각 객체는 id, start, end, text 및 {word, start, end} 형태의 words 배열을 포함해야 합니다.

파일이 없거나 비어 있으면 실행이 실패한 것입니다. 1단계의 stderr를 다시 읽고 조용히 넘어가지 말고 사용자에게 오류를 알리십시오.

출력 형식 참조

voiceover.srt

1
00:00:00,000 --> 00:00:05,139
Đây là tài liệu học Claude Code tốt nhất mình từng thấy…

2
00:00:05,139 --> 00:00:07,299
Nếu bạn mới bắt đầu tìm hiểu Claude Code,

voiceover_segments.json

[
  {
    "id": 0,
    "start": 0.0,
    "end": 5.14,
    "text": "Đây là tài liệu học Claude Code tốt nhất…",
    "words": [
      { "word": "Đây", "start": 0.0, "end": 0.34 },
      { "word": "là",  "start": 0.94, "end": 1.12 }
    ]
  }
]

단어 수준 타임스탬프가 이 JSON을 가치 있게 만드는 핵심입니다. 다운스트림 스킬은 단어별 캡션 애니메이션, 단어별 SFX 큐, 정확한 세그먼트 경계 감지에 이를 사용합니다. 후처리 시 words 배열을 절대 제거하지 마십시오.

3단계 — 스크립트 기반 텍스트 보정 (스크립트를 사용할 수 있을 때 필수)

Whisper는 베트남어와 영어 기술 용어가 혼합된 경우(예: "Claude Code" → "Clocot", "MCP Servers" → "MCP Service", "prompt" → "PromGtt")를 자주 잘못 인식합니다. 원본 스크립트를 사용할 수 있을 때는(비디오 파이프라인에서는 거의 항상 가능) 항상 이 보정을 수행하십시오. 모든 타임스탬프는 유지하면서 SRT/JSON 텍스트만 수정하십시오:

  1. 생성된 SRT + JSON을 읽습니다 (모든 start/end는 변경하지 않고 유지).
  2. 각 SRT 항목을 원본 스크립트의 해당 부분과 위치별로 정렬합니다.
  3. 해당 부분의 Whisper 텍스트를 스크립트 텍스트로 교체합니다.
  4. voiceover_segments.json의 세그먼트 수준 text 필드에도 동일한 보정을 적용합니다. 단어 수준 항목은 신뢰할 수 있는 단어 정렬이 없는 한 Whisper가 생성한 그대로 두어도 됩니다. 다운스트림 스킬은 주로 단어 타이밍을 사용하고 단어 문자열 자체는 덜 중요하기 때문에 words[].word는 그대로 두어도 괜찮습니다.
  5. 두 파일을 모두 제자리에 다시 씁니다.

이유: SRT 텍스트는 렌더링된 캡션에 사용됩니다. 잘못된 텍스트는 잘못된 캡션으로 이어집니다. Whisper의 타임스탬프는 신뢰할 수 있지만 텍스트는 그렇지 않습니다.

사용자가 명시적으로 스크립트를 제공하지 않은 경우에만 이 단계를 건너뜁니다. 전체 비디오 파이프라인(mkt-full-ai-video)에서는 스크립트를 항상 사용할 수 있으므로 이 보정이 항상 수행됩니다.

팁 및 주의사항

  • 모델 선택: base는 대부분의 깨끗한 음성 해설을 잘 처리합니다. 노이즈가 많은 녹음이나 강한 악센트의 경우 small 또는 medium으로 업그레이드하십시오. small 이상에서는 비용이 급격히 증가하지만 짧은 형식의 콘텐츠에서는 효과가 거의 없습니다.
  • 언어: 베트남어의 경우 항상 --language vi를 명시적으로 전달하십시오. 자동 감지는 짧은 클립에서 가끔 다른 언어로 잘못 인식할 수 있습니다.
  • 재실행: Whisper는 동일한 모델과 오디오에 대해 결정적이므로 모델을 변경하거나 오디오를 수정하지 않는 한 재실행해도 결과가 개선되지 않습니다. 동일한 모델 크기에서 더 나은 결과를 기대하며 재실행하지 마십시오.
  • 경로 따옴표: MP3 경로는 항상 따옴표로 묶으십시오. 작업 공간 폴더에는 따옴표 없이 셸 확장이 깨질 수 있는 하이픈, 날짜, 슬래시가 포함되는 경우가 많습니다.
  • 중복 금지: 이 스킬은 의도적으로 자체 스크립트를 포함하지 않습니다. 새 변환 스크립트를 작성하려고 한다면 중단하고 heygen-short-video/scripts/transcribe_mp3.py를 사용하십시오. 해당 스크립트에 변경이 필요하면 그곳에서 수정하여 모든 소비자가 혜택을 볼 수 있도록 하십시오.

인계

두 파일이 저장되고 확인된 후 다음 정보를 보고하십시오:

SRT:      <절대 경로>.srt
Segments: <절대 경로>_segments.json
Segments count: N
총 길이: X.X초

그런 다음 사용자(또는 호출 스킬)가 다음 단계를 결정하도록 하십시오. 일반적으로는 생산 계획을 위해 plan-short-video-edit을 사용하거나 heygen-remotion-short-video-editor에서 직접 소비합니다.

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

Setup SMTP-based email auto-responder cho landing page bán hàng — tự động gửi email sau khi user điền form (tên/SĐT/email), KHÔNG cố định vào provider nào. Skill này (1) hỏi user chọn SMTP provider (Gmail/Google Workspace, Resend SMTP, SendGrid, Mailgun, Brevo, Zoho, hoặc SMTP custom của hosting VN) và detect Next.js stack đang dùng, (2) đọc context từ `offer.json` + `conversion-copy.md` (từ `/biz-offer-alex-hormozi`) HOẶC đọc trực tiếp Next.js project đã build qua `ui-ux-pro-max` (file `app/page.tsx`) HOẶC đọc HTML landing page đã deploy để hiểu offer, dream outcome, mechanism, bonus. Lưu ý: skill `biz-sales-page-layout` đã DEPRECATED 2026-05-14 — pipeline mới skip layout/copy.json, (3) **draft 2 email**: email A — auto-responder gửi cho lead (warm welcome + deliver lead magnet/booking confirm/payment link tuỳ offer type), email B — notification gửi cho owner (lead alert + thông tin liên hệ), (4) **show draft cho user duyệt và chỉnh sửa** trước khi wire vào code, (5) cài `nodemailer`

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

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'.

관련 스킬