# Blog Post Creator ## `/create-blog-post` Generates a structured blog post from a video transcript, grounded in the knowledge-layer voice guide and calibrated against existing published posts. ### What It Does 1. **Ingests the video transcript** -- accepts a local file path. Parses the transcript to identify the core topic, key points, and any specific examples or data mentioned. 2. **Loads the knowledge-based voice guide** from the knowledge layer -- tone, vocabulary, sentence patterns, and the overall editorial stance (educational, practical, authoritative but approachable). 3. **Fetches 2-3 reference blog posts** via WebFetch from the company blog. These are selected based on topic similarity and used to calibrate: - Title style and length - Section structure and heading patterns - Paragraph density and tone - How technical depth is balanced with accessibility 4. **Analyzes the combined style** to extract blog-specific patterns: - **Titles** -- action-oriented, benefit-first. Not clickbait, but specific enough to promise value. (e.g., "How We Book 40+ Meetings a Month With Cold Email" not "Our Outbound Strategy") - **Structure** -- clear H2/H3 hierarchy. Each H2 is a standalone concept. H3s break down specifics within that concept. - **Tone** -- educational but conversational. Writes like explaining something to a smart colleague, not lecturing. Uses "you" and "we" naturally. - **Length** -- 800-1500 words. Dense enough to be useful, short enough to finish in one sitting. - **Evidence** -- specific tools, numbers, and outcomes woven in naturally (not as a separate "results" section) 5. **Generates three distinct outputs** (see Output Format below): - **Title** -- 2-3 options following the analyzed title style - **Preview text** -- 2-3 sentences shown before the hero image on the blog. This is a teaser, not the opening paragraph. It frames what the reader will learn. - **Full blog post body** -- the complete article starting with its own opening paragraph (distinct from the preview text) 6. **Appends a brand sign-off** at the end of every post -- a consistent closing section that reinforces positioning and includes a soft CTA. 7. **Includes SEO suggestions** -- target keyword, meta description, and 2-3 related post links for internal linking. ### Usage ``` /create-blog-post ``` Optional flags: - `--reference-urls ` -- override automatic reference post selection with specific URLs - `--target-keyword ` -- set the primary SEO keyword explicitly - `--length ` -- target word count (short: 600-800, standard: 800-1500, long: 1500-2500) ### Important: Preview Text vs. Opening Paragraph These MUST be different. - **Preview text** appears on the blog index page and at the top of the post page, before the hero image. It is a standalone teaser. Think of it as the "back cover" of the article. - **Opening paragraph** is the first paragraph of the body. It sets up the problem or context the article addresses. Bad (same content repeated): > Preview: "Cold email deliverability is broken. Here is how to fix it." > Opening: "Cold email deliverability is broken. In this post, we will show you how to fix it." Good (complementary but distinct): > Preview: "Most teams lose 30-40% of their cold emails to spam folders without ever knowing. We break down the technical setup and sending patterns that keep us above 95% inbox placement." > Opening: "Last month we audited the email infrastructure for a new client. They were sending 10,000 emails a week and had no idea that nearly half were landing in spam." ### Output Format ``` ═══════════════════════════════════════════ BLOG POST ═══════════════════════════════════════════ ## Title Options 1. [Primary title option] 2. [Alternative title option] 3. [Alternative title option] ─────────────────────────────────────────── ## Preview Text [2-3 sentence teaser. This appears before the hero image on the blog. It is NOT the opening paragraph.] ─────────────────────────────────────────── ## Body [Full blog post starting with its own opening paragraph. H2 and H3 structure throughout. 800-1500 words. Ends with brand sign-off.] ─────────────────────────────────────────── ## SEO - **Target keyword:** [primary keyword] - **Meta description:** [150-160 character description] - **Suggested tags:** [tag1, tag2, tag3] - **Related posts for internal linking:** - [Related post title 1] -- [why it is relevant] - [Related post title 2] -- [why it is relevant] - [Related post title 3] -- [why it is relevant] ─────────────────────────────────────────── Word count: [N] | Reading time: ~[N] min ─────────────────────────────────────────── ``` ### Brand Sign-Off Every blog post ends with a consistent closing section. The exact wording is loaded from the knowledge layer (`voice-style--blog-sign-off.md`), but the structure is: 1. One-sentence recap of the key takeaway 2. Soft CTA (book a call, check out a related resource, or follow for more) 3. Brand name and positioning line ### Notes - The skill does NOT publish to the blog. It generates the content for manual publishing or CMS upload. - If the transcript covers multiple distinct topics, the skill asks which one to focus on or offers to create separate posts. - Reference posts are cached for the session -- fetching the same URL twice does not make a second network request.