| name | seo-sitemap |
| description | Analyze existing XML sitemaps or generate new ones with industry templates. Validates format, URLs, and structure. Use when user says "sitemap", "generate sitemap", "sitemap issues", or "XML sitemap".
|
| user-invokable | true |
| argument-hint | [url or generate] |
| license | MIT |
| metadata | {"author":"dotusmanali","version":"2.0.0","category":"seo"} |
| id | seo-sitemap |
| domain | technical |
| invoked_by | ["seo-sitemap","seo"] |
| depends_on | [] |
Sitemap Analysis & Generation
Shared Data Cache
Step 0 -- Check shared data cache:
Before gathering, check .seo-cache/ for reusable context from related SEO skills.
Reference: ../seo/references/shared-data-cache.md for schemas and dependency map.
Check these cache files when present:
-
.seo-cache/site-meta.json for domain, business type, industry, and crawl context
-
.seo-cache/audit-scores.json for prior full-audit priorities
-
.seo-cache/pages/{url-slug}/page-analysis.json for page-level context when a URL is provided
-
If found: parse and use clearly valid fields (note "Using cached [X] from [date]")
-
If missing, corrupt, or irrelevant: continue with fresh evidence
-
If the user says "refresh" or "re-run": ignore cache reads and overwrite on write
Mode 1: Analyze Existing Sitemap
Validation Checks
- Valid XML format
- URL count <50,000 per file (protocol limit)
- All URLs return HTTP 200
<lastmod> dates are accurate (not all identical)
- No deprecated tags:
<priority> and <changefreq> are ignored by Google
- Sitemap referenced in robots.txt
- Compare crawled pages vs sitemap; flag missing pages
Quality Signals
- Sitemap index file if >50k URLs
- Split by content type (pages, posts, images, videos)
- No non-canonical URLs in sitemap
- No noindexed URLs in sitemap
- No redirected URLs in sitemap
- HTTPS URLs only (no HTTP)
Common Issues
| Issue | Severity | Fix |
|---|
| >50k URLs in single file | Critical | Split with sitemap index |
| Non-200 URLs | High | Remove or fix broken URLs |
| Noindexed URLs included | High | Remove from sitemap |
| Redirected URLs included | Medium | Update to final URLs |
| All identical lastmod | Low | Use actual modification dates |