Skip to main content
ClaudeWave
Skill63 repo starsupdated today

blog-brief

The blog-brief skill generates structured content plans for blog articles designed to rank on Google and be cited by AI systems. Use it when planning blog content by providing a topic, target audience, search intent, and business context; the skill then conducts keyword research, recommends a content template, and produces a comprehensive brief that guides writing while incorporating competitive landscape analysis and internal linking strategy.

Install in Claude Code
Copy
git clone --depth 1 https://github.com/Infrasity-Labs/dev-gtm-claude-skills /tmp/blog-brief && cp -r /tmp/blog-brief/.claude/skills/blog-brief ~/.claude/skills/blog-brief
Then start a new Claude Code session; the skill loads automatically.

SKILL.md

# Blog Brief Generator: Content Planning

Generates comprehensive content briefs that guide blog writing for maximum
impact on both Google rankings and AI citation platforms.

Reference documents:
- `references/content-templates.md`: template selection criteria
- `references/distribution-playbook.md`: channel-specific distribution tactics
- `references/internal-linking.md`: link architecture patterns
- `skills/blog/references/research-quality.md` - 5-dim quality rubric, pre-flight trap classes, freshness floors (v1.8.0; cross-skill ref lives in the orchestrator's references dir)
- `skills/blog/references/synthesis-contract.md` - 6 LAWs for synthesis output (v1.8.0)

## Auto-loaded inputs (v1.8.0)

When `DISCOURSE.md` is present at the project root (produced by `/blog discourse`), load it before starting brief generation. Use the discourse brief's "What's NEW" themes, "Consensus" themes, and "Contrarian takes" sections to enrich the competitive landscape and information-gain sections of this brief. Cite from DISCOURSE.md using the same inline `[name](url)` pattern. If DISCOURSE.md is absent, behavior is unchanged.

## Cross-reference

For evidence-led keyword discovery, audience-avatar prompts, and content prioritization (directly upstream of brief generation), see `/blog flow find`.

## Workflow

### Step 1: Topic Intake

Gather from the user:
1. **Topic or keyword** (required)
2. **Target audience** (who reads this?)
3. **Search intent**: Informational, commercial, transactional, navigational
4. **Business context**: What does the company do? What's the CTA?

If only a topic is given, infer the rest from context.

### Step 2: Keyword Research

Using WebSearch:
1. Search for the target keyword; analyze what currently ranks
2. Identify **primary keyword** (exact match target)
3. Identify **3-5 secondary keywords** (related terms, long-tail)
4. Identify **3-5 question queries** (People Also Ask style)
5. Note the **search intent**: what do searchers actually want?

### Step 2.5: Template Recommendation

Analyze the topic, search intent, and competitive landscape to recommend one
of 12 content templates. Load `references/content-templates.md` for selection
criteria.

**Available templates:**
| Template | Best For |
|----------|----------|
| `how-to-guide` | Step-by-step instructional content |
| `listicle` | Curated lists, ranked items, resource roundups |
| `case-study` | In-depth analysis of a specific example or result |
| `comparison` | Side-by-side evaluation of 2+ options |
| `pillar-page` | Comprehensive topic hub linking to cluster content |
| `product-review` | Detailed evaluation with pros/cons/verdict |
| `thought-leadership` | Expert opinion, industry trends, predictions |
| `roundup` | Expert quotes, tool collections, best-of lists |
| `tutorial` | Technical walkthrough with code/config examples |
| `news-analysis` | Timely coverage with expert commentary |
| `data-research` | Original data, survey results, benchmark findings |
| `faq-knowledge` | Question-driven reference content |

**Selection process:**
1. Match search intent to template strength
2. Check what format top-ranking competitors use
3. Consider the user's available assets (data, expertise, tools)
4. Load the matching template file from `templates/[type].md`
5. Include the template name in the brief output

### Step 3: Competitive Analysis

Analyze the top 3-5 ranking pages for the target keyword:
1. **Content length**: What's the average word count?
2. **Heading structure**: How many H2s? What topics do they cover?
3. **Visual elements**: Do competitors use charts, images, videos?
4. **Content gaps**: What do all competitors miss?
5. **Freshness**: How recently were they updated?
6. **Schema**: Do they use FAQ or other rich results? (Note: HowTo deprecated Sept 2023)
7. **Template pattern**: What content format do top results use?

### Step 4: Statistics Research

Find 8-12 statistics the article should include:
1. Search: `[topic] study 2025 2026 data statistics research`
2. Prioritize tier 1-3 sources
3. For each stat, record: value, source, URL, date, methodology
4. Identify 2-4 stats suitable for chart visualization
5. Identify 1-2 stats suitable for TL;DR and social sharing

### Step 5: Generate the Brief

Output format:

```
# Content Brief: [Title Suggestion]

## Template
**Recommended**: [template-name]: [1-sentence rationale]
**Template file**: `templates/[type].md`

## Target Keywords
- **Primary**: [keyword]: [estimated monthly search volume if available]
- **Secondary**: [keyword 1], [keyword 2], [keyword 3]
- **Questions**: [question 1], [question 2], [question 3]

## Search Intent
[Informational/Commercial/Transactional]: [1-2 sentence explanation of
what the searcher wants]

## Content Parameters
- **Word count**: [2,000-2,500] words
- **Reading level**: Flesch 60-70 (expert-accessible)
- **Format**: [Markdown/MDX/HTML]
- **H2 sections**: [6-8]
- **Images**: 3-5 from Pixabay/Unsplash
- **Charts**: 2-4 via built-in blog-chart (diverse types)
- **FAQ items**: 3-5

## Recommended Title
[Question-format title including primary keyword, under 60 chars]

Alternative titles:
1. [Option 2]
2. [Option 3]

## Meta Description
[150-160 chars, fact-dense, includes 1 statistic, ends with value proposition]

## TL;DR Draft
> **TL;DR:** [40-60 word summary with key finding + 1 statistic + source.
> Should be self-contained; a reader who only reads this box gets the
> core value of the article.]

## Information Gain Opportunities
- **[ORIGINAL DATA]**: [Suggestion for proprietary data, survey, experiment,
  or benchmark the author can produce to differentiate this post]
- **[PERSONAL EXPERIENCE]**: [Suggestion for first-hand observation, test
  result, or case study to include: "When we tested X, we found Y"]
- **[UNIQUE INSIGHT]**: [Suggestion for contrarian take, novel analysis,
  or non-obvious connection that competitors have not covered]

## Content Outline

### Introduction (100-150 words)
- Hook: [Surprisi