difficat
v3.111.2
Published
Compare two websites from a shell or a pipeline: page existence, content and visual regression through the DiffiCat API.
Downloads
591
Maintainers
Readme
difficat
Compare two websites from a shell or a pipeline: page existence, content and visual regression, through the DiffiCat API. Nothing runs on your machine but this command.
npx difficat compare https://old.difficat.com https://new.difficat.com --max-pages 50Prints a one-line verdict, the failed pages worst first, and the job id. Exit codes: 0 every page passed, 1 a page failed (--fail-on failed|broken|none), 2 payment required, 3 error. --dry-run quotes the price, --report report.json saves the full report and the source, target and diff screenshots of every failed page in report-screenshots/ beside it, --json prints the digest.
Without a key the daily allowance of the calling address applies. Set DIFFICAT_KEY to a prepaid or Pro key to go beyond it; every keyed run is billed. A page that a bot-protection challenge blocks is reported as failed and given back to the allowance or key that paid for it. The command never pays a wallet challenge itself and never prints the job token. DIFFICAT_CLIENT (a short token such as github-action) is appended to the user agent so API usage can be told apart by integration; the GitHub Action sets it.
Also: difficat discover <url> lists a site's pages and difficat screenshot <url> captures one page as a PNG. difficat --help has every flag.
Pipelines: the GitHub Action difficat/difficat@v1 runs this command and keeps the report as an artifact. Setup, prices and the MCP endpoint for agents: difficat.com/agents. Source of the clients: github.com/difficat/difficat.
