Skip to content

Add CLI doctor command for AI crawler access#8

Open
GHX5T-SOL wants to merge 1 commit into
vinpatel:mainfrom
GHX5T-SOL:feat/cli-doctor
Open

Add CLI doctor command for AI crawler access#8
GHX5T-SOL wants to merge 1 commit into
vinpatel:mainfrom
GHX5T-SOL:feat/cli-doctor

Conversation

@GHX5T-SOL

Copy link
Copy Markdown

Summary

  • add aeorank doctor <url> to report robots.txt access, target HEAD status, and /llms.txt HEAD status for each crawler in the core AI_CRAWLERS list
  • flag common bot-mitigation signals from cf-mitigated and x-amzn-waf-action, plus access-control status codes, without treating 404 /llms.txt or 405 HEAD responses as blocks
  • add human and JSON output, mocked fetch coverage, and a docs page/sidebar entry

Fixes #5.

Validation

  • pnpm install --frozen-lockfile
  • pnpm --filter @aeorank/core build
  • pnpm exec biome check packages/cli/src/commands/doctor.ts packages/cli/src/__tests__/doctor.test.ts packages/cli/src/index.ts apps/docs/astro.config.mjs apps/docs/src/content/docs/cli/doctor.md
  • pnpm --filter aeorank-cli exec vitest run src/__tests__/doctor.test.ts -> 4 passed
  • pnpm --filter aeorank-cli test -> 81 passed
  • pnpm --filter aeorank-cli build
  • pnpm --filter @aeorank/docs build
  • node packages/cli/dist/index.js doctor https://aeorank.dev --format json --timeout 8000 -> pass, blocked []
  • node packages/cli/dist/index.js doctor https://vercel.com --format json --timeout 8000 -> pass, blocked []
  • node packages/cli/dist/index.js doctor https://stripe.com --format json --timeout 8000 -> pass, blocked []
  • git diff --check HEAD~1 HEAD
  • git show --format= --patch HEAD | gitleaks stdin --no-banner --redact

Notes

  • I did not count pnpm lint as a clean gate because it currently reports pre-existing repo-wide formatting/generated .astro diagnostics and existing packages/vitepress/src/plugin.ts any diagnostics outside this diff.
  • I did not count pnpm --filter aeorank-cli typecheck as a clean gate because it currently fails on existing CLI Node typing and definite-assignment issues in files such as compare.ts and scan.ts.
  • AI-assisted contribution disclosure: I used OpenAI Codex to inspect the issue, make the focused code/test/docs changes, and run the checks above. I reviewed the resulting diff before submission.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat: add aeorank-cli doctor — diagnose AI crawler access in 30s

1 participant