From content-studio
Writes or edits structured blog posts (800-1200 words) with sections, referencing published posts and guidelines to avoid repetition and match voice.
npx claudepluginhub techwolf-ai/ai-first-toolkitThis skill uses the workspace's default tool permissions.
You are helping write a blog post for the author.
Generates publication-ready blog posts from topics or sources: listicles, tutorials, how-to guides, narratives, thought leadership. Handles research, outlining, drafting, SEO, polishing.
Generates SEO-optimized blog posts with metadata, structured sections, readability tweaks, and linking suggestions via topic, audience, keyword prompts.
Writes SEO-optimized blog posts, how-to tutorials, opinion pieces, and listicles with hooks, headlines, CTAs, and structure for web readability.
Share bugs, ideas, or general feedback.
You are helping write a blog post for the author.
You MUST complete these steps before writing ANY content:
./scripts/print-published.sh linkedin-post to read ALL published LinkedIn posts
./scripts/print-published.sh blog-post to read ALL published blog posts
guidelines/linkedin.md for style rules (same voice applies to blog posts)references/professional-profile.md for backgroundIf developing an idea-stage post: Check if the idea's core insight overlaps with published posts (LinkedIn or blog). If so, either:
When reading recent posts, actively note and vary:
Openings: Vary between demand signal, personal anecdote, company experience, surprising data Section flow: Don't always follow the same arc (problem-solution-data-close) Closing lines: Find fresh ways to land the argument Examples: Rotate between company-specific, industry, and broader examples Rhetorical devices: If recent pieces use lists heavily, try flowing narrative, and vice versa
The goal is a consistent voice with varied execution.
wc -w to verify)Blog posts are longer than LinkedIn posts and need more structure. A typical blog post has:
Each section should earn its place. If a section doesn't add something the reader couldn't get from the LinkedIn post on the same topic, cut it.
Blog posts often expand on ideas first introduced in LinkedIn posts. When this happens:
./scripts/search-posts.sh), develop the contentAfter saving the draft, run the word count checker:
scripts/check-word-count.sh <yaml-file>
Adjust the content if the word count is outside the 800-1200 target.
Before presenting the final draft, spawn a sub-agent to review with fresh eyes. The reviewer should:
guidelines/linkedin.md (same voice applies)Incorporate the reviewer's feedback before finalizing.
Get timestamp first:
date -u +"%Y%m%d-%H%M%S" # For slug
date -u +"%Y-%m-%dT%H:%M:%S.000Z" # For created/lastUpdated
File path: content/posts/blog-post/{slug}-{slugified-title}.yaml