关于 seo-score
根据审核发现计算 Search SEO 和 AI Visibility 分数,并应用规定的权重、严重度上限、等级和覆盖率规则,适用于生成可复现的审核评分。
主要功能
- 01计算 Search SEO 和 AI 分数
- 02应用状态与严重度系数
- 03调整有效类别权重
- 04对严重失败设置分数上限
- 05报告等级与覆盖率
适用场景
- 01为一组 SEO 发现评分
- 02比较搜索与 AI 可见性结果
- 03为 CI 生成可复现的审核分数
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ hainrixz/ claude-seo-ai --skill seo-score安装后在 Claude Code 中输入/seo-score确认已加载。
详细介绍
seo-score
将发现项(符合 schema/finding.schema.json)转换为两个分数。完整模型见 references/scoring-model.md——请严格遵循。
步骤
- 按各模块映射到的类别分组发现项,并分别计算各项分数。发现项仅计入
expected_impact.axis(search、ai或both)指定的分数。 - 类别值 =
100 × Σ(status_factor × severity for scored findings) / Σ(severity),其中status_factor:pass 为 1.0,warn 为 0.5,fail 为 0.0。needs_api和not_applicable不计入任一求和。 - 有效权重:移除未产生任何发现项的条件类别(电商、本地、国际),并将其余权重重新归一化,使其总和等于有效权重总和。
- 分数 = 对 Search SEO 和 AI Visibility 分别计算
Σ(category_value × weight) / Σ(active weight)。 - 严重性门槛:如果存在
severity: 5且status: fail的发现项,则将受影响的分数上限设为 40,并设置capped: true。 - 指定等级(A≥90、B≥80、C≥70、D≥60、F<60),并根据 Search×AI 象限给出一句话解读。
6b. 覆盖率下限:报告
coverage(该轴始终启用的权重中,包含已评分发现项的百分比)。若低于 50%,该轴返回provisional: true和state: "partial"——必须同时注明等级和覆盖率,不能只写字母。 - M21(AI 发现与 Agent 端点——llms.txt、agents.md、UCP、Agentic 网站地图)的权重为 0——需报告,但不得影响 AI 分数。
确定性
优先使用 node "${CLAUDE_PLUGIN_ROOT}/scripts/score.mjs" --run <run-dir>(它会读取 <run-dir>/findings.json),或使用 --findings <path> 指定普通发现项文件。如果文件不包含运行上下文,则添加 --vertical a,b、--multilingual 和 --environment production|preview|staging|local,以确保结果可复现且可由 CI 检查。--run 接受路径,不能使用单词 latest:score 命令会先从 <root>/<host>/latest.json 解析 latest[:host],再传入目录。如果无法使用 Node,请按照相同公式手动计算并注明此备用方式。无论采用哪种方式,计算结果都必须与 references/scoring-model.md 一致。
输出
{ "search_seo": { "value": 78, "band": "C", "capped": false, "interpretation": "...", "categories": [ {"name":"Indexability & Crawl","weight":22,"value":91,"active":true}, ... ] },
"ai_visibility": { "value": 64, "band": "D", "capped": false, "interpretation": "Citable structure missing; add answer blocks and schema.", "categories": [ ... ] } }
评论
支持 Markdown