Docs
Projects and URLs
Projects supports search, archive status, result, latest-run status and minimum/maximum score filters. Open a project for its overview, URLs, result history and settings. Add or edit URLs there, or inspect the combined URL list .
Scroll a list to load more records. The table checkbox selects loaded eligible rows; a mixed checkbox means only some are selected. Projects also offers Select all matching projects, including unloaded active rows, with the full selected count. Loading more preserves checked records. Changing filters clears selection. Projects and URLs offer checked-record and all-matching run actions. Results lists individual URL checks; Project summary opens project health and exports.
Discovery is an explicit project action that reads sitemap sources and records a snapshot. Importing, filtering and discovery do not start accessibility audits.
CSV import
Open Import CSV , enter a source identifier and choose a UTF-8 file. Each row represents a project and its entry URL. Files support a comma or semicolon delimiter, an optional UTF-8 BOM, and LF or CRLF line endings. Limits: 5 MiB, 2,000 data rows and 100 columns. Headers must be nonempty and unique.
url,external_id,name,language,tags
http://127.0.0.1:4311/,library,Library,en,fixture|library
http://127.0.0.1:4312/,garden,Garden,fr,fixture|garden| Field | Format |
|---|---|
| url | Required absolute HTTP(S) entry URL without embedded credentials. |
| external_id | Optional stable identifier, scoped to the source. Reuse it to update the same project when its URL changes. |
| name | Optional project name. When omitted on creation, the entry URL is used, or its hostname for a long URL. |
| language | Optional language code such as en, fr or de-CH. |
| tags | Optional tags separated by a pipe: fixture|library. |
Matching headers map automatically. Other headers can be mapped using the field selectors; each column can map once. Quote cells containing the delimiter, quotes or newlines; escape a quote by doubling it.
Preview reports create, update, unchanged, duplicate, conflict and error rows before applying. Source plus external ID identifies an existing mapping; otherwise reconciliation matches the entry URL. Manual edits are protected. For an ambiguous match, enter the existing project ID from its project address and re-preview. Resolve every duplicate, conflict or error before applying. If the catalog changes, preview again.
Runs
New run starts with Run type: Lighthouse, Axe Core, Status check or Sitemaps. Select projects next. Each audit project has its own URL disclosure with homepage, sample, all eligible or checked URL selection. Review the resolved selection before starting. Sitemaps goes directly from projects to review and queues discovery snapshots; refresh their states or open project discovery history. Advanced selection supports include/exclude path globs and historical discovery snapshots. One project's selection can be saved as its default.
Path globs start with /. Use * for characters within one path segment, ** across segments, and ? for one non-slash character. For example, /news/** includes descendants. Enter one pattern per line; exclusions win. Up to 32 patterns are supported, with at most 256 characters each.
Select a runner configuration and review the exact URLs, exclusions and resource limits. Changing inputs invalidates the preview. Start run confirms that preview; oversized or invalid selections must be corrected. The local approval limit is three projects and five URLs per project.
The Runs list combines project/status filters with one requested-date range and minimum/maximum effective score filters. Dates include the selected calendar days in your local timezone. The run score is the lowest successful effective URL score across the run; duplicate final destinations within a project and unknown scores are excluded. Scored URL counts show partial coverage. Run detail shows progress, resource cards, URL outcomes, findings and private report buttons. Active runs can be paused, resumed or cancelled. A subset rerun creates a linked run and preserves the previous evidence.
Results and exports
Results lists individual URL checks. Project summary shows project health using the latest requested run per project at the selected date/time cutoff. Each row includes health, score, coverage, findings and a button to its run history. Open Results and exports from a run to inspect that specific historical request. A newer failed or pending run does not fall back to an older passing result. Now includes newer requests. The cutoff selects requests; an in-flight request still shows its current progress. At/above threshold requires complete scored coverage and a minimum score meeting the chosen threshold. Findings remain visible separately.
Use result, score, language, tag, source, lifecycle and request-date filters. Unknown scores appear as — and do not match numeric score ranges. Score is the mean of successfully scored distinct destinations in the latest requested run; compare scored and selected URL counts to assess coverage. Detail views also show the minimum. Findings are separate from blocked URLs, execution errors and review outcomes.
Open a project for result history or a URL for its findings, Lighthouse report and JSON evidence. Export preview shows representative loaded records. Downloads include all matching results in the selected scope: project CSV, route CSV or a standalone HTML overview. Unknown scores are blank in CSV exports.
Runner configuration
Runner settings separates Run configurations from Runner capacity. New configuration and Edit open a single dialog. Configurations save a resource pool, browsers per run, browsers per host and a default choice for new runs; Runner capacity shows the configured runners and occupied leases. Per-host concurrency cannot exceed run concurrency. Run history retains the configuration name, version and resources used at confirmation.
The physical runner registry is an operator-managed JSON file selected by RUNNER_POOL_FILE. The web, scan and reconciler processes use the same registry. This is its format:
{
"pools": [
{
"id": "default",
"cpu": 2,
"memoryMb": 1024
}
],
"runners": [
{
"id": "default-1",
"poolId": "default",
"endpoint": "http://127.0.0.1:4310",
"tokenEnv": "RUNNER_DEFAULT_1_TOKEN"
}
]
}Pool IDs use lowercase letters, digits and hyphens, up to 40 characters. CPU is 1–16 and memoryMb is an integer from 1,024–32,768 MiB, per browser. Each pool needs at least one runner; capacity is the number of assigned runners. Configure 1–16 runners, each with a unique ID and endpoint. Runner IDs use lowercase letters, digits and hyphens, up to 100 characters.
tokenEnv names a private environment variable containing the runner credential; never put the credential in this JSON. Global browser slots, configured pool capacity and per-run/per-host limits jointly constrain execution. Saving a configuration does not create runners or resize containers.