Install the belt CLI skill: npx skills add belt-sh/cli
SEO Content Brief
Create data-driven content briefs via inference.sh CLI.
Quick Start
Requires inference.sh CLI (belt). Install instructions
belt login
# Research target keyword
belt app run tavily/search-assistant --input '{
"query": "best project management tools for small teams 2024"
}'
# Analyze top-ranking content
belt app run exa/search --input '{
"query": "project management tools small teams comparison guide"
}'
Content Brief Template
Every brief should answer these questions before writing begins:
# Content Brief: [Working Title]
## Target
- **Primary keyword:** [exact keyword]
- **Secondary keywords:** [3-5 related terms]
- **Search intent:** [informational / commercial / transactional / navigational]
- **Target word count:** [X,XXX words]
- **Target URL:** /blog/[slug]
## Search Intent Analysis
- What is the searcher trying to accomplish?
- What format do top results use? (listicle, guide, comparison, tutorial)
- What questions need answering?
## Outline
H1: [Title with primary keyword]
H2: [Section 1]
H3: [Subsection]
H2: [Section 2]
...
## Competitors to Beat
1. [URL] — [word count] — [what they do well] — [gap/weakness]
2. [URL] — [word count] — [what they do well] — [gap/weakness]
3. [URL] — [word count] — [what they do well] — [gap/weakness]
## Unique Angle
What makes this piece different/better than what already ranks?
## Internal Links
- Link TO: [existing pages to link to from this article]
- Link FROM: [existing pages that should link to this new article]
Search Intent Types
| Intent |
What Searcher Wants |
Content Format |
Example Query |
| Informational |
Learn something |
Guide, tutorial, explainer |
"what is CI/CD" |
| Commercial |
Compare before buying |
Comparison, listicle, review |
"best CI/CD tools 2024" |
| Transactional |
Buy/sign up |
Product page, pricing page |
"GitHub Actions pricing" |
| Navigational |
Find a specific page |
— (don't target these) |
"GitHub login" |
Match format to intent. If top 10 results are all listicles, write a listicle. If they're all tutorials, write a tutorial. Fighting the SERP format loses.
SERP Analysis Process
# Step 1: See what currently ranks
belt app run tavily/search-assistant --input '{
"query": "[your target keyword]"
}'
# Step 2: Analyze top-ranking content
belt app run tavily/extract --input '{
"urls": ["https://top-result-1.com/article", "https://top-result-2.com/article"]
}'
# Step 3: Find related questions (People Also Ask)
belt app run tavily/search-assistant --input '{
"query": "[keyword] questions people ask FAQ"
}'
# Step 4: Find content gaps
belt app run exa/search --input '{
"query": "[keyword] [subtopic competitors miss]"
}'
What to Extract from Top Results
| Data Point |
Why |
| Word count |
Sets your minimum (match or exceed top 3) |
| Heading structure |
Shows what Google considers complete coverage |
| Topics covered |
Every topic they cover, you must cover |
| Topics missed |
Your opportunity to be more comprehensive |
| Content format |
Listicle, guide, tutorial, comparison |
| Media used |
Images, videos, tables, infographics |
| Internal/external links |
Reference quality signals |
Keyword Research
Keyword Metrics
| Metric |
What It Means |
Target |
| Search volume |
Monthly searches |
Depends on niche (100+ for long-tail) |
| Keyword difficulty |
Competition level |
< 30 for new sites, < 50 for established |
| CPC |
What advertisers pay |
Higher CPC = more commercial value |
| Search intent |
What users want |
Must match your content type |
Finding Keywords
# Seed keyword research
belt app run tavily/search-assistant --input '{
"query": "project management software long tail keywords related searches"
}'
# Find question-based keywords
belt app run exa/search --input '{
"query": "questions about project management tools for startups"
}'
# Competitor keyword analysis
belt app run tavily/search-assistant --input '{
"query": "site:competitor.com/blog top performing pages topics"
}'
Keyword Clustering
Group related keywords into one piece of content:
Primary: "best project management tools for small teams"
Cluster:
- "project management software small business"
- "project management tools comparison"
- "simple project management app"
- "project management for startups"
- "affordable project management software"
One page per keyword cluster. Don't create separate pages for each variation — that's keyword cannibalization.
Heading Structure
Rules
| Rule |
Why |
| One H1 per page |
SEO standard, contains primary keyword |
| H2s = main sections |
Each should target a secondary keyword or question |
| H3s = subsections |
Break up long H2 sections |
| Primary keyword in H1 |
Direct ranking signal |
| Secondary keywords in H2s |
Topical coverage signal |
| Question format for some H2s |
Targets "People Also Ask" |
| Logical hierarchy |
Never skip levels (H1 → H3 without H2) |
Example Structure
H1: Best Project Management Tools for Small Teams (2025)
H2: How We Evaluated These Tools
H2: Top 10 Project Management Tools Compared
H3: 1. Tool A — Best for [use case]
H3: 2. Tool B — Best for [use case]
...
H2: Feature Comparison Table
H2: How to Choose the Right Tool for Your Team
H3: Team Size Considerations
H3: Budget Considerations
H2: Frequently Asked Questions
H3: What is the easiest project management tool?
H3: Do small teams need project management software?
H2: Conclusion
Word Count Targets
| Content Type |
Word Count |
When |
| Short-form blog |
800-1,200 |
News, updates, opinions |
| Standard blog |
1,500-2,000 |
How-tos, tutorials |
| Long-form guide |
2,500-4,000 |
Comprehensive guides, comparisons |
| Pillar content |
4,000-7,000 |
Definitive guides, hub pages |
| Glossary/definition |
300-800 |
Quick reference terms |
Rule: match or exceed the average word count of the top 3 ranking results. Don't pad — every word should add value.
On-Page SEO Checklist
| Element |
Rule |
| Title tag |
Primary keyword + compelling hook, 50-60 characters |
| Meta description |
Includes keyword, 150-160 characters, includes CTA |
| URL slug |
Short, keyword-rich: /best-project-management-tools |
| H1 |
Primary keyword, matches search intent |
| First 100 words |
Include primary keyword naturally |
| Image alt text |
Descriptive, includes keyword where natural |
| Internal links |
3-5 links to related content |
| External links |
2-3 authoritative sources |
| Schema markup |
FAQ, HowTo, or Article schema where applicable |
Content Differentiation
Unique Angles
| Angle |
Example |
| Original data |
"We surveyed 500 PMs — here's what they use" |
| Expert quotes |
Interview practitioners for original insights |
| Real examples |
Screenshots, case studies, not just descriptions |
| More comprehensive |
Cover subtopics competitors skip |
| More current |
Updated data, newer tools, recent changes |
| Better visuals |
Comparison tables, infographics, decision trees |
# Generate comparison infographic
belt app run infsh/html-to-image --input '{
"html": "<div style=\"width:1200px;height:800px;background:white;padding:40px;font-family:system-ui\"><h2 style=\"font-size:28px;color:#1e293b;text-align:center;margin-bottom:30px\">Project Management Tools Comparison</h2><table style=\"width:100%;border-collapse:collapse;font-size:16px\"><tr style=\"background:#f1f5f9\"><th style=\"padding:12px;text-align:left;border-bottom:2px solid #cbd5e1\">Feature</th><th style=\"padding:12px;text-align:center;border-bottom:2px solid #cbd5e1\">Tool A</th><th style=\"padding:12px;text-align:center;border-bottom:2px solid #cbd5e1\">Tool B</th><th style=\"padding:12px;text-align:center;border-bottom:2px solid #cbd5e1\">Tool C</th></tr><tr><td style=\"padding:12px;border-bottom:1px solid #e2e8f0\">Free tier</td><td style=\"padding:12px;text-align:center;border-bottom:1px solid #e2e8f0\">✅</td><td style=\"padding:12px;text-align:center;border-bottom:1px solid #e2e8f0\">✅</td><td style=\"padding:12px;text-align:center;border-bottom:1px solid #e2e8f0\">❌</td></tr></table></div>"
}'
Internal Linking Strategy
| Type |
Purpose |
| Hub → Spoke |
Pillar page links to all subtopic articles |
| Spoke → Hub |
Subtopic articles link back to pillar page |
| Spoke → Spoke |
Related articles cross-link to each other |
| Contextual |
Natural in-text links where topic is mentioned |
Rules
- 3-5 internal links minimum per article
- Anchor text should be descriptive (not "click here")
- Link to relevant pages, not random ones
- Update old articles to link to new ones
- Most important pages should have the most internal links
Common Mistakes
| Mistake |
Problem |
Fix |
| No SERP analysis |
Writing blind, wrong format |
Always analyze top 3-5 before writing |
| Wrong intent match |
Guide when they want comparison, or vice versa |
Match SERP format exactly |
| Keyword stuffing |
Penalized, reads poorly |
Use naturally, 1-2% density max |
| Ignoring "People Also Ask" |
Missing easy ranking opportunities |
Answer PAA questions in your content |
| Too short |
Can't compete with comprehensive results |
Match or exceed top 3 word count |
| No unique angle |
Just another "me too" article |
Original data, expert quotes, better visuals |
| Keyword cannibalization |
Multiple pages competing |
One page per keyword cluster |
| No internal links |
Wasted link equity, poor site structure |
3-5 internal links per article |
| Missing meta description |
Google generates one (often poorly) |
Write compelling meta with keyword + CTA |
Related Skills
npx skills add inference-sh/skills@seo
npx skills add inference-sh/skills@technical-blog-writing
npx skills add inference-sh/skills@web-search
Browse all apps: belt app store
1---2name: seo-content-brief3description: SEO content brief creation with keyword research, search intent analysis, and content structure. Covers SERP analysis, heading hierarchy, word count targets, and internal linking strategy. Use for: content briefs, SEO writing, blog strategy, content planning, keyword targeting. Triggers: seo content brief, content brief, seo brief, keyword research, search intent, content strategy, blog brief, seo writing, content planning, keyword targeting, serp analysis, content outline, seo article, blog seo4---56> **Install the belt CLI skill:** `npx skills add belt-sh/cli`78# SEO Content Brief910Create data-driven content briefs via [inference.sh](https://inference.sh) CLI.1112## Quick Start1314> Requires inference.sh CLI (`belt`). [Install instructions](https://raw.githubusercontent.com/inference-sh/skills/refs/heads/main/cli-install.md)1516```bash17belt login1819# Research target keyword20belt app run tavily/search-assistant --input '{21 "query": "best project management tools for small teams 2024"22}'2324# Analyze top-ranking content25belt app run exa/search --input '{26 "query": "project management tools small teams comparison guide"27}'28```293031## Content Brief Template3233Every brief should answer these questions before writing begins:3435```markdown36# Content Brief: [Working Title]3738## Target39- **Primary keyword:** [exact keyword]40- **Secondary keywords:** [3-5 related terms]41- **Search intent:** [informational / commercial / transactional / navigational]42- **Target word count:** [X,XXX words]43- **Target URL:** /blog/[slug]4445## Search Intent Analysis46- What is the searcher trying to accomplish?47- What format do top results use? (listicle, guide, comparison, tutorial)48- What questions need answering?4950## Outline51H1: [Title with primary keyword]52 H2: [Section 1]53 H3: [Subsection]54 H2: [Section 2]55 ...5657## Competitors to Beat581. [URL] — [word count] — [what they do well] — [gap/weakness]592. [URL] — [word count] — [what they do well] — [gap/weakness]603. [URL] — [word count] — [what they do well] — [gap/weakness]6162## Unique Angle63What makes this piece different/better than what already ranks?6465## Internal Links66- Link TO: [existing pages to link to from this article]67- Link FROM: [existing pages that should link to this new article]68```6970## Search Intent Types7172| Intent | What Searcher Wants | Content Format | Example Query |73|--------|-------------------|----------------|--------------|74| **Informational** | Learn something | Guide, tutorial, explainer | "what is CI/CD" |75| **Commercial** | Compare before buying | Comparison, listicle, review | "best CI/CD tools 2024" |76| **Transactional** | Buy/sign up | Product page, pricing page | "GitHub Actions pricing" |77| **Navigational** | Find a specific page | — (don't target these) | "GitHub login" |7879**Match format to intent.** If top 10 results are all listicles, write a listicle. If they're all tutorials, write a tutorial. Fighting the SERP format loses.8081## SERP Analysis Process8283```bash84# Step 1: See what currently ranks85belt app run tavily/search-assistant --input '{86 "query": "[your target keyword]"87}'8889# Step 2: Analyze top-ranking content90belt app run tavily/extract --input '{91 "urls": ["https://top-result-1.com/article", "https://top-result-2.com/article"]92}'9394# Step 3: Find related questions (People Also Ask)95belt app run tavily/search-assistant --input '{96 "query": "[keyword] questions people ask FAQ"97}'9899# Step 4: Find content gaps100belt app run exa/search --input '{101 "query": "[keyword] [subtopic competitors miss]"102}'103```104105### What to Extract from Top Results106107| Data Point | Why |108|-----------|-----|109| **Word count** | Sets your minimum (match or exceed top 3) |110| **Heading structure** | Shows what Google considers complete coverage |111| **Topics covered** | Every topic they cover, you must cover |112| **Topics missed** | Your opportunity to be more comprehensive |113| **Content format** | Listicle, guide, tutorial, comparison |114| **Media used** | Images, videos, tables, infographics |115| **Internal/external links** | Reference quality signals |116117## Keyword Research118119### Keyword Metrics120121| Metric | What It Means | Target |122|--------|--------------|--------|123| **Search volume** | Monthly searches | Depends on niche (100+ for long-tail) |124| **Keyword difficulty** | Competition level | < 30 for new sites, < 50 for established |125| **CPC** | What advertisers pay | Higher CPC = more commercial value |126| **Search intent** | What users want | Must match your content type |127128### Finding Keywords129130```bash131# Seed keyword research132belt app run tavily/search-assistant --input '{133 "query": "project management software long tail keywords related searches"134}'135136# Find question-based keywords137belt app run exa/search --input '{138 "query": "questions about project management tools for startups"139}'140141# Competitor keyword analysis142belt app run tavily/search-assistant --input '{143 "query": "site:competitor.com/blog top performing pages topics"144}'145```146147### Keyword Clustering148149Group related keywords into one piece of content:150151```152Primary: "best project management tools for small teams"153Cluster:154 - "project management software small business"155 - "project management tools comparison"156 - "simple project management app"157 - "project management for startups"158 - "affordable project management software"159```160161**One page per keyword cluster.** Don't create separate pages for each variation — that's keyword cannibalization.162163## Heading Structure164165### Rules166167| Rule | Why |168|------|-----|169| One H1 per page | SEO standard, contains primary keyword |170| H2s = main sections | Each should target a secondary keyword or question |171| H3s = subsections | Break up long H2 sections |172| Primary keyword in H1 | Direct ranking signal |173| Secondary keywords in H2s | Topical coverage signal |174| Question format for some H2s | Targets "People Also Ask" |175| Logical hierarchy | Never skip levels (H1 → H3 without H2) |176177### Example Structure178179```180H1: Best Project Management Tools for Small Teams (2025)181 H2: How We Evaluated These Tools182 H2: Top 10 Project Management Tools Compared183 H3: 1. Tool A — Best for [use case]184 H3: 2. Tool B — Best for [use case]185 ...186 H2: Feature Comparison Table187 H2: How to Choose the Right Tool for Your Team188 H3: Team Size Considerations189 H3: Budget Considerations190 H2: Frequently Asked Questions191 H3: What is the easiest project management tool?192 H3: Do small teams need project management software?193 H2: Conclusion194```195196## Word Count Targets197198| Content Type | Word Count | When |199|-------------|-----------|------|200| Short-form blog | 800-1,200 | News, updates, opinions |201| Standard blog | 1,500-2,000 | How-tos, tutorials |202| Long-form guide | 2,500-4,000 | Comprehensive guides, comparisons |203| Pillar content | 4,000-7,000 | Definitive guides, hub pages |204| Glossary/definition | 300-800 | Quick reference terms |205206**Rule: match or exceed the average word count of the top 3 ranking results.** Don't pad — every word should add value.207208## On-Page SEO Checklist209210| Element | Rule |211|---------|------|212| **Title tag** | Primary keyword + compelling hook, 50-60 characters |213| **Meta description** | Includes keyword, 150-160 characters, includes CTA |214| **URL slug** | Short, keyword-rich: `/best-project-management-tools` |215| **H1** | Primary keyword, matches search intent |216| **First 100 words** | Include primary keyword naturally |217| **Image alt text** | Descriptive, includes keyword where natural |218| **Internal links** | 3-5 links to related content |219| **External links** | 2-3 authoritative sources |220| **Schema markup** | FAQ, HowTo, or Article schema where applicable |221222## Content Differentiation223224### Unique Angles225226| Angle | Example |227|-------|---------|228| **Original data** | "We surveyed 500 PMs — here's what they use" |229| **Expert quotes** | Interview practitioners for original insights |230| **Real examples** | Screenshots, case studies, not just descriptions |231| **More comprehensive** | Cover subtopics competitors skip |232| **More current** | Updated data, newer tools, recent changes |233| **Better visuals** | Comparison tables, infographics, decision trees |234235```bash236# Generate comparison infographic237belt app run infsh/html-to-image --input '{238 "html": "<div style=\"width:1200px;height:800px;background:white;padding:40px;font-family:system-ui\"><h2 style=\"font-size:28px;color:#1e293b;text-align:center;margin-bottom:30px\">Project Management Tools Comparison</h2><table style=\"width:100%;border-collapse:collapse;font-size:16px\"><tr style=\"background:#f1f5f9\"><th style=\"padding:12px;text-align:left;border-bottom:2px solid #cbd5e1\">Feature</th><th style=\"padding:12px;text-align:center;border-bottom:2px solid #cbd5e1\">Tool A</th><th style=\"padding:12px;text-align:center;border-bottom:2px solid #cbd5e1\">Tool B</th><th style=\"padding:12px;text-align:center;border-bottom:2px solid #cbd5e1\">Tool C</th></tr><tr><td style=\"padding:12px;border-bottom:1px solid #e2e8f0\">Free tier</td><td style=\"padding:12px;text-align:center;border-bottom:1px solid #e2e8f0\">✅</td><td style=\"padding:12px;text-align:center;border-bottom:1px solid #e2e8f0\">✅</td><td style=\"padding:12px;text-align:center;border-bottom:1px solid #e2e8f0\">❌</td></tr></table></div>"239}'240```241242## Internal Linking Strategy243244| Type | Purpose |245|------|---------|246| **Hub → Spoke** | Pillar page links to all subtopic articles |247| **Spoke → Hub** | Subtopic articles link back to pillar page |248| **Spoke → Spoke** | Related articles cross-link to each other |249| **Contextual** | Natural in-text links where topic is mentioned |250251### Rules252253- 3-5 internal links minimum per article254- Anchor text should be descriptive (not "click here")255- Link to relevant pages, not random ones256- Update old articles to link to new ones257- Most important pages should have the most internal links258259## Common Mistakes260261| Mistake | Problem | Fix |262|---------|---------|-----|263| No SERP analysis | Writing blind, wrong format | Always analyze top 3-5 before writing |264| Wrong intent match | Guide when they want comparison, or vice versa | Match SERP format exactly |265| Keyword stuffing | Penalized, reads poorly | Use naturally, 1-2% density max |266| Ignoring "People Also Ask" | Missing easy ranking opportunities | Answer PAA questions in your content |267| Too short | Can't compete with comprehensive results | Match or exceed top 3 word count |268| No unique angle | Just another "me too" article | Original data, expert quotes, better visuals |269| Keyword cannibalization | Multiple pages competing | One page per keyword cluster |270| No internal links | Wasted link equity, poor site structure | 3-5 internal links per article |271| Missing meta description | Google generates one (often poorly) | Write compelling meta with keyword + CTA |272273## Related Skills274275```bash276npx skills add inference-sh/skills@seo277npx skills add inference-sh/skills@technical-blog-writing278npx skills add inference-sh/skills@web-search279```280281Browse all apps: `belt app store`282