Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ If this saves you an hour, leave a ⭐ — it keeps the project alive.
| IndexNow | [`seo-toolkit/indexnow.mjs`](seo-toolkit/indexnow.mjs) | Instant indexing via Bing, Yandex, Seznam, Naver |
| Sitemap | [`seo-toolkit/sitemap.mjs`](seo-toolkit/sitemap.mjs) | `sitemap.xml` from the same content directory |
| robots.txt | [`seo-toolkit/robots.mjs`](seo-toolkit/robots.mjs) | Sitemap reference + optional AI-crawler rules |
| Validator | [`seo-toolkit/check.mjs`](seo-toolkit/check.mjs) | Verify generated files + sitemap/llms agreement before deploy |
| GEO checklist | [`notes/geo-checklist.md`](notes/geo-checklist.md) | 2026 AI-search checklist for local business sites |

Full flags and API per tool: [`seo-toolkit/README.md`](seo-toolkit/README.md).
Expand All @@ -31,6 +32,7 @@ node llms-txt.mjs --dir ../notes --site https://example.com --out ../public/llms
node llms-full.mjs --dir ../notes --site https://example.com --out ../public/llms-full.txt
node sitemap.mjs --dir ../notes --site https://example.com --out ../public/sitemap.xml
node robots.mjs --site https://example.com --out ../public/robots.txt
node check.mjs --dir ../public --site https://example.com
node indexnow.mjs --host example.com --key YOUR_KEY --url https://example.com/new
```

Expand Down Expand Up @@ -97,7 +99,7 @@ skills/astro-seo/ installable agent skill (self-contained: SKILL.md, scripts/,
notes/ short checklists and tooling notes
examples/ minimal runnable Cloudflare Worker snippet
llms.txt machine-readable index of this repo
package.json npx bins: astro-seo-llms, -sitemap, -robots, -indexnow
package.json npx bins: astro-seo-llms, -llms-full, -sitemap, -robots, -indexnow
```

## Contributing
Expand Down
10 changes: 9 additions & 1 deletion seo-toolkit/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -116,8 +116,16 @@ node robots.mjs --site https://example.com --disallow-ai
| `--disallow-ai` | Adds `Disallow: /` blocks for GPTBot, CCBot, anthropic-ai, ClaudeBot, PerplexityBot. Use only when the site owner opts out — blocking AI crawlers also blocks AI citations |
| `--out` | Output file; prints to stdout if omitted |

## check.mjs — verify before deploy

```bash
node check.mjs --dir public --site https://example.com
```

Reads `llms.txt`, `sitemap.xml` and `robots.txt` from the dir, checks each against its spec (H1 + absolute links, urlset + locs, absolute Sitemap line) and fails when sitemap and `llms.txt` disagree. Prints a JSON report, exits non-zero on any issue. Run it in CI after build, before deploy.

## Test

```bash
npm test # node --test, 12 tests, no framework
npm test # node --test, 27 tests, no framework
```
Loading