Create a 'lighthouserc.json' file at the repo root with a 'ci.assert.assertions' block specifying audit IDs and minimum/maximum values, e.g. '"categories:performance": ["error", {"minScore": 0.8}]'
Use 'budget.json' for resource-size and resource-count constraints (bytes per resource type, request count limits) — reference it via 'ci.collect.settings.budgetPath'
Understand the split: 'assertions' in lighthouserc.json can assert on any Lighthouse audit score; 'budget.json' only asserts on resource sizes and counts, not audit scores
Add an LHCI step to your CI workflow: 'lhci collect', then 'lhci assert', then optionally 'lhci upload' to the LHCI server or GitHub status checks
Set 'ci.assert.preset' to 'lighthouse:recommended' as a starting baseline, then override individual assertions that are too strict for your use case
Known gotchas
If both 'assertions' and 'budget.json' are configured, budget.json takes precedence for resource-size/count checks — do not duplicate the same constraints in both files
The 'minScore' value is on a 0–1 scale (not 0–100); setting '"minScore": 80' will cause every run to fail since 80 > 1
Lighthouse CI runs a fixed number of Lighthouse runs (default 3) and uses the median — single-run outliers from test environment noise will not break the build, but persistent regressions will
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp