用途
SEO Regression Validator 用于在已有技术 SEO/schema 指导之后、在声称某个站点或技能输出已完成之前进行验证。它针对线上 HTML、本地 fixture 和生成的产物,核验 SEO 与 LLM 可读性相关的声明是否成立。
主要能力
该技能负责以下事项:
- 线上 HTML 与本地 fixture 检查;
- 通过/失败严重级别模型;
- 带时间戳的证据报告;
- schema/head 元数据检查;
- 公开产物可达性检查;
- 回归报告模板;
- 针对缺失 JSON-LD、重复 canonical、缺失图片和虚假报告的负向测试。
该技能不负责以下事项:
- 实施 SEO 修复;
- 需凭据的 Search Console 数据;
- 分析数据导出;
- 外部权威放置;
- 修改目标网站。
使用方式
工作流程如下:
- 定义目标 URL 或 fixture 文件。
- 记录时间戳、目标、方法和用户代理。
- 在不修改的前提下抓取或读取目标。
- 当 HTML 可用时,使用 scripts/audit_static_seo.py 运行确定性检查。
- 区分关键失败、警告和跳过的检查。
- 记录跳过的检查,而不是将其视为通过。
- 生成或更新 seo-regression-report.json 以及人类可读的验证摘要。
- 将实施修复路由给相应的专家。
在运行广泛审计之前,先阅读 references/regression-checklist.md。
严重级别
默认视为关键的问题:
- 缺失 <title>;
- 缺失 meta description;
- canonical 缺失或重复;
- 预期有 schema 的页面没有 JSON-LD;
- JSON-LD 无效;
- NewsArticle 没有可用图片;
- 线上检查时公开页面被阻止或不可达;
- 报告未抓取或读取目标却声称成功。
默认视为警告的问题:
- 预期有多语言等价页面时缺失 hreflang;
- 缺失 OG/Twitter 社交标签;
- 缺失 RSS 自动发现;
- 缺失 viewport;
- 存在 article schema 时缺失文章元标签;
- 预期有 BreadcrumbList 时没有可见面包屑;
- 未测量性能指标。
安全与隐私边界
- 不要修改目标站点。
- 除非用户为此任务明确提供凭据,否则不要使用凭据。
- 不要在报告中存储 cookie、token、原始私有分析数据、原始 IP 日志或私有 Search Console 行。
- 不要仅凭一次 HTML 检查就声称排名、索引、引用或爬虫行为。
验证
使用以下命令验证技能编辑:
python3 $CODEX_HOME/skills/senior-skill-architect/scripts/lint_production_skill.py $HOME/SKILL/skills/seo-regression-validator
python3 $HOME/SKILL/skills/seo-regression-validator/scripts/audit_static_seo.py $HOME/SKILL/skills/seo-regression-validator/fixtures/good-news.html
python3 $HOME/SKILL/plans/seo-llm-skill-cluster/scripts/lint_skill_cluster.py $HOME/SKILL
前向测试位于 evals.json。
输出形态
返回内容:
- 已检查的目标;
- 关键发现;
- 警告;
- 跳过的检查;
- 证据路径或 URL;
- 每项修复的实施负责人。
适用场景与限制
适用于在技术 SEO/schema 指导已存在后,需要验证站点或技能输出是否真正达标、并生成可追溯证据报告的场景。限制包括:不实施修复、不访问需凭据的数据、不修改目标站点,且不能仅凭一次 HTML 检查推断排名、索引、引用或爬虫行为。