Convert a video transcript, blog post, or LinkedIn post into a complete Substack newsletter edition. Use this skill when the user says "turn this into a newsletter", "repurpose this for Substack", "write a newsletter from this transcript", or "convert this post to an email". Also trigger when the user provides source content (transcript, article, post) and wants a newsletter edition from it.
Convert source content into a complete newsletter edition using a 6-part story-first structure.
If not pasted, ask: "Paste the content to repurpose — transcript, post, article, anything."
Identify: core topic, key problem solved, one-line lesson, practical value.
Read references/my-story-doc.md in FULL. Go through every story. For each: what happened, emotional core, underlying theme.
Command mode check: If this skill is running as part of the /content command and a story has already been locked in this session (logged as SESSION STORY LOCK: [story title]), use that story directly — skip to Phase 2 without presenting options. The lock ensures newsletter and LinkedIn story post use the same story for the same topic.
Individual run (not part of /content): Match source topic to best story using: emotional resonance, thematic alignment, unexpected connection, freshness.
When a story is selected, log it: SESSION STORY LOCK: [story title] — this locks it for any subsequent repurpose skills in this session.
PRIMARY ANGLE with: Story, Summary, Why it works, Angle type, Structure plan (HOOK/BRIDGE/TRUTH/SYSTEM), Signature lesson.
BACKUP #1 and #2 — shorter.
Wait for approval before writing.
Use confirmed angle. No section labels in output.
1. HOOK (2-4 paragraphs) — Drop into the story moment. First sentence under 10 words. Present tense. Visual. Three patterns: Moment Drop, Confession, Direct Truth.
2. BRIDGE (2-3 paragraphs) — Connect story to business reality. Must use "you" or "your." Never say "Let me tell you why this matters."
3. TRUTH (3-5 paragraphs) — What most people get wrong. Call out behavior, not person.
4. SYSTEM (3-5 paragraphs) — Practical content from source. Preserve exact language — numbers, tool names, specific steps.
5. INVITATION — Primary CTA (link to video) + soft secondary sell.
6. SIGNATURE — "To your next client, [Name] '[phrase]' [Last Name]" — phrase captures the one thing to walk away with. Different every time.
Rhythm:
Simplicity: 4th-6th grade reading level
Forbidden words: game-changer, leverage, optimize, crush it, life-changing, transform, next level, unlock, skyrocket, utilize, implement, facilitate, synergy, breakthrough, revolutionary, paradigm, level up, mindset shift
Hard rules:
Voice fingerprints (use naturally, never forced): "The thing is..." / "Here's the deal" / "Let me be real" / "Look..." / "That's it." / "LoL" / P.S. and P.P.S. for secondary CTAs
Show don't tell. Minimal formatting. Bold 1-2 times max.
| Source | Newsletter target |
|---|---|
| 5-7 min transcript | 400-600 words |
| 7-10 min | 600-800 words |
| 10+ min | 800-1000 words |
[YOUR_NAME] Test (self-audit — answer before saving):
Run these yourself. If any answer is "no", revise before proceeding.
Save to inbox/outputs/md/YYYY-MM-DD-acquisition-content-newsletter-repurpose.md
Push the newsletter edition to the Unstuck - Newsletter Database:
Notion database: Unstuck - Newsletter Database
Data source: 2e07fe00-204d-8026-aba8-000bd2c450af
Fields:
| Notion Field | Type | Value |
|---|---|---|
Subject Line | title | Use date + topic as placeholder: e.g. 2026-03-30 — Context Architecture — the subject-lines skill will update this later |
Newsletter Edition | text | Full newsletter body text |
Status | status | Draft |
mcp__claude_ai_Notion__notion-create-pages with parent data source 2e07fe00-204d-8026-aba8-000bd2c450afmcp__claude_ai_Notion__notion-update-pageIf Notion MCP not available: Save locally and note the page ID as "not created — companion skills will save locally too."
This skill writes the edition only. Subject lines, Substack note, and thumbnail prompt are each handled by their own dedicated skills — they run automatically after this step in the /content routine. Do not generate them here.