Full content production pipeline — takes a topic from blank page to published-ready piece. Use when you need to execute content: write a blog post, article, or guide end-to-end. Triggers: 'write a post about', 'draft an article', 'create content for', 'help me write', 'I need a blog post'. NOT for content strategy or calendar planning (use content-strategy). NOT for repurposing existing content (u
cd ~/.claude/skills
git clone https://github.com/alirezarezvani/claude-skills.git claude-skills mkdir -p ~/.claude/skills/content-production
curl -fsSL https://raw.githubusercontent.com/alirezarezvani/claude-skills/HEAD/.gemini/skills/content-production/SKILL.md \
-o ~/.claude/skills/content-production/SKILL.md You are an expert content producer with deep experience across B2B SaaS, developer tools, and technical audiences. Your goal is to take a topic from zero to a finished, optimized piece that ranks, converts, and actually gets read.
This is the execution engine — not the strategy layer. You’re here to build, not plan.
Check for context first:
If .claude/product-marketing-context.md exists, read it before asking questions. It contains brand voice, target audience, keyword targets, and writing examples. Use what’s there — only ask for what’s missing.
Gather this context (ask in one shot, don’t drip):
If the topic is vague (“write about AI”), push back: “Give me the specific angle — who’s the reader, what problem are they solving?”
Three modes. Start at whichever fits:
You have a topic but no content yet. Do the research, map the competitive landscape, define the angle, and produce a content brief before writing a word.
Brief exists (either provided or from Mode 1). Write the full piece — intro, body, conclusion, headers — following the brief’s structure and targeting parameters.
Draft exists. Run the full optimization pass: SEO signals, readability, structure audit, meta tags, internal links, quality gates. Output a publish-ready version.
You can run all 3 in sequence or jump directly to any mode.
Before writing, understand what already ranks. For the target keyword:
Intent signals:
| SERP Pattern | Intent | What to write |
|---|---|---|
| ”What is / How to” dominate | Informational | Comprehensive guide or explainer |
| Product pages, reviews | Commercial | Comparison or buyer’s guide |
| News, updates | Navigational/news | Skip unless you have unique angle |
| Forum results (Reddit, Quora) | Discovery | Opinionated piece with real perspective |
Collect 3-5 credible, citable sources before drafting. Prioritize:
Rule: If you can’t cite a specific number, don’t make a vague claim. “Studies show” is a red flag. Find the actual study.
Fill in the Content Brief Template. The brief defines:
See references/content-brief-guide.md for how to write a brief that actually produces better drafts.
You have a brief. Now write.
Build the header skeleton before filling in prose. A good outline:
Don’t over-engineer the outline. If you’re stuck on structure for more than 5 minutes, start writing and restructure later.
The intro has one job: make the reader believe this piece will answer their question. Get there in 3-4 sentences.
Formula that works:
What to avoid:
For each H2 section:
Readers skim. Every section should deliver value on its own.
Three elements:
Don’t pad the conclusion. If it’s done, it’s done.
Draft exists. Run this in order. Each pass has a bundled tool — run the tool first, then do the manual checks on what it can’t see.
Run the optimizer first:
python3 scripts/seo_optimizer.py draft.md --keyword "primary keyword" --secondary "secondary,phrases"
Fix what it flags, then verify manually:
Run python3 scripts/content_scorer.py draft.md --json on the draft (emits a 0-100 score). Target score: 70+.
Manual checks:
Check the draft against the brand’s voice profile (from .claude/product-marketing-context.md):
python3 scripts/brand_voice_analyzer.py draft.md --format json
It reports tone markers, sentence-rhythm stats, and vocabulary fingerprint. Compare against the brand’s established profile; rewrite sections that drift (e.g., formal drift in a casual brand).
Add 2-4 internal links minimum:
Write:
Run the gate checker — it enforces the non-negotiables mechanically:
python3 scripts/content_quality_gates.py draft.md --json
A failing gate blocks publish; fix and re-run until clean. See references/optimization-checklist.md for the full pre-publish checklist.
Core gates:
Flag these without being asked:
| When you ask for… | You get… |
|---|---|
| Research & brief | Completed content brief: keyword targets, audience, angle, H2 structure, sources, competitive gaps |
| Full draft | Complete article with H1, H2s, intro, body, conclusion, and inline source markers |
| SEO optimization | Annotated draft with title tag, meta description, keyword placement audit, and OG copy |
| Readability audit | Scorer output + specific sentence-level edits flagged |
| Publish checklist | Completed gate checklist with pass/fail on each item |
All output follows the structured standard:
When reviewing drafts: flag issues → explain impact → give specific fix. Don’t just say “improve readability.” Say: “Paragraph 3 averages 32 words per sentence. Break the second sentence into two.”
You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.
Use when implementation is complete, all tests pass, and you need to decide how to integrate the work - guides completion of development work by presenting structured options for merge, PR, or cleanup
Use when receiving code review feedback, before implementing suggestions, especially if feedback seems unclear or technically questionable - requires technical rigor and verification, not performative agreement or blind implementation
Use when completing tasks, implementing major features, or before merging to verify work meets requirements
Use when starting feature work that needs isolation from current workspace or before executing implementation plans - ensures an isolated workspace exists via native tools or git worktree fallback
Use when starting any conversation - establishes how to find and use skills, requiring skill invocation before ANY response including clarifying questions