关于 seo-sitemap
seo-sitemap 是用于验证现有 XML 站点地图及规划、生成新地图的 SEO 技能。它帮助网站负责人和 SEO 从业者检查 URL 质量、处理规模限制,并生成带说明的站点地图文件。
主要功能
- 01验证站点地图 XML 与 URL
- 02对比地图条目和已抓取页面
- 03交互式规划站点地图结构
- 04生成 XML 与结构文档
适用场景
- 01查找无效或重定向的地图 URL
- 02将大型网站拆分为多个地图文件
- 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:生成新网站地图
流程
- 询问业务类型(或从现有网站自动识别)
- 从
../seo-plan/assets/目录加载行业模板 - 与用户交互式规划结构
- 应用质量门槛:
- ⚠️ 警告:地点页面达到 30 个或以上(要求至少 60% 的独特内容)
- 🛑 硬性停止:地点页面达到 50 个或以上(要求提供理由)
- 生成有效的 XML 输出
- 达到 50k 个 URL 时使用网站地图索引拆分
- 生成 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/,请将其添加进去。