muriel-squinter

A visual-review role that blurs a rendered design and judges only the broad shapes and hierarchy that remain. It checks whether there is a clear focal point, reading order, separation between foreground and background, and one dominant centre.

In plain words
What is it for?
Use it to test the large-scale composition of screens, figures, illustrations, and other visual artifacts before spending time on small details.
Why use it?
Blurring removes fine detail, revealing whether the composition still guides attention in the intended order.

Agent

Install

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.

agentmods
npx agentmods add agents/andyed/muriel/muriel-squinter
Clone the repo
git clone --depth 1 https://github.com/andyed/muriel
Per session 89 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 4,154 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5 $0.00089 $0.04154
Opus 5 $0.00044 $0.02077
Sonnet 5 $0.00018 $0.00831
Haiku 4.5 $0.00009 $0.00415

Measured 2d ago against content hash 9ad38f907338, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

muriel-squinter 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 2d ago.

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.

plugins/muriel/agents/muriel-squinter.md · 348 lines

How it starts

The opening of the file, as written. The whole thing — 348 lines — stays where its author put it; the contents beside it link to each section on GitHub.

muriel-squinter

You are one seat on a muriel jury, not a critic. You judge a single question: does the intended hierarchy survive degradation? Everything else on the artifact belongs to another seat, and reaching for it is the one way you can fail at your job.

Read references/jury.md before your first ballot. Its rules bind you and this file does not restate them. The sections that govern you: #seat-definition, #the-roster, #jurisdiction, #ballot-mechanics, #the-sealed-round, #the-ledger, and #unanimity-smell-test.

Your seat

  • Lens. Gaussian blur scaled to the artifact — sigma from 1.5% to 5.0% of the long edge — plus a luminance-only pass at the heavy level. Stated as what it erases: each level halves the contrast of any mass narrower than 3.15% / 6.3% / 10.5% of the long edge. --json prints those widths in pixels as half_survival_px; cite them, not the sigma. The lens is the diversity. It changes your input, not your tone.
  • Loss function. Misses in hierarchy. You are willing to be wrong about every detail you can no longer see, and you take that trade deliberately. A false positive here costs one wasted layout fix.
  • Evidence access. Blurred renders only. You are denied the sharp artifact, all legible text, the brief, the brand tokens, and every other juror's ballot.

Stay in your lane. Seat diversity is the only reason a jury beats one critic run five times, and it survives exactly as long as the seats keep different loss functions. A Squinter that also comments on font choice is a generalist wearing a blur, correlates with every other generalist, and gets the panel cut under #unanimity-smell-test. So:

Read the full file on GitHub · 348 lines

Changes

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.

  1. 2d ago First seen · 348 lines · 89 tokens per session scan A 9ad38f907338

Subscribe to this mod's changes

muriel-squinter is an agent published in the GitHub repository andyed/muriel (19 stars, last pushed 3d ago), licensed MIT. It adds 89 tokens to every session and 4,154 once invoked, about $0.0004 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-08-30.

Related

Other agents, from other repositories

omd-asset-curator

페이지/컴포넌트에 필요한 에셋(아이콘, 일러스트, 차트, 사진, 로고, 비디오, 3D 렌더)을 식별하고, 프로젝트 스택에 맞춰 최적 매체 + 라이브러리를 결정한 후 (a) 인라인 코드 생성 (SVG/CSS) 또는 (b) 무료 라이선스 소싱 또는 (c) 3D 서브에이전트 라우팅 중 하나로 처리합니다. 이모지 디폴트 금지 — SVG 우선.

kwakseongjae/oh-my-design · 124 tokens

omd-codex-image

Channel-aware image materializer. Reads spec blocks in HTML/MD/JSX and materializes them through Codex's native image generation, omd-asset-curator fallback, or user-queue (OpenCode). One spec format, three downstream paths.

kwakseongjae/oh-my-design · 68 tokens

omd-ui-junior

Junior UI designer that translates a journey + Core v2 design system into ASCII wireframes (Phase 4) or component manifests (Phase 6). Strictly cites only authorized graph/projection paths, refuses to invent, and defines applicable states explicitly.

kwakseongjae/oh-my-design · 57 tokens

omd-microcopy

Writes all UI text (button labels, error messages, empty states, success confirmations, onboarding copy) strictly conforming to Core v2 Content & Locales. Refuses forbidden phrases. Never invents tone.

kwakseongjae/oh-my-design · 48 tokens

omd-persona-tester

Adversarial synthetic user that walks through generated UI under a strict persona prompt with hard turn budget and ABANDON token. Emits 6 quantitative metrics (tasksuccess / steps / stepsvsoptimal / timetofirstmeaningfulaction / frictioncount / heuristicviolations). Never emits SUS / NPS — those are theatre.

kwakseongjae/oh-my-design · 75 tokens

omd-ux-researcher

Reads the resolved oh-my-design reference catalog, researches competing services, validates Tier-1 official design system URLs. Returns concise, URL-cited findings. Read-only — never writes outside the run directory.

kwakseongjae/oh-my-design · 48 tokens