mcpField
S
seo-sitemap

seo-sitemap

github.com/agricidaniel营销与增长89478 次安装2 周前更新
代码仓库

关于 seo-sitemap

seo-sitemap 是用于验证现有 XML 站点地图及规划、生成新地图的 SEO 技能。它帮助网站负责人和 SEO 从业者检查 URL 质量、处理规模限制,并生成带说明的站点地图文件。

主要功能

  1. 01验证站点地图 XML 与 URL
  2. 02对比地图条目和已抓取页面
  3. 03交互式规划站点地图结构
  4. 04生成 XML 与结构文档

适用场景

  1. 01查找无效或重定向的地图 URL
  2. 02将大型网站拆分为多个地图文件
  3. 03为网站创建附带说明的站点地图

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/agricidaniel/codex-seo --skill seo-sitemap

安装后在 Claude Code 中输入/seo-sitemap确认已加载。

附带文件LICENSE.txt

详细介绍

网站地图分析与生成

共享数据缓存

步骤 0 —— 检查共享数据缓存:

开始收集前,检查 .seo-cache/ 中是否有可复用的相关 SEO 技能上下文。 参考 ../seo/references/shared-data-cache.md,了解架构和依赖关系图。

如果存在,请检查以下缓存文件:

  • .seo-cache/site-meta.json:域名、业务类型、行业和抓取上下文

  • .seo-cache/audit-scores.json:之前完整审计的优先级

  • .seo-cache/pages/{url-slug}/page-analysis.json:提供 URL 时的页面级上下文

  • 如果找到:解析并使用明确有效的字段(注明“正在使用缓存中的 [X](日期:[date])”)

  • 如果缺失、损坏或无关:继续收集新的证据

  • 如果用户说“刷新”或“重新运行”:忽略缓存读取,并在写入时覆盖

模式 1:分析现有网站地图

验证检查
  • XML 格式有效
  • 每个文件的 URL 数量 <50,000(协议限制)
  • 所有 URL 均返回 HTTP 200
  • <lastmod> 日期准确(并非全部相同)
  • 不包含已弃用的标签:Google 会忽略 <priority> 和 <changefreq>
  • robots.txt 中引用了网站地图
  • 对比抓取到的页面与网站地图;标记缺失页面
质量信号
  • URL 数量 >50k 时使用网站地图索引文件
  • 按内容类型拆分(页面、文章、图片、视频)
  • 网站地图中不包含非规范 URL
  • 网站地图中不包含 noindex URL
  • 网站地图中不包含重定向 URL
  • 仅使用 HTTPS URL(不使用 HTTP)
常见问题
问题严重程度修复方法
单个文件中有 >50k 个 URL严重使用网站地图索引拆分
URL 返回非 200 状态码高移除或修复失效 URL
包含 noindex URL高从网站地图中移除
包含重定向 URL中更新为最终 URL
所有 lastmod 都相同低使用实际修改日期
使用 priority/changefreq信息可以移除(Google 会忽略)

模式 2:生成新网站地图

流程
  1. 询问业务类型(或从现有网站自动识别)
  2. 从 ../seo-plan/assets/ 目录加载行业模板
  3. 与用户交互式规划结构
  4. 应用质量门槛:
    • ⚠️ 警告:地点页面达到 30 个或以上(要求至少 60% 的独特内容)
    • 🛑 硬性停止:地点页面达到 50 个或以上(要求提供理由)
  5. 生成有效的 XML 输出
  6. 达到 50k 个 URL 时使用网站地图索引拆分
  7. 生成 STRUCTURE.md 文档
适合规模化生成的页面(可接受)

✅ 集成页面(附带真实的设置文档) ✅ 模板/工具页面(附带可下载内容) ✅ 术语表页面(定义不少于 200 个词) ✅ 产品页面(独特规格、评价) ✅ 用户个人资料页面(用户生成内容)

有处罚风险(避免规模化生成)

❌ 仅替换城市名称的地点页面 ❌ 缺乏行业专属价值的“适用于[行业]的最佳[工具]” ❌ 缺乏真实对比数据的“[竞争对手]替代方案” ❌ 未经人工审核且缺乏独特价值的 AI 生成页面

网站地图格式

标准网站地图
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://example.com/page</loc>
    <lastmod>2026-02-07</lastmod>
  </url>
</urlset>
网站地图索引(适用于 >50k 个 URL)
<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <sitemap>
    <loc>https://example.com/sitemap-pages.xml</loc>
    <lastmod>2026-02-07</lastmod>
  </sitemap>
  <sitemap>
    <loc>https://example.com/sitemap-posts.xml</loc>
    <lastmod>2026-02-07</lastmod>
  </sitemap>
</sitemapindex>

错误处理

  • URL 无法访问:报告 HTTP 状态码,并建议检查网站是否在线
  • 未找到网站地图:报告“未找到”前,先检查常见位置(/sitemap.xml、/sitemap_index.xml、robots.txt 引用)
  • XML 格式无效:报告具体解析错误及行号
  • 检测到速率限制:暂停请求,并报告部分结果,同时注明重试时间

输出

分析时
  • VALIDATION-REPORT.md:分析结果
  • 问题列表及严重程度
  • 建议
生成时
  • sitemap.xml(或带索引的拆分文件)
  • STRUCTURE.md:网站架构文档
  • URL 数量和组织方式概要

写入共享数据缓存

完成所有工作后,如果工作流产生了持久性发现,请将简洁的 JSON 摘要写入 .seo-cache/。 使用 ../seo/references/shared-data-cache.md 中的架构和命名规则;至少包含 cache_type、analyzed_at、来源 URL/域名、关键发现、问题、建议和工具限制。如果 .gitignore 中没有 .seo-cache/,请将其添加进去。

评论

支持 Markdown