Why use this, instead of pointing an agent at the scanners directly?
Every scanner here already returns a fix/recommendation string on each failing check, so an
agent with repo access could, in principle, call afdocs/is-agentic/Ora directly and act on that
text itself, with no siteready involved. Worth asking honestly where that leaves this tool, because
the answer isn’t the same for every layer of it.
The scan/report layer is genuinely weaker in an agent-native world. Normalizing three scanners’
different JSON shapes into one scorecard is mostly a human-readability win (report.md, a
diffable schema). An agent doesn’t care that afdocs and is-agentic disagree on field names, so it
can just read both raw outputs and act on each fix field. If your only user is an agent, not a
person reading a report, this part of siteready is convenience, not unique capability.
The fixers are where the real value is, and it isn’t close. A scanner’s fix field is a
one-line suggestion, something like “add an llms.txt directive” or “serve markdown on .md URLs.” Turning that into
working code is where the actual difficulty lives, and this project’s own history is the evidence.
fixers/astro.js’s smartQuotes() exists because Astro’s default remark-smartypants curls
quotes on rendered HTML only, silently failing afdocs’ markdown-content-parity check on 43–49% of
a real site’s blog posts. A plausible-looking hand fix would have missed that entirely. Add the
false-positive .md.ts-detection heuristic that had to be corrected once, the CRLF-vs-\n
fixture-stripping bug caught by Windows CI, taskkill /t for orphaned wrangler processes,
is-agentic’s server-side caching trap (a confirmed-live fix can rescan as unchanged), and Ora’s
url field being a report-page link rather than the scanned site (see scanners/ora.js). An agent
improvising a fix from a scanner’s one-sentence suggestion has to rediscover every one of those the
hard way, against a real site, in production. siteready’s fixers are that already-paid-for cost,
applied idempotently (skip what already exists, never overwrite) and verified cross-platform in CI.
The scan → enhance → rescan → diff-report cycle is the other asset an ad hoc fix session doesn’t
have. It proves a fix worked locally, before anything ships, with no live deployment needed
(fixtures/*/README.md reproduce real before/after numbers this way; scan-local/rescan-local
run each step separately, so a real gap — e.g. reviewing the report — falls between them rather than
forcing the whole cycle through in one automated shot). An agent applying suggestions by hand has no
equivalent. It has to deploy live and diff two scans itself, and it won’t know about is-agentic’s
caching trap above unless it’s already been burned by it once.
This argument fully favors “just use an agent directly” outside the framework/platform combos a
fixer covers. Today that’s Astro (with or without Starlight) on Cloudflare Pages, Netlify, or
GitLab Pages; Next.js (App Router) on Vercel or Netlify; and Jekyll on GitHub Pages or GitLab
Pages. Anything else and enhance reports unsupported, and siteready
really is just a nicer wrapper around scanner output for that site. That’s the honest scope limit,
and it’s also the roadmap. This tool’s value scales with fixer/platform coverage (see
Contributing), not with scanner count. ora was deliberately made opt-in rather
than a fourth default scanner for exactly this reason (see Architecture).
How this differs from GEO / prompt-based audit skills
There’s a growing category of GEO (“Generative Engine Optimization”) skill packs, like
Cognitic-Labs/geoskills, a suite of prompt skills
(geo-audit, geo-fix-content, geo-fix-schema, geo-fix-llmstxt, geo-compare,
geo-monitor) that score a URL and emit recommendations and templates. They overlap with
siteready enough to be worth an explicit comparison, but they’re aimed at a different question.
The short version: a GEO skill pack is a prompt-driven advisor for AI visibility. siteready is a build tool for AI usability. Four concrete consequences:
- Third-party scores, not self-graded ones. A prompt-based audit’s 0–100 comes from the model doing the judging, not reproducible run-to-run, not auditable, and no external party stands behind it. siteready’s numbers come from afdocs / Is Agentic / Ora. Same URL, same score, anyone can re-run it, and it’s citable to a client or a reviewer. “The standard’s own scanner says 97/100” is a different claim than “an AI told us we’re a 72.”
- Fixes are code, not templates. A
fixskill that emits suggested markup still leaves a human or agent to make it actually work. ThesmartQuotes()case above is the standing proof that this gap is real, not cosmetic. A plausible-looking hand fix silently fails afdocs’markdown-content-parityon 43–49% of a real site’s posts because of Astro’s defaultremark-smartypants, and no amount of prompting surfaces that. siteready’s fixers are that cost already paid, idempotent and never overwriting an existing file, verified on Windows/macOS/Linux in CI. scan → enhance → rescan → diff-reportis a falsification step. It proves a fix worked locally, before deployment, with a per-check fixed / regressed / still-failing breakdown. A recommendation engine has no equivalent. It hands over advice and exits, which is the piece an advisory tool can’t add without becoming a build tool.- GEO measures agent citation. Agent-readiness measures agent action, a different and wider
standard. GEO asks “will an LLM mention me.” Agent-readiness asks “can an agent complete a
task here.” That’s content
negotiation,
.mdmirror routes, controlled interaction, and on Ora’s full ranker a payments layer, ARD catalog, and A2A agent cards. The second question is the one that agentic commerce actually turns on. siteready is pointed at it deliberately, which is why the docs here say “agent-readiness” and never “GEO.”
A URL-only GEO pack still wins today on coverage and breadth. It runs against any site, while
enhance reports unsupported outside the framework/platform pairs listed above. That’s the same
honest scope limit as the section above, and the reason fixer/platform
coverage is the roadmap. A GEO pack also ships competitor comparison and score-over-time tracking.
siteready has both too now, as the compare and monitor commands (see
CLI reference).