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 skills add rob-balfre/dryui --skill dryui-feedbackgit clone --depth 1 https://github.com/rob-balfre/dryuiWrote 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/skills/rob-balfre/dryui/dryui-feedback)<a href="https://agentmods.dev/skills/rob-balfre/dryui/dryui-feedback"><img src="https://agentmods.dev/badge/skills/rob-balfre/dryui/dryui-feedback.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.1 | $0.00113 | $0.02531 |
| Opus 5 | $0.00056 | $0.01265 |
| Sonnet 5 | $0.00023 | $0.00506 |
| Haiku 4.5 | $0.00011 | $0.00253 |
Grade B, and why
dryui-feedback scanned grade B with 2 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 8d 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.
Sends data to an external URLmediumData exfiltration
A POST to an outside endpoint may be telemetry or may be exfiltration; either way the mod talks to somewhere, and you should know where.
2. **Claim it.** Call MCP `feedback_claim_submission` (or `curl -X POST http://127.0.0.1:4748/submissions/<id>/claim -H "Content-Type: application/json" -d '{"agent":"claude","name":"Claude Code","model":"claude-opus-4-7 Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
A submission is a presentation JSON object (fetch with MCP `feedback_get_submissions` or `curl http://127.0.0.1:4748/submissions/<id>`): How it starts
The opening of the file, as written. The whole thing — 128 lines — stays where its author put it; the contents beside it link to each section on GitHub.
DryUI Feedback
Single job: take one feedback submission and apply the smallest change that satisfies it. Read the screenshot, decode the structured intents, edit the source, run check, mark resolved. Stop.
The submission shape
A submission is a presentation JSON object (fetch with MCP feedback_get_submissions or curl http://127.0.0.1:4748/submissions/<id>):
id, url, viewport, scroll
preferredScreenshotPath ← read this first
screenshotPath: { png, webp } ← raw screenshot paths; png may be empty for legacy rows
textNotes[] ← direct text instructions extracted from drawings
drawingHints[] ← paired { drawing, hint } entries
summary ← counts by intent kind, hint corner, and structured change kind
drawings[] ← raw annotations the user drew
hints[] ← raw parallel array: each drawing's nearest element + position
components[] ← components the user added through the inspector
removed[] ← elements the user removed
moved[] ← elements the user dragged to a new position
The screenshot is the most direct signal — open preferredScreenshotPath before reading any structured data. Everything else exists to disambiguate what you're seeing. The raw arrays are preserved as escape hatches when the presentation fields are not enough.
Decoding the four intent kinds
Each submission can carry zero or more of these. Treat them as instructions, not suggestions.
drawings[] — annotations
Each entry has a kind (freehand / arrow / text / eraser) and coordinates. Treat textNotes[] as direct user instructions — they're literal sentences the user typed onto the page (e.g. "more padding here", "make this blue", "remove this"). Use drawingHints[] to pair each drawing with its nearest DOM hint; the raw drawings[] and hints[] arrays remain available if you need index-level detail.
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.
- 8d ago First seen · 128 lines · 113 tokens per session scan B 24bc4914dfd2
dryui-feedback is a skill published in the GitHub repository rob-balfre/dryui (9 stars, last pushed 3mo ago), licensed MIT. It adds 113 tokens to every session and 2,531 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it B with 2 findings (sends data to an external url, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
frontend-design
Create distinctive, production-grade frontend interfaces with high design quality and accessible markup. Use this skill when the user asks to build or beautify web components, pages, applications, landing pages, dashboards, artifacts, or React/HTML/CSS UI. Generates creative, polished code that avoids generic AI…
popular-web-designs
54 real design systems (Stripe, Linear, Vercel) as HTML/CSS.
oat-css
Our preferred CSS framework — ultra-lightweight, semantic HTML UI library (8KB). Style web UIs with semantic HTML and minimal classes. Override with app-level SCSS only when necessary.
component-search
Search 21st.dev component registry for production-ready React components. Finds components by natural language description, filters by framework and style system, returns ranked results with install instructions. Use when looking for UI components, finding alternatives to existing components, or sourcing design system…
polish-ui
Design-quality workflow that combines design taste, aesthetic direction, image-to-code, a Web Interface Guidelines audit, and real-browser verification. Use when building or polishing a UI surface, implementing a mockup/screenshot, or when asked to make a page "look great".
ui-craft
Use for UI design and implementation work to avoid generic AI-looking interfaces. Provides anti-slop rules, a required discovery phase before coding, and guidance for layout, typography, color, motion, accessibility, dashboards, tables, landing pages, theming, and polish. Trigger when editing UI code or reviewing and…