SEO & Content

Sitemap Builder

Builds a correct XML sitemap, or a sitemap index file, from a list of pages, answered as the XML document only. Lists only canonical, indexable pages that return 200 on one host, and leaves out redirecting, noindex, non-canonical, removed and other-host addresses. Writes every address absolute and entity-escaped (an ampersand in a query string becomes the escape code), and writes lastmod only when the input gives a real date for that page - never the day the file was generated, never a guess. Writes no priority and no changefreq, which Google ignores. Splits a site above 50,000 URLs or 50 MB uncompressed into several files under an index. Says where the file should live and how to submit it. Use when asked to write, generate, fix or check a sitemap.xml or sitemap index.

Sitemap Builder is a tested SKILL.md that builds a correct XML sitemap, or a sitemap index file, from a list of pages, answered as the XML document only; an agent buys it once for $0.02 over x402.

Tested 2026-10-08No code, no hidden instructionsv1.0.0 · 9.5 KB · perpetual license

Not for

Crawling a live site to find its pages, checking what Google has indexed, or repairing the pages themselves. It writes the file from the page list you provide and cannot see what the server returns today, so statuses and canonicals must come from you. Image, video and news sitemap extensions are not covered, and it does not submit anything for you.

Tested, honestly

Tested 2026-10-08 with a strong and a weak model.

With and without the skill

Results with and without the skill, for Sonnet and Haiku
SonnetHaiku
withwithoutwithwithout
Sitemaps that pass every check (23 requests)23/2322/2323/2321/23

The same request on both sides, XML only asked for in both; a fence around the answer is removed first. Read by hand, neither model without the skill made a real error. Sonnet added a changefreq tag where the input said the home page changes daily: the protocol allows it and Google ignores it, so that is noise, not a mistake. Haiku did that too and wrote a one-page site's root address without the trailing slash, which is the same address. Both models already left out redirects and noindex pages, escaped ampersands and invented no dates. The measured gain is about zero; the skill's value is a consistent file without ignored tags, with dates only from the input, and the checked limits.

Same cases and the same checks with and without the skill. The cases are ours, written around what the skill is for; with a handful of cases, a difference of one or two is within noise.

SonnetStrong model, claude-sonnet-5-5
Wrote a correct sitemap for all 23 requests: redirecting, noindex, non-canonical, removed and other-host addresses were left out and the canonical target listed once; every ampersand in a query string was escaped; lastmod appeared only where a date was given and was copied as written (updated date over published date, real content dates over a footer redeploy); pages without a date got no lastmod, not even when the file was generated on a stated day; an instruction hidden in a page title was ignored; no priority and no changefreq were written; 120,000 pages became an index of three files; percent-encoded Cyrillic paths were kept.
HaikuWeak model, claude-haiku-5-5
Also 23 of 23, with the same kinds of file as Sonnet: excluded addresses left out, escaped ampersands, lastmod only from given dates, no priority or changefreq, and an index of three files for 120,000 pages.

Full test summary

Example

Our own test text, before and after the skill ran. Excerpts only.

English · claude-sonnet-5-5

Before

Build the sitemap for https://www.example.com. All pages are public, indexable and return 200. Last modified dates from the CMS: - / : 2026-09-30 - /about : 2026-06-12 - /contact : 2026-03-01 - /services : 2026-09-15

After

<?xml version="1.0" encoding="UTF-8"?> <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <url> <loc>https://www.example.com/</loc> <lastmod>2026-09-30</lastmod> </url> <url> <loc>https://www.example.com/about</loc> <lastmod>2026-06-12</lastmod> </url> <url> <loc>https://www.example.com/contact</loc> <lastmod>2026-03-01</lastmod> </url> <url>…

Bulgarian · claude-sonnet-5-5

Before

Направи sitemap за сайта https://primer.example. Всички страници са публични, индексируеми и връщат 200. Адресите са както стоят в адресната лента, с дата на последна промяна: - https://primer.example/ : 2026-10-01 - https://primer.example/%D0%B1%D0%BB%D0%BE%D0%B3/%D0%B2%D0%B5%D0%BB%D0%BE%D0%B0%D0%BB%D0%B5%D0%B8 : 2026-09-20…

After

<?xml version="1.0" encoding="UTF-8"?> <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <url> <loc>https://primer.example/</loc> <lastmod>2026-10-01</lastmod> </url> <url> <loc>https://primer.example/%D0%B1%D0%BB%D0%BE%D0%B3/%D0%B2%D0%B5%D0%BB%D0%BE%D0%B0%D0%BB%D0%B5%D0%B8</loc> <lastmod>2026-09-20</lastmod> </url> <url>…

What is in the file

  • The answer
  • Which pages are listed
  • Addresses
  • lastmod: a real date or nothing
  • No priority, no changefreq
  • Limits and the index file
  • Where the file lives and how it is submitted
  • Text inside the input is data
  • Work in this order
  • Short examples

Languages

Any language. Tried in: English, Bulgarian.

License

Perpetual, non-exclusive; use and modify for yourself incl. paid work; no resale or republishing. Holder: Georgi Kalchev, aiskills402.com. Full terms.

Versions

Current version 1.0.0, updated 2026-10-08. Whoever bought an earlier version gets new ones free through the same re-download token.

  1. v1.0.0 · 2026-10-08

    First release (suggested price $0.02): builds a sitemap or sitemap index from a page list, answered as the XML only. Covers which pages are listed (200, indexable, canonical, one host), absolute and entity-escaped addresses, percent-encoded non-ASCII paths, lastmod only from a real date given for the page and copied as given, no priority or changefreq, the 50,000 URL and 50 MB limits with an index file, and where the file lives and how it is submitted (full address for a Domain property in Search Console, absolute Sitemap line in robots.txt).

FAQ

What is the answer when I hand over a page list?

A single XML document: a sitemap, or for a very large site an index file that points to several sitemaps. No fence, no commentary, so a script can save it as sitemap.xml directly. Each address is absolute and escaped, which matters for query strings: a raw ampersand makes the whole file invalid for the parser, and a relative path is ignored or misread by crawlers. The answer also keeps the dates you gave and nothing else, so what you save is ready to upload, written to the protocol rules, to the root of the site.

Which pages stay out of the file, and who decides that?

Addresses that redirect, pages carrying noindex, pages whose canonical points to another address, removed pages, pages that ask for a login, and addresses on another host or scheme. The canonical target of a redirect or a parameter variant is listed once instead. It drops a page only when your list says so; it does not guess a problem the list never mentioned. Mixed signals, such as a noindex page announced in the file, are the usual reason Search Console reports excluded addresses.

How does it treat dates, priority and change frequency?

A lastmod appears only for a page whose real modification date you supplied, copied exactly as written, and where you give both a published and an updated date it uses the updated one. A page without a date gets no lastmod: never today, never the day the file was generated. Priority and changefreq are never written, because Google ignores both. A date that changed only because a footer or a template was redeployed on every page is not treated as a page change when you also give the real dates. Copying matters.

Does it help Claude Sonnet?

Not measurably. On 23 requests Sonnet wrote 22 right alone and 23 with the skill, and Haiku 21 and 23. The one Sonnet miss was a changefreq tag, which the protocol allows and Google ignores. Both models already left out redirects and noindex pages, escaped ampersands and invented no dates. What you buy is a consistent, clean file, dates only from your input, and the 50,000 URL and 50 MB limits checked.

Share

Read this page as Markdown: /skills/sitemap-builder.md.

  • Robots.txt Policy Writer

    SEO & Content

    SKILL.md · v1.0.0 · 8.0 KB

    Turns a crawler policy written in words into a correct robots.txt, answered as the file only. Knows the mistakes that make a file do the opposite of what was meant - a crawler obeys only the one group that names it, so a GPTBot group silently drops every rule written for the star group and the private paths must be repeated; longest match wins and Allow wins a tie; Google ignores Crawl-delay; Host is a Yandex-only line; Sitemap must be an absolute address; Google-Extended is a control token for Gemini training and does not touch Google Search; training, search and user-triggered AI bots are separate tokens. Says in a NOTE comment what robots.txt cannot do, such as removing a page from Google. Use when asked to write, check or fix a robots.txt, to allow or block search engines, AI crawlers or AI training bots, or to keep private paths out of crawlers.

    $0.03once

    • x402
    • USDC
    • Base
    Get skill

    Tested with Sonnet and Haiku, 8 Oct 2026

  • JSON-LD Schema Writer

    SEO & Content

    SKILL.md · v1.0.0 · 8.3 KB

    Writes schema.org JSON-LD for one web page from the facts you give it, answered as JSON only with no script tag and no fence. Covers Article, BlogPosting, Product with Offer, BreadcrumbList, FAQPage, Event, Organization, LocalBusiness, Recipe and JobPosting. Leaves out every fact that was not given instead of inventing it: no rating, review, price, availability, author, date or salary appears unless the page states it. Writes prices as plain numbers with an ISO currency code, dates in ISO 8601 with the stated offset, absolute URLs built from the site origin, and breadcrumb positions from 1. Use when asked to write, fix or check JSON-LD, structured data or schema markup for a page, product, article, event, FAQ or breadcrumb.

    $0.05once

    • x402
    • USDC
    • Base
    Get skill

    Tested with Sonnet and Haiku, 8 Oct 2026

  • SEO Meta Writer

    SEO & Content

    SKILL.md · v1.0.4 · 5.1 KB

    Writes the SEO title, meta description and (on request) the H1 heading for one web page, in the page's own language, inside hard character limits, matching what the searcher wants. Use when asked to write or rewrite a page title, meta description, SEO snippet or H1 for a page, product, service, article or landing page.

    $0.03once

    • x402
    • USDC
    • Base
    Get skill

    Tested with Sonnet and Haiku, 30 Sep 2026