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 list
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---5
6> **Install the belt CLI skill:** `npx skills add belt-sh/cli`
7
8# SEO Content Brief
9
10Create data-driven content briefs via [inference.sh](https://inference.sh) CLI.
11
12## Quick Start
13
14> Requires inference.sh CLI (`belt`). [Install instructions](https://raw.githubusercontent.com/inference-sh/skills/refs/heads/main/cli-install.md)
15
16```bash
17belt login
18
19# Research target keyword
20belt app run tavily/search-assistant --input '{
21 "query": "best project management tools for small teams 2024"
22}'
23
24# Analyze top-ranking content
25belt app run exa/search --input '{
26 "query": "project management tools small teams comparison guide"
27}'
28```
29
30
31## Content Brief Template
32
33Every brief should answer these questions before writing begins:
34
35```markdown
36# Content Brief: [Working Title]
37
38## Target
39- **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]
44
45## Search Intent Analysis
46- What is the searcher trying to accomplish?
47- What format do top results use? (listicle, guide, comparison, tutorial)
48- What questions need answering?
49
50## Outline
51H1: [Title with primary keyword]
52 H2: [Section 1]
53 H3: [Subsection]
54 H2: [Section 2]
55 ...
56
57## Competitors to Beat
581. [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]
61
62## Unique Angle
63What makes this piece different/better than what already ranks?
64
65## Internal Links
66- Link TO: [existing pages to link to from this article]
67- Link FROM: [existing pages that should link to this new article]
68```
69
70## Search Intent Types
71
72| 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" |
78
79**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.
80
81## SERP Analysis Process
82
83```bash
84# Step 1: See what currently ranks
85belt app run tavily/search-assistant --input '{
86 "query": "[your target keyword]"
87}'
88
89# Step 2: Analyze top-ranking content
90belt app run tavily/extract --input '{
91 "urls": ["https://top-result-1.com/article", "https://top-result-2.com/article"]
92}'
93
94# Step 3: Find related questions (People Also Ask)
95belt app run tavily/search-assistant --input '{
96 "query": "[keyword] questions people ask FAQ"
97}'
98
99# Step 4: Find content gaps
100belt app run exa/search --input '{
101 "query": "[keyword] [subtopic competitors miss]"
102}'
103```
104
105### What to Extract from Top Results
106
107| 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 |
116
117## Keyword Research
118
119### Keyword Metrics
120
121| 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 |
127
128### Finding Keywords
129
130```bash
131# Seed keyword research
132belt app run tavily/search-assistant --input '{
133 "query": "project management software long tail keywords related searches"
134}'
135
136# Find question-based keywords
137belt app run exa/search --input '{
138 "query": "questions about project management tools for startups"
139}'
140
141# Competitor keyword analysis
142belt app run tavily/search-assistant --input '{
143 "query": "site:competitor.com/blog top performing pages topics"
144}'
145```
146
147### Keyword Clustering
148
149Group related keywords into one piece of content:
150
151```
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```
160
161**One page per keyword cluster.** Don't create separate pages for each variation — that's keyword cannibalization.
162
163## Heading Structure
164
165### Rules
166
167| 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) |
176
177### Example Structure
178
179```
180H1: Best Project Management Tools for Small Teams (2025)
181 H2: How We Evaluated These Tools
182 H2: Top 10 Project Management Tools Compared
183 H3: 1. Tool A — Best for [use case]
184 H3: 2. Tool B — Best for [use case]
185 ...
186 H2: Feature Comparison Table
187 H2: How to Choose the Right Tool for Your Team
188 H3: Team Size Considerations
189 H3: Budget Considerations
190 H2: Frequently Asked Questions
191 H3: What is the easiest project management tool?
192 H3: Do small teams need project management software?
193 H2: Conclusion
194```
195
196## Word Count Targets
197
198| 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 |
205
206**Rule: match or exceed the average word count of the top 3 ranking results.** Don't pad — every word should add value.
207
208## On-Page SEO Checklist
209
210| 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 |
221
222## Content Differentiation
223
224### Unique Angles
225
226| 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 |
234
235```bash
236# Generate comparison infographic
237belt 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```
241
242## Internal Linking Strategy
243
244| 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 |
250
251### Rules
252
253- 3-5 internal links minimum per article
254- Anchor text should be descriptive (not "click here")
255- Link to relevant pages, not random ones
256- Update old articles to link to new ones
257- Most important pages should have the most internal links
258
259## Common Mistakes
260
261| 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 |
272
273## Related Skills
274
275```bash
276npx skills add inference-sh/skills@seo
277npx skills add inference-sh/skills@technical-blog-writing
278npx skills add inference-sh/skills@web-search
279```
280
281Browse all apps: `belt app list`
282