关于 seo-sxo
seo-sxo 是一项 SEO 技能,评估页面与搜索结果及用户需求的匹配度,而不只检查技术状况。它分析 SERP 预期、页面类型、内容差距和用户画像,并可生成线框图。
主要功能
- 01SERP 与页面类型分析
- 02检测页面与搜索意图错配
- 03七维差距评分
- 04基于用户画像评估页面
- 05可选生成现状与目标线框图
- 06使用 DataForSEO 或 WebSearch 调研
适用场景
- 01分析页面未能获得排名的原因
- 02为目标关键词选择页面形式
- 03确定内容与 UX 改进优先级
- 04起草符合搜索预期的页面线框图
MCP 相关
如可使用 DataForSEO MCP 工具,该技能可获取精确的 SERP 数据和关键词指标;否则改用 WebSearch。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ infrasity-labs/ dev-gtm-claude-skills --skill seo-sxo安装后在 Claude Code 中输入/seo-sxo确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/page-type-taxonomy.mdpersona-scoring.mduser-story-framework.mdwireframe-templates.md详细介绍
搜索体验优化(SXO)
SXO 弥合了 SEO(Google 奖励什么)与 UX(用户需要什么)之间的差距。 传统 SEO 审核会检查技术健康状况。SXO 则会询问:“根据 Google 在搜索结果页中实际奖励的内容,这个页面是否值得针对这个关键词获得排名?”
核心洞察
一个页面的技术 SEO 得分可以达到 95/100,却仍然无法获得排名,因为它针对该关键词的页面类型不正确。如果 Google 针对你的关键词展示了 8 个产品页面和 2 个对比页面,你的博客文章就永远无法脱颖而出——无论优化得多么完善。
命令
| 命令 | 用途 |
|---|---|
/seo sxo <url> | 完整的 SXO 分析(自动从页面检测关键词) |
/seo sxo <url> <keyword> | 针对特定关键词进行完整的 SXO 分析 |
/seo sxo wireframe <url> | 生成包含具体占位内容的 IST/SOLL 线框图 |
/seo sxo personas <url> | 仅进行用户画像评分(跳过 SERP 分析) |
执行流程
步骤 1:获取目标
- 通过
scripts/fetch_page.py获取目标 URL(可防范 SSRF) - 使用
scripts/parse_html.py解析并提取:标题、H1、元描述、 标题层级、字数、Schema 标记、CTA、媒体元素 - 如果未提供关键词,则根据标题标签与 H1 的重合内容提取主要关键词
- 继续之前,验证关键词不为空
步骤 2:反向分析 SERP
阅读 references/page-type-taxonomy.md,了解分类规则。
- 在 Google 中搜索目标关键词(WebSearch)
- 对排名前 10 的自然搜索结果逐一记录:
- URL 和域名权威度级别(品牌/细分领域权威/未知)
- 页面类型(使用分类体系进行分类)
- 内容形式(长篇内容、清单文章、操作指南、对比、工具、视频)
- 字数估算(根据摘要长度和页面结构)
- 存在的 Schema 类型(根据 SERP 特征:评分、FAQ、HowTo)
- 媒体信号(视频轮播、图片组、是否有缩略图)
- 记录存在的 SERP 特征:
- 精选摘要(段落/列表/表格/视频)
- “其他用户还在问”(提取所有可见问题)
- 广告(顶部和底部——统计数量并分析广告文案主题)
- 相关搜索(全部提取)
- 知识面板/本地商家信息/购物结果
- 是否显示 AI Overview 及其来源类型
- 计算 SERP 共识:
- 主导页面类型(>60% = 共识强,40-60% = 混合,<40% = 分散)
- 内容深度预期(平均字数级别)
- Schema 预期(最常见的结构化数据类型)
- 媒体预期(是否需要视频?图片是否关键?)
步骤 3:检测页面类型不匹配
这是 SXO 的核心洞察。将目标页面类型与 SERP 共识进行比较。
不匹配严重程度:
| 目标类型 | SERP 预期 | 严重程度 | 建议 |
|---|---|---|---|
| 博客文章 | 产品页面 | 严重 | 创建专门的产品页面 |
| 博客文章 | 对比页面 | 高 | 重构为包含对比矩阵的页面 |
| 产品页面 | 信息型页面 | 高 | 添加教育内容层 |
| 落地页 | 工具/计算器 | 高 | 构建交互式工具组件 |
| 服务页面 | 本地搜索结果 | 中 | 添加位置相关信号和本地 Schema |
| 任意类型匹配 | - | 匹配 | 专注于内容深度和 UX |
分类规则:
- 使用
references/page-type-taxonomy.md对目标页面进行分类 - 使用相同的分类体系对每个 SERP 结果进行分类
- 如果目标页面类型与 SERP 主导类型不同,则标记为不匹配
- 如果 SERP 分布分散(没有主导类型),则指出差异化机会
第 4 步:推导用户故事
阅读 references/user-story-framework.md,了解完整框架。
根据 SERP 信号推导用户故事:
- PAA 问题揭示知识盲区和顾虑
- 广告文案主题揭示商业触发因素和价值主张
- 相关搜索揭示搜索历程(前后搜索了什么)
- 精选摘要格式揭示预期的答案结构
- AI Overview揭示 Google 认为的权威答案
针对每组信号生成一个用户故事:
As a [persona derived from signal],
I want to [goal derived from query intent],
because [emotional driver from ad copy / PAA tone],
but I'm blocked by [barrier derived from PAA questions / related searches].
生成 3-5 个用户故事,涵盖主要意图方向。
第 5 步:差距分析
从 7 个维度对比目标页面与 SERP 预期:
| 维度 | 对比内容 | 分数 |
|---|---|---|
| 页面类型 | 目标类型与 SERP 主导类型 | 0-15 |
| 内容深度 | 字数、标题层级、主题覆盖范围 | 0-15 |
| UX 信号 | CTA 清晰度、首屏内容、移动端布局 | 0-15 |
| Schema 标记 | 已有与预期的结构化数据类型 | 0-15 |
| 媒体丰富度 | 图片、视频、交互元素与 SERP 常见情况的对比 | 0-15 |
| 权威性信号 | E-E-A-T 标记、社会认同、资质 | 0-15 |
| 新鲜度 | 最近更新时间、日期信号、内容时效性 | 0-10 |
总分:0-100 SXO 差距分数(分数越低 = 差距越大,分数越高 = 越符合预期)
第 6 步:基于用户画像评分
阅读 references/persona-scoring.md,了解评分方法。
- 根据 SERP 意图信号推导 4-7 个用户画像:
- 按主题对 PAA 问题进行聚类
- 按目标受众划分广告文案
- 将相关搜索映射到搜索历程的各阶段
- 针对每个用户画像,从 4 个维度为目标页面评分(每项 25 分):
- 相关性:页面是否满足该用户画像的需求?
- 清晰度:该用户画像能否在 10 秒内找到答案?
- 信任度:该用户画像是否能看到足够的信任信号?
- 行动:该用户画像是否有明确的下一步行动?
- 输出用户画像卡片,附上评分和具体改进建议
- 按最弱的用户画像优先排列建议(最大机会)
第 7 步:线框图生成(可选)
仅在调用 /seo sxo wireframe 时执行。
阅读 references/wireframe-templates.md,了解模板。
- 根据解析后的页面结构生成 IST(当前状态)线框图
- 根据以下内容生成 SOLL(目标状态)线框图:
- SERP 共识页面类型
- 差距分析结果
- 用户画像评分中的薄弱环节
- 使用极其具体的占位内容:
- 不要:“在此添加 CTA”
- 应该:“在首屏主视觉下方添加带年度节省徽章的定价 CTA,链接至 /pricing#enterprise”
- 以带注释的语义化 HTML 章节大纲形式输出
DataForSEO 集成
如果有可用的 DataForSEO MCP 工具:
- 进行任何 API 调用之前,先估算成本并征得用户确认
- 使用
google_organic_serp获取精确的 SERP 数据(排名、功能、摘要) - 使用
keyword_data获取搜索量和竞争指标 - 如果 DataForSEO 不可用,则改用 WebSearch,并在输出中注明精度有所降低
SXO 分数与 SEO 健康分数
SXO 分数与主要 SEO 健康分数分开计算。
- SEO 健康分数 = 技术合规性(可抓取性、速度、schema 等)
- SXO 差距分数 = 页面与 SERP 预期之间的契合程度
- 页面可以获得 95 分 SEO + 30 分 SXO = 技术上完美,但战略上不匹配
- 两种分数均可用时,应一并报告
跨技能参考
| 发现 | 转交给 |
|---|---|
| 用户画像评分中发现 E-E-A-T 差距 | 转交给 /seo content 进行深入的 E-E-A-T 审核 |
| 缺少 schema 类型 | 转交给 /seo schema 进行生成 |
| SERP 中发现本地意图 | 转交给 /seo local 进行 GBP 分析 |
| 内容深度存在差距 | 转交给 /seo page 进行深入的页面分析 |
| 抓取期间发现技术问题 | 转交给 /seo technical 进行全面审核 |
| 图片/媒体存在差距 | 转交给 /seo images 进行优化 |
输出格式
完整 SXO 分析
## SXO Analysis: [URL]
### Target Keyword: [keyword]
### 1. SERP Landscape
- Dominant page type: [type] ([confidence]% consensus)
- SERP features: [list]
- Content depth norm: [word count range]
- Schema expectation: [types]
### 2. Page-Type Alignment
- Your page type: [type]
- SERP expects: [type]
- Verdict: [ALIGNED | MISMATCH (severity)]
- Impact: [explanation]
### 3. User Stories (derived from SERP signals)
[3-5 user stories with source signals]
### 4. Gap Analysis (SXO Score: XX/100)
[7-dimension breakdown table]
### 5. Persona Scores
[4-7 persona cards with 4-dimension scores]
### 6. Priority Actions
[Ranked list: fix mismatch first, then weakest persona gaps]
### 7. Limitations
[What could not be assessed, data source notes]
错误处理
| 错误 | 处理方式 |
|---|---|
| URL 抓取失败 | 报告错误,并建议检查 URL 是否可访问 |
| 未提供或未检测到关键词 | 请用户提供目标关键词 |
| WebSearch 返回的结果少于 5 条 | 使用现有数据继续分析,并说明样本有限 |
| SERP 没有自然搜索结果(全部为广告) | 说明 SERP 商业化程度很高,仅分析广告文案 |
| 目标页面由 JavaScript 渲染 | 说明这一限制,并使用现有 HTML 内容 |
| DataForSEO 费用超过阈值 | 改用 WebSearch,并通知用户 |
质量检查清单
交付结果前,请确认:
- 已通过
scripts/fetch_page.py抓取目标 URL(而非直接使用 curl/fetch) - 页面类型分类使用了参考资料中的分类体系
- 已分析至少 5 条 SERP 结果
- 用户故事引用了具体的 SERP 信号作为依据
- Persona 评分包含具体的改进建议
- SXO 评分明确标注为独立于 SEO Health Score 的评分
- 包含如实说明的限制部分
- 在适用情况下包含跨技能建议