$npx -y skills add Affitor/affiliate-skills --skill keyword-cluster-architectMap 50-200+ keywords into topical clusters for SEO domination. Build content roadmaps for topical authority. Triggers on: "keyword research", "keyword clustering", "topical authority", "keyword map", "keyword strategy", "content roadmap for SEO", "keyword grouping", "topic cluste
| 1 | # Keyword Cluster Architect |
| 2 | |
| 3 | Map 50-200+ keywords into topical clusters grouped by search intent. Build a content roadmap for dominating a topic with hub-and-spoke architecture. Google rewards topical authority — this skill builds the strategic map that tells you exactly what content to create and in what order. |
| 4 | |
| 5 | ## Stage |
| 6 | |
| 7 | S3: Blog & SEO — This is the strategic planning layer FOR blog content. Before writing individual posts, you need a map of the entire keyword landscape organized into clusters. |
| 8 | |
| 9 | ## When to Use |
| 10 | |
| 11 | - User wants to plan SEO content strategy for a niche |
| 12 | - User asks about keyword research, clustering, or topical authority |
| 13 | - User says "keyword", "SEO plan", "content roadmap", "topic cluster", "hub and spoke" |
| 14 | - Before running `affiliate-blog-builder` — to know WHICH articles to write |
| 15 | - After `monopoly-niche-finder` — to map the keyword universe for the winning niche |
| 16 | |
| 17 | ## Input Schema |
| 18 | |
| 19 | ```yaml |
| 20 | niche: string # REQUIRED — the topic to cluster |
| 21 | # e.g., "AI video tools", "email marketing for SaaS" |
| 22 | |
| 23 | seed_keywords: string[] # OPTIONAL — starting keywords to expand from |
| 24 | # Default: auto-generated from niche |
| 25 | |
| 26 | depth: string # OPTIONAL — "quick" (50 keywords) | "standard" (100) | "deep" (200+) |
| 27 | # Default: "standard" |
| 28 | |
| 29 | affiliate_products: string[] # OPTIONAL — products you promote (to prioritize commercial keywords) |
| 30 | # Default: none |
| 31 | ``` |
| 32 | |
| 33 | **Chaining from S1 monopoly-niche-finder**: Use `monopoly_niche.intersection` as the `niche` input. |
| 34 | |
| 35 | ## Workflow |
| 36 | |
| 37 | ### Step 1: Generate Seed Keywords |
| 38 | |
| 39 | If not provided, generate 5-10 seed keywords from the niche: |
| 40 | - Product-focused: "[product] review", "best [category]" |
| 41 | - Problem-focused: "how to [solve problem]", "[problem] solution" |
| 42 | - Comparison: "[product A] vs [product B]", "alternatives to [product]" |
| 43 | - Tutorial: "how to use [product]", "[product] tutorial" |
| 44 | |
| 45 | ### Step 2: Expand Keywords |
| 46 | |
| 47 | For each seed, use `web_search` to discover related keywords: |
| 48 | 1. Search: `"[seed keyword]"` — note related searches, People Also Ask |
| 49 | 2. Search: `"[seed keyword] guide" OR "[seed keyword] tutorial"` — informational variants |
| 50 | 3. Search: `"best [seed keyword]" OR "[seed keyword] review"` — commercial variants |
| 51 | |
| 52 | Collect 50-200+ unique keywords depending on `depth`. |
| 53 | |
| 54 | ### Step 3: Classify by Intent |
| 55 | |
| 56 | Read `shared/references/seo-strategy.md` for clustering methodology. |
| 57 | |
| 58 | Classify each keyword: |
| 59 | - **Informational** (I): Learning, how-to, what-is → blog posts, tutorials |
| 60 | - **Commercial** (C): Comparing, evaluating, reviewing → comparison posts, reviews |
| 61 | - **Transactional** (T): Ready to buy, pricing, discount → landing pages, deal pages |
| 62 | - **Navigational** (N): Brand-specific, login → skip (not your traffic to capture) |
| 63 | |
| 64 | ### Step 4: Cluster by Topic |
| 65 | |
| 66 | Group keywords that share the same search intent (would be answered by the same page): |
| 67 | |
| 68 | ``` |
| 69 | Cluster: "[Main Topic]" |
| 70 | Type: [I/C/T] |
| 71 | Hub keyword: [highest volume keyword] |
| 72 | Supporting keywords: |
| 73 | - [keyword 1] — [est. volume] |
| 74 | - [keyword 2] — [est. volume] |
| 75 | Content type: [blog post / comparison / review / tutorial / landing page] |
| 76 | Priority: [1-5 based on volume × intent × competition] |
| 77 | ``` |
| 78 | |
| 79 | ### Step 5: Build Content Roadmap |
| 80 | |
| 81 | Organize clusters into a hub-and-spoke map: |
| 82 | |
| 83 | 1. Identify the hub page (broadest, highest-volume cluster) |
| 84 | 2. Connect spoke pages (specific clusters that link back to hub) |
| 85 | 3. Prioritize by: commercial intent first (revenue), then informational (traffic) |
| 86 | 4. Estimate effort: number of articles needed, suggested publishing cadence |
| 87 | |
| 88 | ### Step 6: Self-Validation |
| 89 | |
| 90 | - [ ] Clusters are based on actual search data, not guesses |
| 91 | - [ ] Each cluster has a clear search intent (I, C, or T) |
| 92 | - [ ] Hub-and-spoke structure is logical (hub is broad, spokes are specific) |
| 93 | - [ ] Priority ordering makes business sense (revenue-driving content first) |
| 94 | - [ ] Total content pieces are realistic for user's capacity |
| 95 | |
| 96 | ## Output Schema |
| 97 | |
| 98 | ```yaml |
| 99 | output_schema_version: "1.0.0" |
| 100 | keyword_clusters: |
| 101 | niche: string |
| 102 | total_keywords: number |
| 103 | total_clusters: number |
| 104 | |
| 105 | hub: |
| 106 | keyword: string |
| 107 | cluster_name: string |
| 108 | content_type: string |
| 109 | priority: number |