seo-sitemap について
seo-sitemapは、既存のXMLサイトマップの検証や、新規サイトマップの計画・生成を行うSEOスキルです。サイト運営者やSEO担当者向けにURL品質や件数制限を確認し、構成を記録した出力を作成します。
主な機能
- 01サイトマップXMLとURLの検証
- 02サイトマップとクロール済みページの比較
- 03サイトマップ構成の対話的な計画
- 04XMLと構成ドキュメントの生成
活用シーン
- 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] をキャッシュから使用」と記録します)
-
見つからない場合、破損している場合、または関連性がない場合:新たな証拠に基づいて続行します
-
ユーザーが「refresh」または「re-run」と指示した場合:キャッシュの読み取りを無視し、書き込み時に上書きします
モード 1:既存のサイトマップを分析する
検証項目
- 有効な XML 形式
- ファイルあたりの URL 数が 50,000 件未満(プロトコルの上限)
- すべての URL が HTTP 200 を返す
<lastmod>の日付が正確である(すべて同一ではない)- 非推奨タグがない:
<priority>と<changefreq>は Google に無視されます - robots.txt でサイトマップが参照されている
- クロールしたページとサイトマップを比較し、欠落ページにフラグを付ける
品質シグナル
- URL が 50,000 件を超える場合はサイトマップインデックスファイルを使用
- コンテンツタイプ別に分割(ページ、投稿、画像、動画)
- サイトマップに非正規 URL が含まれていない
- サイトマップに noindex の URL が含まれていない
- サイトマップにリダイレクト先ではない URL が含まれていない
- HTTPS の URL のみ(HTTP は不可)
よくある問題
| 問題 | 深刻度 | 対処方法 |
|---|---|---|
| 1 つのファイルに 50,000 件を超える URL がある | 致命的 | サイトマップインデックスで分割する |
| HTTP 200 以外の URL | 高 | 削除するか、壊れた URL を修正する |
| noindex の URL が含まれている | 高 | サイトマップから削除する |
| リダイレクトされる URL が含まれている | 中 | 最終 URL に更新する |
| lastmod がすべて同一 | 低 | 実際の更新日を使用する |
| priority/changefreq を使用している | 情報 | 削除可能です(Google に無視されます) |
モード 2:新しいサイトマップを生成する
プロセス
- ビジネスタイプを尋ねます(または既存サイトから自動検出します)
../seo-plan/assets/ディレクトリから業界テンプレートを読み込みます- ユーザーと対話しながら構造を計画します
- 品質基準を適用します:
- ⚠️ 30 件以上のロケーションページで警告(60%以上の独自コンテンツが必要)
- 🛑 50 件以上のロケーションページで完全停止(正当な理由が必要)
- 有効な XML 出力を生成します
- URL が 50,000 件でサイトマップインデックスを使用して分割します
- 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>
サイトマップインデックス(URL が 50,000 件を超える場合)
<?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/ が記載されていない場合は追加します。