GET STARTED
Install. Audit.
Read the evidence.
Python 3.11 or newer. Your website’s built HTML. Nothing else to run.
1. Install from GitHub
Create and activate a virtual environment, then install the source archive. AnchorLint is not published on PyPI.
python -m venv .venv
# macOS / Linux
source .venv/bin/activate
# Windows PowerShell: .venv\Scripts\Activate.ps1
python -m pip install "https://github.com/prantikmedhi/anchorlint/archive/refs/heads/main.zip"
anchorlint --helpFor reproducibility, replace main with a reviewed full commit or tag. If you use uv:
uv tool install "https://github.com/prantikmedhi/anchorlint/archive/refs/heads/main.zip"2. Audit your built output
Build your site first, then choose its actual output directory: dist, out, _site or equivalent. Supply its public base URL.
anchorlint audit ./dist --base-url https://example.com --format html --output audit.htmlNo pages are uploaded or modified in rules mode. An unresolved local destination is a finding, not proof of a production HTTP error.
3. Understand the exit code
| Code | Meaning |
|---|---|
| 0 | Checks complete; no new finding reaches the selected gate. |
| 1 | New findings reach the selected warning/error gate. |
| 2 | Input, provider or operational failure; or incomplete semantic coverage. |
4. Optional: enable Jev
Set TYPESAFE_API_KEY securely through your environment. The tool does not load dotenv files. Review data-sharing permission and provider charges before opting in.
anchorlint audit ./dist --base-url https://example.com --provider jev --max-links 25 --format json --output audit.json--max-links bounds distinct model calls. Unchecked coverage is never labeled clean. Read errors and review findings before acting.