@grow-contact/cli · v0.1.0 · MIT
Agent-readiness in your terminal.
A zero-dependency Node CLI that scores any URL against the Grow GEO Standard — the same six signals as the public scanner at /check. Pipe it into CI, gate deploys on agent readability, ship with confidence.
Run it now
npx @grow-contact/cli check https://example.comSample output
Grow GEO Standard · https://example.com
87/100 B Solid agent readability with a few opportunities to improve.
● semantic html 95 · 6/6 landmarks, single H1, alt text on all images
● json ld 90 · Organization + WebSite present
● llms txt 80 · /llms.txt found, missing 2 routes
● citability 85 · First 60 words answer the page's implicit question
● speed 92 · TTFB 180ms, HTML 240KB
● protocol discovery 78 · No Link header advertising llms.txt
↳ Add: Link: </llms.txt>; rel="llms"Install globally
npm i -g @grow-contact/cli
export GROW_API_KEY=... # free key at /api-docs
grow check https://example.comGate deploys in CI
Exit code 1 when the score drops below your threshold:
# .github/workflows/agent-readiness.yml
- name: Agent readiness
run: npx @grow-contact/cli check https://example.com --fail-under 90
env:
GROW_API_KEY: ${{ secrets.GROW_API_KEY }}Commands
grow check <url> [--json] [--fail-under <n>]
Score a URL. --json for machine output, --fail-under for CI gates.
grow badge <url> [--out <path>]
Download the SVG badge for a URL you've already scanned.
Why a CLI
- Same six signals as the public scanner — no second rubric to learn.
- Works in any CI runner with Node 18+. No browser, no Docker.
- MIT, zero deps, ~250 LOC. Audit it in a coffee break.
- When the score is low, a 48-hour fix is one click away at /pricing.
Get an API key
The check command calls our public scanner. Grab a free key on the API docs page, then export it as GROW_API_KEY.