auditmysitev1.8.0auditmysite.casoon.de

CLI modes

One URL in depth, or many URLs from a sitemap, a file or a crawl as one aggregated report or as one report per page.

auditmysite [OPTIONS] [URL] [COMMAND]

auditmysite --help lists every option of the installed version.

Single URL

auditmysite https://example.com

A detailed, page-specific audit. Without -f it writes a PDF, a JSON report and the screen-reader sidecar JSON into the current directory. Performance, SEO, security and mobile are part of the default single-page run (--full states it explicitly).

When the URL is a site root, auditmysite probes robots.txt and common sitemap locations first and offers to switch to a sitemap audit. --prefer-sitemap switches without asking, --no-sitemap-suggest stays on the single page.

Sitemap

auditmysite --sitemap https://example.com/sitemap.xml --max-pages 20

Sitemap indexes are followed and deduplicated. --max-pages takes the first N URLs in sitemap order; the report records how many were discovered and how many were audited.

URL file

auditmysite --url-file urls.txt

One URL per line.

Crawl

auditmysite https://example.com --crawl --crawl-depth 2 --max-pages 50

Discovers same-domain pages from a seed URL (breadth first, default depth 2). Crawling sends one extra HEAD/GET per discovered link, including external links up to 100 unique targets, so use it deliberately rather than in every CI run.

Batch reports

Sitemap, URL-file and crawl runs produce one aggregated report for the whole set: average scores, strongest and weakest URLs, recurring issues, a URL matrix, and template clusters where one fix resolves the same finding on many pages. Without -f the result is printed as a table.

auditmysite --sitemap https://example.com/sitemap.xml -f pdf -o site-report.pdf
auditmysite --sitemap https://example.com/sitemap.xml -f json -o site-report.json --quiet

Pages run in parallel (--concurrency, default 3). A page that cannot be audited is not scored; the report states how many URLs the scores cover and lists the failures.

Per-page reports

auditmysite --url-file urls.txt --per-page-reports --output reports/per-page/

Scans the list or sitemap but writes one single-page report per URL instead of the aggregated batch report. -o is the target directory.

Each page gets its own file, named from host and path (<site>-<path>-<date>-single-report.<ext>). With -f json, index.json and findings.jsonl are written next to the page files; see Technician mode, which builds on this.

Selecting pages by path

auditmysite --sitemap https://example.com/sitemap.xml --include-path '/blog/**' --exclude-path '/blog/tag/**' -m 50

--include-path and --exclude-path (repeatable) select batch URLs by their path before --max-pages applies. The glob rules are on the Technician mode page.

Display modes and exclusions

  • --display calm|text|visual|all audits a site in one of its display modes, or each mode as its own report. See Display modes.
  • data-audit-exclude and --exclude-selector <CSS> leave markup that is broken on purpose out of the findings, visibly. See Excluding specimens.

Other commands

Command Purpose
auditmysite plan <url> Mode, modules and output paths of an audit, without running it
auditmysite browser detect|install|remove|path Browser management, see Browser setup
auditmysite doctor Local diagnostics
auditmysite report-lint <report.json> Consistency checks on a JSON report, see Reports
auditmysite accname-diff <url>… Compares auditmysite’s accessible-name computation with Chrome’s; measures, never fails

Output formats

-f / --format: pdf, json, table, ai (task list for LLM-assisted fixing), summary (compact JSON for dashboards) and sarif (SARIF 2.1.0, for GitHub Code Scanning).

Exit codes

Code Meaning
0 Pass
1 Warn
2 Fail
3 Technical error (browser, timeout, arguments, writing files), or report-lint at or above --fail-on

--report-mode returns 0 whenever the requested report files were written, whatever the verdict. The verdict itself still appears in the terminal, JSON and PDF.

Configuration file

An optional auditmysite.toml in the working directory holds [audit], [rules], [interactive], [thresholds] and [budget] sections, for example:

[rules]
disabled = ["heading-order"]

[interactive]
mode = "full"             # off | basic | full
journey_budget_ms = 8000

Edit this page on GitHub · Docs for v1.8.0