agent-readiness-scanlisted
Install: claude install-skill techhorizonlabs/thl-open
# Agent-Readiness Scan (isitagentready.com)
Produce the official Cloudflare agent-readiness result for a domain as audit-grade artifacts: fixed-schema CSV + raw evidence + the 0-100 score.
## Critical facts (learned the hard way)
1. **Two sources, both required:**
- `POST https://isitagentready.com/api/scan` body `{"url":"https://<domain>"}` → full JSON (level, levelName, per-check status + embedded request/response evidence, nextLevel remediation prompts + skillUrls). **No numeric score in the JSON.**
- **The 0-100 score renders only in the web UI.** Playwright-navigate to `https://isitagentready.com/<host>` and read the score dial: an `<svg>` carrying `aria-label="Overall score: N out of 100"`. **Never `wait_for` that text** — it's an attribute, not visible text (text-waits time out). Take a page snapshot or evaluate `document.querySelector('[aria-label*="Overall score"]')`. A fresh "Last scanned" timestamp = results are rendered (the step-1 API POST itself refreshes the scan, so no Scan click is normally needed). Without the 0-100 you cannot track deltas (e.g. a site improving 21→43 after fixes).
2. **Don't freeze the checklist.** The scanner evolves (new checks appear). Emit whatever `.checks` returns, mapped through the fixed CSV schema — never hand-author check rows.
3. **Scored vs supplementary.** llms.txt, llms-full.txt, security.txt are NOT scored by Cloudflare but Theo audits track them — they go in `Supplementary (not scored)` rows from curl probes, never