seo-cluster
SkillSearchUse when building semantic keyword clusters from SERP overlap for pillar/cluster content architecture.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the seo-cluster skill
What this skill tells your AI
The instructions your AI receives, as published by fusengine/agents in plugins/seo/skills/seo-cluster/SKILL.md and read by ahel’s review.
Semantic Clustering
Method
- Take seed keyword (e.g. "claude code")
- Fetch SERP for seed via WebFetch/fuse-browser (top 10 results)
- For each related keyword (autocomplete + "People Also Ask"):
- Fetch its SERP
- Compute overlap with seed's SERP (Jaccard index)
- Group keywords where SERP overlap ≥ 30% → same cluster
- Cluster center = highest-volume keyword
Output
# Cluster: "claude code"
## Pillar: claude code (vol: 12K, KD: 45)
- Intent: informational
- Featured: AI Overview, video
## Cluster pages
1. claude code installation (vol: 2.4K)
2. claude code vs cursor (vol: 1.8K)
3. claude code mcp servers (vol: 900)
4. claude code hooks (vol: 720)
Cluster by Buyer State (2026)
SERP overlap is the mechanical signal; the strategic axis is buyer state + intent, not surface similarity. Map each cluster keyword to a layer, then group by layer:
| Layer | State | Intent signal |
|---|---|---|
| L1 | Awareness | "what is", "why", problem framing |
| L2 | Comparison | "vs", "alternatives", "best for" |
| L3 | Evaluation | "pricing", "reviews", "worth it" |
| L4 | Decision | "buy", "near me", "demo", "signup" |
Two keywords with high SERP overlap but different buyer states belong to different pages. Never merge clusters on lexical similarity alone.
Citation eligibility
AI Overviews capture ~30-60% of informational (L1/L2) CTR. For those layers, prioritize pages that produce verbatim-extractable answers per section over raw ranking — the goal is the LLM citation, not only the blue link.
Local vs Global Intent (2026)
| Axis | LOCAL intent | GLOBAL intent |
|---|---|---|
| Type | Proximity transactional/navigational ("near me", "[service] [city]") | Informational / comparative |
| SERP feature | Triggers the Map Pack | AI Overviews-heavy |
| AI Overviews exposure | Resists (local results stay link-driven) | CTR eroded -40% to -58% on informational keywords |
| Target page | Local page / city hub | Global pillar |
One intent = one URL. Split a local page from the global/pillar page when local volume and content justify it. Do not split if local volume is below ~30 searches/month, or if you cannot write 1200+ words genuinely distinct from the pillar.
Anti-Cannibalization Check
Before creating cluster pages, verify no existing page targets the same buyer state + intent. Use seo-content skill. The primary keyword is exclusive per page — pillar = [service] (no city), local = [service] [city]. See seo-internal-linking for the pillar/local/region URL architecture and link mesh.
Signals
- GitHub stars
- 25
- Forks
- 4
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
seo-cluster-fusengine- Source
- github.com/fusengine/agents