FLAGS = [
Flag.new("-r", "--include30x", "
Include 30x redirections"),
Flag.new("-c
CONCURRENCY", "--concurrency=
CONCURRENCY", "
Number of concurrency (default: 50)"),
Flag.new(nil, "--target-concurrency=
N", "
Number of targets scanned in parallel; total in-flight requests stay capped at -c (default: 10)"),
Flag.new("-t
TIMEOUT", "--timeout=
TIMEOUT", "
Timeout in seconds (default: 10)"),
Flag.new(nil, "--method=
METHOD", "
Link check method: auto, head, get (default: auto). auto sends
HEAD first and re-checks with
GET on any 4xx/5xx (405/501 included), so no link is reported dead on a
HEAD status alone.
A HEAD that never reached the host is not re-checked"),
Flag.new(nil, "--retry=
N", "
Retry a transient failure
N times: connection error, timeout, 429 or 5xx.
A 404 is never retried (default: 2)"),
Flag.new(nil, "--delay=
MS", "
Minimum milliseconds between two requests to the same host; other hosts are unaffected (default: 0)"),
Flag.new(nil, "--accept-status=
LIST", "
Treat these statuses as alive, e.g. '200,204,403,999' or '400-499'.
Wins over --dead-status and over the built-in >= 400 rule"),
Flag.new(nil, "--dead-status=
LIST", "
Treat these statuses as dead, e.g. '500-599'.
Applied after --accept-status and before the built-in rule"),
Flag.new(nil, "--exclude-status=
LIST", "
Alias of --dead-status"),
Flag.new("-o
OUTPUT", "--output=
OUTPUT", "
File to write result"),
Flag.new("-f
FORMAT", "--output_format=
FORMAT", "
Output format: json, yaml, toml, csv, sarif (default: json)"),
Flag.new("-
H HEADER", "--headers=
HEADER", "
Custom HTTP headers for initial request"),
Flag.new(nil, "--worker_headers=
HEADER", "
Custom HTTP headers for worker requests"),
Flag.new(nil, "--user_agent=
UA", "
User-
Agent string"),
Flag.new("-p
PROXY", "--proxy=
PROXY", "
Proxy server"),
Flag.new(nil, "--proxy_auth=
CREDS", "
Proxy authentication (user:pass)"),
Flag.new("-k", "--insecure", "
Skip TLS certificate verification (not recommended)"),
Flag.new("-m
PATTERN", "--match=
PATTERN", "
Match URL pattern"),
Flag.new("-i
PATTERN", "--ignore=
PATTERN", "
Ignore URL pattern"),
Flag.new("-s", "--silent", "
Silent mode"),
Flag.new("-v", "--verbose", "
Verbose mode"),
Flag.new(nil, "--debug", "
Debug mode"),
Flag.new(nil, "--limit=
N", "
Limit number of
URLs to scan"),
Flag.new(nil, "--check-anchors", "
Verify #fragment targets exist in the linked document"),
Flag.new(nil, "--coverage", "
Enable coverage tracking and reporting"),
Flag.new("-
F", "--fail-on-dead", "
Exit with code 2 when any dead link or dead target is found (default: always exit 0)"),
Flag.new(nil, "--visualize=
PATH", "
Generate visualization
PNG"),
Flag.new("-h", "--help", "
Show help")]