← ClaudeAtlas

blog-postlisted

Use when the user wants to write a blog post about a feature, product change, PR, git diff, or any technical topic - accepts marketing briefs, PRs, git refs, codebase paths, or freeform descriptions as input
AlemTuzlak/skills · ★ 39 · AI & Automation · score 68
Install: claude install-skill AlemTuzlak/skills
# Blog Post Writer Write high-quality blog posts from code changes, marketing briefs, or feature descriptions. Handles SEO, structure, tone matching, and visual content. **Writing rule (non-negotiable): never use em-dashes (— or –). Use a hyphen `-` instead.** Applies to every line of generated copy. ## Input Resolution Resolve the argument (if provided) in this order: 1. Path to an existing marketing brief file (`.md` containing "Executive Summary" or "Key Messages") → **marketing brief** 2. Matches GitHub URL or `#\d+` pattern → **PR** 3. Contains `...` or `..` → **git ref range** 4. Resolves to existing file/directory → **codebase feature** 5. Otherwise → **freeform text** If no argument is provided, ask: "What should I write about? You can provide a marketing brief path, PR URL/number, git ref range (e.g. v1.0...v2.0), file/directory path, or just describe the topic." If multiple interpretations match, confirm with the user. ## Process Flow ```dot digraph blog_post { rankdir=TB; "Resolve input" [shape=box]; "Phase 1: Discovery" [shape=box]; "Phase 2: Research" [shape=box]; "Phase 3: Configure" [shape=box]; "Phase 4: Outline" [shape=box]; "Outline approved?" [shape=diamond]; "Phase 5: Write" [shape=box]; "Phase 6: Output" [shape=box]; "Resolve input" -> "Phase 1: Discovery"; "Phase 1: Discovery" -> "Phase 2: Research"; "Phase 2: Research" -> "Phase 3: Configure"; "Phase 3: Configure" -> "Phase 4: Outline"; "