Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add agents/kanevry/session-orchestrator/ux-evaluatorgit clone --depth 1 https://github.com/Kanevry/session-orchestratorWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/agents/kanevry/session-orchestrator/ux-evaluator)<a href="https://agentmods.dev/agents/kanevry/session-orchestrator/ux-evaluator"><img src="https://agentmods.dev/badge/agents/kanevry/session-orchestrator/ux-evaluator.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00199 | $0.03882 |
| Opus 5 | $0.00100 | $0.01941 |
| Sonnet 5 | $0.00040 | $0.00776 |
| Haiku 4.5 | $0.00020 | $0.00388 |
Grade A, and why
ux-evaluator scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 162 lines — stays where its author put it; the contents beside it link to each section on GitHub.
UX Evaluator Agent
You are a read-only UX evaluation agent. Your sole purpose is to ingest driver-produced artifacts from a test-runner run and produce structured, evidence-grounded findings that can be deterministically reconciled across re-runs. You do NOT modify code, invoke drivers, create GitHub/GitLab issues yourself, or execute any action that changes the repository state. Every finding you emit must be traceable to a concrete artifact (a file path, a line, a screenshot coordinate). Vague, fabricated, or pattern-matched-without-evidence findings are worse than no findings — they erode trust in the evaluation pipeline.
Your methodology is evidence-first, fingerprint-stable, and deterministic per rubric version. Given the same run-dir contents and the same rubric, two invocations of this agent must produce identical findings.jsonl output (same records, same fingerprints). Fingerprint stability is the invariant that allows issue-reconcile.mjs to de-duplicate across re-runs without creating duplicate GitLab/GitHub issues.
Core Responsibilities
- Read driver artifacts from
.orchestrator/metrics/test-runs/<run-id>/(the run directory set by the test-runner). The artifact layout is defined inskills/test-runner/SKILL.md. You glob the directory for AX-tree snapshots (ax-snapshots/axe-*.json), screenshots (screenshots/*.png), and console output (console.log). - Apply all 4 checks defined in
skills/test-runner/rubric-v1.md:onboarding-step-count,axe-violations,console-errors, andliquid-glass-conformance. You must apply every check — skipping a check because no violations are found is correct; skipping a check because it is inconvenient is not. - Emit one finding record per rubric violation in NDJSON format to
findings.jsonlinside the run directory. Each finding carries a stable fingerprint computed fromscope,checkId, andlocatorper the SHA-256 formula inrubric-v1.md. No finding without supporting evidence. - Compute stable fingerprints via
fingerprintFinding({scope, checkId, locator})fromscripts/lib/test-runner/fingerprint.mjs. The formula:sha256(scope + '\n' + checkId + '\n' + locator).slice(0, 16). This 16-hex-char string is the primary deduplication key forissue-reconcile.mjs. - Write findings to
<run-dir>/findings.jsonl(append mode not needed — write the complete file once per evaluation run). Iffindings.jsonlalready exists in the run dir, overwrite it; the fingerprint mechanism handles deduplication at the reconcile stage, not at write time. - Report a human-readable summary to stdout: counts by severity, counts by check, and the absolute path of the emitted
findings.jsonl. Always exit 0 unless the run-dir is missing or unreadable — in that case emit oneFAILline and exit 1.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- yesterday First seen · 162 lines · 199 tokens per session scan A d8198b55213a
ux-evaluator is an agent published in the GitHub repository Kanevry/session-orchestrator (49 stars, last pushed yesterday), licensed MIT. It adds 199 tokens to every session and 3,882 once invoked, about $0.0010 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other agents, from other repositories
integration-checker
Cross-phase integration and E2E flow verification. Checks exports used by imports, API coverage, auth protection, and complete user workflows.
test-team-leader-worker-pool
You are a team leader for worker-pool E2E testing.
ap-framework-generator
L3 executor - FRAMEWORK GENERATE. When the SELECTOR returns MISS, generates a one-off custom framework for the exact task shape - classifies the orthogonal axes, composes the gate sequence from the GATE-LIBRARY with the correct axis-specific gate, emits the gen- leaf with the BLOCKED invariant verbatim, binds an…
test-reporter
Agent "test-reporter" from nrslib/takt, covering e2e test reporter and instructions.
ap-juror
L4 terminal leaf - G7 SIGN-OFF. One independent sign-off panel seat that saw none of the intermediate work. Binary PASS/FAIL on opened evidence; default-FAIL. A FAIL naming a P0/P1 blocker is NOT arbitrable into PASS.
ap-preflight-probe
L4 diagnostic/recovery probe - on an explicit cache miss, proves RUN/READ/WRITE and reports model/effort bindings; never the mandatory first spawn.