mothermachine

Browse / Content publishing

SEOmator SEO Audit

332-rule SEO audit as a CLI, desktop app, and Claude Code skill, tuned by a seomator.toml.

AdaptableOperable ProductCLI Deterministic TypeScript CLI License: MIT

SEOmator's open-source auditor scans a page or crawls a site against 332 rules in 20 categories (technical SEO, Core Web Vitals with Playwright, structured data, security headers, AI and GEO readiness) and emits console, JSON, HTML, Markdown, or LLM-optimized XML. It installs from npm as a CLI, runs as an Electron dashboard, and registers as a Claude Code skill. Project settings live in seomator.toml.

Alternative to Screaming Frog, Semrush

Use it when
  • I want my agent to audit a site and hand me a prioritized fix list before I publish
  • I want an SEO check in CI that fails the build when a page regresses
Gotchas
  • Core Web Vitals need a system Chrome, Chromium, or Edge; use --no-cwv on headless boxes without one
  • Desktop app needs electron-rebuild for the native SQLite module
  • Vertical fit is SEO tooling rather than publishing; it audits pages, it does not publish them

Last activity Sep 2, 2026. Fit: adaptable 3, operable 3.

Editions

Free · Free open source

  • Clonegit clone https://github.com/seo-skills/seo-audit-skill
  • Installnpm install -g @seomator/seo-audit

SEOmator hosted · Free closed source

For agents: JSON · Markdown

Adaptable: what is yours to change

Make it yours

Config only4 things to edit

Run seomator init to write seomator.toml: [project] domains, [crawler] max_pages, concurrency, include and exclude globs, query-param stripping, [rules] enable and disable lists with wildcards, [output] format. Configs cascade from CLI flags to ./seomator.toml to parent directories to ~/.seomator/config.toml. Adding your own rules means editing src/, for which there is no owner guide.

Env vars
none
Config files
seomator.toml ~/.seomator/config.toml SKILL.md
Prompt files
SKILL.md
Accounts you need
none

Source

Operable: what an agent can drive

Interface

NativeCLIpublished by the builderlocal

How an agent can drive an Operable Listing, in five levels: native (built for the agent as the primary interface), official (the Builder ships an agent interface), wrapped (a third party wraps the software's API), config (an agent can only drive it by editing files), gui (screen control only). An interface is official only when it is published by the same organization that ships the software. GUI-level Listings are allowed and sorted last.

Docs
www.npmjs.com/package/@seomator/seo-audit

Reach

Partial coverage. 8 of 10 jobs reachable through the stated interface.

JobThrough the interfaceEvidence
Audit a single URL against all rulesReachableseomator audit <url>
Crawl and audit many pagesReachable--crawl --max-pages with concurrency; cross-page checks
Measure Core Web VitalsReachableLCP, CLS, FCP, TTFB, INP with Playwright; needs a local Chrome
Compare raw vs rendered DOMReachableJavaScript rendering analysis feature
Emit machine-readable reportsReachable--format json, html, markdown, llm
Gate CI on SEO regressionsReachableexit codes plus GitHub Actions and GitLab CI examples
Restrict or extend the rule setReachable[rules] enable and disable with wildcards in seomator.toml; -c categories flag
Run from inside Claude CodeReachablenpx skills add seo-skills/seo-audit-skill; SKILL.md at repo root
Track score history over timeNot reachablescore history and trend charts are desktop-app only
Use the hosted SEOmator web auditNot reachableseparate browser product at seomator.com

Code stack

Languages
TypeScript
Frameworks
Node.jsPlaywrightElectronbetter-sqlite3
Package manager
npm
Database
SQLite (crawl store)
Hosting target
local machineCI runners
Built
Unknown (recorded, never ranked)

Skills

CLI and desktop app are the product; the skill wraps the CLI for coding agents.

Kind
bundled
Paths
SKILL.md skill/SKILL.md

Evidence and confidence

FieldWhere it was seenConfidence
formFactorREADME: ships as a command-line tool, an Electron desktop app, and a Claude Code skill95%
executionModelrule engine with no model calls; the llm format is output for a model, not a call to one90%
operabilityCLI built for agents (llm output format, exit codes) and a SKILL.md, both from the Builder's repo90%
effortREADME Configuration section documents seomator.toml and the config cascade90%
editionsREADME: MIT, npm package; seomator.com hosted audit tool linked from README70%
activepushedAt 2026-09-02; 1 open issue–
provenanceAGENTS.md and claude.md in repo; no authorship statement40%
reach90%

Open questions

  • SEOmator hosted pricing
  • Should the Curator route this to an SEO or marketing vertical?

Sources