Local before/after UI evidence for agent-driven changes. Capture screenshots, build comparisons, and review what actually changed.
SaferSkills independently audited ui-evidence (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Use this skill when the user wants an agent to:
ui-evidence into the current repobefore and after UI screenshotsThis skill is intentionally thin. The CLI is the engine. The skill is the agent-facing entrypoint. The package provides the repo-local executable that actually runs capture and review commands.
packageManager or lockfiles.ui-evidence.pnpm add -D github:0xBrewing/ui-evidence
npm install -D github:0xBrewing/ui-evidence
yarn add -D github:0xBrewing/ui-evidence
bun add -d github:0xBrewing/ui-evidencepnpm exec ui-evidence install --agent both --config ./ui-evidence/config.yaml
npx ui-evidence install --agent both --config ./ui-evidence/config.yaml
yarn ui-evidence install --agent both --config ./ui-evidence/config.yaml
bunx ui-evidence install --agent both --config ./ui-evidence/config.yamlThat bootstrap should leave repo-local skill copies in .agents/skills/ui-evidence/ for Codex and .claude/skills/ui-evidence/ for Claude Code.
ui-evidence discover.ui-evidence/config.yaml.ui-evidence/hooks/* only if deterministic state is needed.ui-evidence doctor, then ui-evidence doctor --ready if route or wait-target confidence is still low.ui-evidence run, ui-evidence snapshot, or capture/compare/report/review.review/index.htmlreport.<lang>.mdmanifest.jsonui-evidence discover --format json
ui-evidence init --interactive --config ./ui-evidence/config.yaml
ui-evidence doctor --config ./ui-evidence/config.yaml
ui-evidence doctor --config ./ui-evidence/config.yaml --ready --profile mobile-en
ui-evidence run --config ./ui-evidence/config.yaml --stage <stage-id>
ui-evidence run --config ./ui-evidence/config.yaml --stage <stage-id> --before-ref main
ui-evidence run --config ./ui-evidence/config.yaml --stage <stage-id> --after-attach http://127.0.0.1:3000 --resume
ui-evidence snapshot --config ./ui-evidence/config.yaml --scope <scope-id>
ui-evidence review --config ./ui-evidence/config.yaml --stage <stage-id>ui-evidence review --stage <stage-id> reuses the latest snapshot current captures when a stage has no before/after comparison artifacts yet. If neither stage artifacts nor snapshot artifacts exist, it should fail instead of emitting an empty review.
data-testid targetsskills add.ui-evidence command.testId waits over loose selectors.review/index.html as the default human-facing artifact.~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.