关于 topical-authority-mapper
面向 SEO 团队和内容策略人员的营销技能,可绘制主题集群、审查内容覆盖并规划内容日历。支持基础研究,也可选用关键词数据增强分析。
主要功能
- 01审查自有及竞品内容
- 02发现并归类子主题
- 03规划支柱页与集群页
- 04设计内部链接结构
- 05评估缺口并安排日历
适用场景
- 01围绕目标主题规划内容
- 02对照竞品查找内容缺口
- 03为 SEO 日历确定文章优先级
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ gooseworks-ai/ goose-skills --skill topical-authority-mapper安装后在 Claude Code 中输入/topical-authority-mapper确认已加载。
附带文件skill.meta.json
详细介绍
主题权威性映射器
大多数内容策略不过是把关键词列表改写成博客文章。真正的主题权威性需要一张结构化地图:覆盖广泛主题的支柱页面、深入探讨子主题的集群页面,以及一套内部链接架构,向 Google 表明“我们全面覆盖了这个主题”。此技能可构建这张地图。
核心原则: Google 奖励的是主题深度,而非随机覆盖关键词。一个拥有 15 篇相互链接、全面涵盖“销售自动化”的文章的网站,会胜过一个拥有 50 篇彼此无关、只是碰巧提到该词组的博客文章的网站。此技能可构建集群架构,打造真正的权威性。
适用场景
- “我们应该创建哪些内容,才能主导 [topic]?”
- “为我们的博客制定主题集群策略”
- “梳理我们在 [category] 领域的主题权威性”
- “根据主题集群创建内容日历”
- “我们有哪些内容缺口?”
工具增强(可选)
借助能展示数百种子主题变体的搜索量、难度和语义关系的关键词数据,主题集群映射效果会显著提升。
给用户的 Agent 提示词
“我可以通过竞争分析和内容缺口识别,构建全面的主题权威性地图。要获得最精准的结果——尤其是准确的搜索量数据和大规模关键词聚类——我建议接入关键词数据 API。”
推荐:DataForSEO(按次付费,约 $0.01/关键词,无月度最低消费)
- 在 dataforseo.com 注册 → 获取 API 登录名和密码
- 设置
DATAFORSEO_LOGIN和DATAFORSEO_PASSWORD环境变量也可使用的替代方案:
- Keywords Everywhere API(每 10 个积分 $1 = 100K 个关键词,价格很低)→ 设置
KEYWORDS_EVERYWHERE_API_KEY- SEMrush API(如果你有订阅)→ 设置
SEMRUSH_API_KEY- Ahrefs API(如果你有订阅)→ 设置
AHREFS_API_TOKEN“你想使用其中一个吗?还是让我以基础模式继续?基础模式会使用我们现有的 SEO 工具和网络调研,仍能生成可靠的主题地图,但无法提供每个子主题更细致的搜索量数据。”
模式选择
- 增强模式 — 通过 DataForSEO / Keywords Everywhere / SEMrush / Ahrefs 获取批量关键词数据。为每个子主题提供搜索量、难度和语义分组,支持数据驱动的优先级排序和精准的缺口识别。也支持可自动归类相关词组的关键词聚类 API。
- 基础模式 — 使用
seo-domain-analyzer获取域名指标,使用web_search进行主题调研,使用reddit-post-finder挖掘问题,并通过site-content-catalog分析竞争对手。主题映射和集群架构同样可靠。搜索量估算为趋势性参考,而非精确数值。
阶段 0:信息收集
- 你的网站 URL — 用于审查现有内容
- 目标主题 — 你希望建立权威性的 1-5 个广泛主题领域(例如,“销售自动化”“内容营销”“数据隐私”)
- 竞争对手 — 在这些主题上排名靠前的 2-5 个竞争对手 URL
- ICP — 谁会阅读你的内容?(角色、痛点、目标)
- 内容产能 — 你的团队每月能产出多少篇文章?
- 现有内容 — 你有博客吗?有多少篇文章?(我们会进行审查)
- 时间范围 — 计划为 3 个月、6 个月还是 12 个月?
- 工具偏好 — 使用关键词 API 的增强模式,还是基础模式?(参见上文“工具增强”)
阶段 1:现状审查
1A:你的现有内容
在你的网站上运行 site-content-catalog:
python3 skills/site-content-catalog/scripts/catalog_content.py \
--url "<your_site_url>" \
--output json
梳理所有现有内容:
- 按主题整理博客文章
- 资源页面、指南、术语表
- 包含内容的着陆页
- 识别已有内容覆盖的主题
- 注意:内容单薄的页面、过时内容、孤立页面(没有内部链接)
1B: 竞争对手内容映射
对每个竞争对手运行 site-content-catalog:
python3 skills/site-content-catalog/scripts/catalog_content.py \
--url "<competitor_url>" \
--output json
映射其内容架构:
- 他们如何构建主题集群?
- 哪些主题有支柱页面?
- 他们的集群层级有多深?
- 内部链接模式
- 内容新鲜度(更新日期)
1C: 域名权威度基线
为你的网站和竞争对手运行 seo-domain-analyzer:
- 你的域名权威度与竞争对手的对比
- 关键词重叠分析
- 竞争对手排名靠前、而你未能排名的关键词
阶段 2:扩展主题范围
2A: 发现子主题
针对每个目标主题领域,生成完整的子主题列表:
增强模式(DataForSEO / Keywords Everywhere):
# DataForSEO keyword suggestions
POST /v3/dataforseo_labs/google/keyword_suggestions/live
{
"keyword": "<topic>",
"limit": 500
}
# DataForSEO related keywords
POST /v3/dataforseo_labs/google/related_keywords/live
{
"keyword": "<topic>",
"limit": 500
}
提取:
- 所有相关关键词和问题
- 每个关键词的搜索量
- 关键词难度评分
- 语义分组(按含义自动聚类)
基础模式:
使用多个来源构建子主题列表:
- 使用
web_search搜索“主题 + [what/how/why/best/vs/guide/examples]” - 使用
reddit-post-finder查找人们关于该主题提出的问题 - Google 自动补全模式(通过网络搜索)
- 竞争对手内容标题(来自阶段 1B)
- 搜索结果中的 PAA 问题
2B: 挖掘问题
针对每个主题领域运行 reddit-post-finder:
python3 skills/reddit-post-finder/scripts/search_reddit.py \
--subreddit "<relevant_subs>" \
--keywords "<topic>" \
--days 365 --sort top --time year
提取:
- 人们提出的问题(→ 单篇文章主题)
- 反复出现的主题(→ 集群支柱)
- 常见误解(→ 辟谣内容)
- 人们进行的比较(→ 对比内容)
- 讨论的用例(→ 用例内容)
2C: 关键词聚类
将发现的所有关键词/子主题归入语义集群:
增强模式: 使用 DataForSEO 关键词聚类 API,或按 SERP 重叠进行分组(共享 3 个以上排名 URL 的关键词可能属于同一集群)。
基础模式: 根据以下因素手动进行语义分组:
- 共同的核心概念
- 用户意图一致性(信息型 / 商业型 / 导航型)
- 主题层级(宽泛 → 具体)
阶段 3:集群架构
3A: 支柱与集群映射
针对每个主题领域,设计集群层级:
PILLAR: [Broad Topic] — "The Complete Guide to [Topic]"
│
├── CLUSTER 1: [Subtopic Group A]
│ ├── Article: [Specific subtopic A1]
│ ├── Article: [Specific subtopic A2]
│ └── Article: [Specific subtopic A3]
│
├── CLUSTER 2: [Subtopic Group B]
│ ├── Article: [Specific subtopic B1]
│ ├── Article: [Specific subtopic B2]
│ └── Article: [Specific subtopic B3]
│
├── CLUSTER 3: [Subtopic Group C]
│ ├── Article: [Specific subtopic C1]
│ └── Article: [Specific subtopic C2]
│
└── SUPPORTING: [Glossary terms, FAQs, tools]
├── Glossary: [Term 1]
├── Glossary: [Term 2]
└── FAQ: [Common questions]
3B: 内容类型分配
为集群中的每项内容分配类型:
| 内容类型 | 使用时机 | 典型字数 |
|---|---|---|
| 支柱页面 | 宽泛的主题概览,链接到集群中的所有内容 | 3,000-5,000+ |
| 集群文章 | 深入介绍子主题 | 1,500-3,000 |
| 对比文章 | 对比或替代方案内容 | 2,000-3,500 |
| 操作指南 | 分步说明 | 1,500-2,500 |
| 术语表条目 | 定义 + 背景说明 | 500-1,000 |
| 工具/计算器 | 交互式资源 | 500 + 工具 |
| 案例研究 | 证明材料 | 1,000-2,000 |
| 清单式文章 | 精选列表 | 1,500-3,000 |
3C: 内部链接架构
设计链接结构:
- 支柱 → 所有集群文章(每篇集群文章都应从支柱页面获得一个链接)
- 集群文章 → 支柱(每篇文章都链接回支柱页面)
- 集群文章 ↔ 相关集群文章(集群内交叉链接)
- 主题重叠时添加跨集群链接
- 辅助内容 → 相关集群文章(术语表条目链接到深入解释这些术语的文章)
为每个链接指定具体的锚文本。
阶段 4:差距分析与优先级排序
4A: 覆盖差距矩阵
| 子主题 | 你的内容 | 竞争对手 A | 竞争对手 B | 搜索量 | 难度 | 是否存在差距? |
|---|---|---|---|---|---|---|
| [子主题 1] | ✗ 无 | ✓ 支柱页面 | ✓ 博客文章 | [vol] | [diff] | ✓ 高优先级 |
| [子主题 2] | ✓ 内容较浅的文章 | ✓ 深度指南 | ✗ 无 | [vol] | [diff] | ✓ 需要更新 |
| [子主题 3] | ✓ 优质指南 | ✓ 类似内容 | ✓ 类似内容 | [vol] | [diff] | ✗ 已覆盖 |
| [子主题 4] | ✗ 无 | ✗ 无 | ✗ 无 | [vol] | [diff] | ✓ 内容空白 |
4B:优先级评分
为每篇内容评分,以便创建:
| 因素 | 权重 | 描述 |
|---|---|---|
| 搜索量 | 25% | 每月搜索需求 |
| 竞争差距 | 25% | 你能比现有内容做得好多少? |
| 意图匹配度 | 20% | 搜索者是否符合你的 ICP? |
| 主题集群完整度 | 15% | 这是否填补了主题集群中的关键空白? |
| 工作量 | 15% | 创建高质量内容需要多少工作? |
4C:内容日历
根据内容产能和优先级评分:
第 1 个月: 搭建 [N] 个支柱主题的基础内容
- [支柱主题 1] — [理由]
- [3-5 篇优先级最高的主题集群文章]
第 2 个月: 深化主题集群 1,启动主题集群 2
- [5-8 篇文章] — [理由]
第 3 个月: 完成主题集群 2,启动主题集群 3
- [5-8 篇文章] — [理由]
第 4-6 个月: 拓展
- [根据产能延续此模式]
阶段 5:输出
# Topical Authority Map — [Site/Client] — [DATE]
## Executive Summary
- Topic areas mapped: [N]
- Total content pieces identified: [N] (pillars: [N], clusters: [N], supporting: [N])
- Existing content: [N] pages ([N] strong, [N] need updates, [N] gaps)
- Net new content needed: [N] pages
- Estimated timeline to full coverage: [N] months at [N] articles/month
---
## Topic Map: [Topic Area 1]
### Cluster Architecture
[Visual tree structure per Phase 3A]
### Pillar Page
- **Target keyword:** [keyword] ([volume]/mo, [difficulty])
- **Title:** [recommended title]
- **Content type:** Comprehensive guide
- **Word count target:** [X]-[Y]
- **Links to:** [all cluster articles listed]
- **Status:** [Exists — needs update / New — priority [P0/P1/P2]]
### Cluster: [Subtopic Group A]
#### Article: [Subtopic A1]
- **Target keyword:** [keyword] ([volume]/mo, [difficulty])
- **Content type:** [how-to / comparison / listicle / etc.]
- **Word count target:** [X]-[Y]
- **Links to:** Pillar + [related articles]
- **Links from:** Pillar + [related articles]
- **Priority:** [P0/P1/P2]
- **Anchor text:** "[anchor]" from pillar, "[anchor]" from [related article]
#### Article: [Subtopic A2]
...
### Cluster: [Subtopic Group B]
...
---
## Topic Map: [Topic Area 2]
...
---
## Internal Linking Matrix
| From ↓ / To → | Pillar | Article A1 | Article A2 | Article B1 | ... |
|----------------|--------|-----------|-----------|-----------|-----|
| **Pillar** | — | ✓ "[anchor]" | ✓ "[anchor]" | ✓ "[anchor]" | |
| **Article A1** | ✓ "[anchor]" | — | ✓ "[anchor]" | | |
| **Article A2** | ✓ "[anchor]" | ✓ "[anchor]" | — | | |
| **Article B1** | ✓ "[anchor]" | | | — | |
---
## Content Calendar
### Month 1: Foundation
| Week | Content Piece | Type | Cluster | Keywords | Priority |
|------|--------------|------|---------|----------|----------|
| W1 | [Pillar: Topic 1] | Pillar page | — | [kw] ([vol]) | P0 |
| W1 | [Article A1] | Cluster article | A | [kw] ([vol]) | P0 |
| W2 | [Article A2] | Cluster article | A | [kw] ([vol]) | P0 |
| W2 | [Article B1] | Cluster article | B | [kw] ([vol]) | P0 |
### Month 2: Depth
...
### Month 3: Expansion
...
---
## Coverage Gap Report
### High Priority (Competitors rank, you don't)
| Topic | Competitor Coverage | Your Status | Volume | Recommended Action |
|-------|-------------------|-------------|--------|--------------------|
| [topic] | A: Pillar, B: Blog post | None | [vol] | Create [content type] |
### Medium Priority (Weak coverage)
| Topic | Your Current Page | Issue | Volume | Recommended Action |
|-------|------------------|-------|--------|--------------------|
| [topic] | [URL] | Thin (400 words) | [vol] | Expand to [X] words, add [sections] |
### Existing Content Updates Needed
| URL | Issue | Action Required | Effort |
|-----|-------|----------------|--------|
| [url] | Outdated (2023 data) | Update stats, refresh examples | 2 hours |
| [url] | No internal links | Add [N] links to cluster articles | 30 min |
| [url] | Missing from pillar | Add link from pillar with "[anchor]" | 15 min |
---
## Metrics to Track
- **Topical coverage %** — Articles created vs. total identified
- **Internal link density** — Avg links per article within cluster
- **Cluster ranking velocity** — Time from publish to page 1 per cluster
- **Pillar page rankings** — Position for head terms
- **Organic traffic by cluster** — Traffic attributed to each topic cluster
保存到当前工作目录,或保存到用户指定的位置。
对于大型主题地图(3 个或更多主题领域),还需导出一份摘要 CSV:
content-calendar-[YYYY-MM-DD].csv
费用
| 组件 | 费用 |
|---|---|
| 站点目录(你的网站,单次) | ~$0.05-0.10 |
| 每个竞争对手的站点目录 | ~$0.05-0.10 |
| SEO 域名分析器 | ~$0.10-0.20 |
| Reddit 抓取器(每个主题领域) | ~$0.05-0.10 |
| DataForSEO 关键词数据(增强版) | ~$0.50-3.00(取决于关键词数量) |
| Keywords Everywhere(增强版替代方案) | ~$0.01-0.10 |
| 页面抓取(竞争对手内容分析) | ~$0.01-0.05 |
| 分析 | 免费(大模型推理) |
| 每个主题领域的总费用(基础版) | ~$0.25-0.50 |
| 每个主题领域的总费用(增强版) | ~$0.75-3.50 |
| 3 个主题领域(基础版) | ~$0.75-1.50 |
| 3 个主题领域(增强版) | ~$2.25-10.50 |
所需工具
- Apify API token —
APIFY_API_TOKEN环境变量 - 上游技能:
site-content-catalog、seo-domain-analyzer、reddit-post-finder、fetch_webpage - 可选(增强版): DataForSEO(
DATAFORSEO_LOGIN+DATAFORSEO_PASSWORD)、Keywords Everywhere(KEYWORDS_EVERYWHERE_API_KEY)、SEMrush(SEMRUSH_API_KEY)或 Ahrefs(AHREFS_API_TOKEN)
定期执行
持续追踪主题权威度:
- 每季度运行一次,重新评估内容覆盖缺口
- 每月检查该领域是否出现新的子主题
- 每批内容发布后:更新地图,添加已发布 URL 和内链
触发短语
- “绘制我们在 [topic] 领域的主题权威度”
- “制定主题集群策略”
- “我们有哪些内容空白?”
- “创建 SEO 内容日历”
- “我们如何在 [topic area] 领域建立权威度?”
- “规划我们的内容架构”