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 qbtrix/ripple-iui --skill ripplegit clone --depth 1 https://github.com/qbtrix/ripple-iuiWrote 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/qbtrix/ripple-iui/ripple)<a href="https://agentmods.dev/skills/qbtrix/ripple-iui/ripple"><img src="https://agentmods.dev/badge/skills/qbtrix/ripple-iui/ripple/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/qbtrix/ripple-iui/ripple"><img src="https://agentmods.dev/badge/skills/qbtrix/ripple-iui/ripple.svg" alt="Reviewed on agentmods" width="80" 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.00117 | $0.04175 |
| Opus 5.5 | $0.00047 | $0.01670 |
| Sonnet 5.5 | $0.00023 | $0.00835 |
| Haiku 4.5 | $0.00012 | $0.00417 |
Grade A, and why
ripple scanned grade A with 1 finding 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.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
- Use only widget types and props the manifest lists (`curl -s <base>/manifest.json`). A prop a widget does not How it starts
The opening of the file, as written. The whole thing — 250 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Ripple cards
A Ripple card answers one question. The reader gets the answer in a second, and everything else on the card is a true secondary fact or a control that changes the answer. The model writes data; widgets own the design; a machine and a pair of eyes check the result before anyone else sees it.
The method comes from the Anatomy skill by Ryan (MIT), which does the same for isometric drawings: load the craft rules, the map and the examples; build; render; audit; look at your own screenshots; fix; repeat until a round finds nothing. The words and the script here are Ripple's own.
The two rules that outrank everything
- The user's data is not yours to change. Never alter a number, a date, a name, an amount or a target the user gave you (or that the card's answer depends on) to make a widget look right or to make a count reach 0. If a widget misbehaves with true data, keep the data and try another widget or another layout. If nothing works, ship the honest version and list the fault under Widget faults in your final answer.
- Sample data stays in the past or the present. When you invent data, no date may fall after today (check the date before you write one). A "this month" card holds only days up to today; a forecast is the one place future days belong, and it says "Sample forecast".
The quality bar
A card is done when all of these hold, in both themes, at both widths:
- It is the right archetype. A trip is an
itinerary, a split bill abill-split, a report anexec-dashboard, plans apricing-table. A primitive tree is only for what no widget does. - The answer leads. A
verdict(on the widgets that take one), a title, or a first callout says it in one sentence. - Every number is true and formatted. Derived from state, in a
statwith a format, with its currency or unit, and the same everywhere it appears. - Nothing is cut, clipped, empty or leaked. No ellipsis eating words, nothing past the card edge, no blank box,
no NaN,
undefined,[object Object]or raw JSON, no error box. - It reads at 360 px. Tiles wrap, inputs get a row, no sideways scroll.
- It is real. Fictional but specific names and numbers, never "Person 1", "Item A", lorem ipsum or a real brand with a made-up price. Dates are plausible against today.
What ships with it
18 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- references/craft.md 15 KB
- references/examples/bill-splitter.json 869 B
- references/examples/grinder-comparison.json 2.3 KB
- references/examples/heart-pump.json 1.0 KB
- references/examples/quote-builder.json 7.1 KB
- references/examples/README.md 2.3 KB
- references/examples/sales-dashboard.json 3.7 KB
- references/widgets.md 9.9 KB
- scripts/acceptance/results-2026-10-13.json 4.5 KB
- scripts/acceptance/run.mjs 4.1 KB runs code
- scripts/acceptance/tasks.json 939 B
- scripts/acceptance/weather-forecast.json 1.9 KB
- scripts/acceptance/wide-table.json 2.2 KB
- scripts/build.mjs 16 KB runs code
- scripts/build.test.mjs 5.9 KB runs code
- scripts/critic.test.mjs 3.6 KB runs code
- scripts/render.mjs 17 KB runs code
- scripts/render.test.mjs 5.0 KB runs code
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.
- 2d ago First seen · 250 lines · 117 tokens per session scan A 50174f32f4f4
ripple is a skill published in the GitHub repository qbtrix/ripple-iui (8 stars, last pushed yesterday), licensed MIT. It adds 117 tokens to every session and 4,175 once invoked, about $0.0005 per session on Opus 5.5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-10-14.
Other skills, from other repositories
app_evaluator
A professional skill for App Evaluation (evaluating app's performance with score) and App Improvement (giving professional suggestions for improving the app's performance).
a2ui-generation
Design and generate A2UI updateComponents and updateDataModel payloads for three modes (DTO component, non-DTO component, non-DTO page). Use when asked to create or refine A2UI cards, components, or pages from DTO/JSON/business data, generate Python transformer code for DTO-driven components, iterate on existing A2UI…
fast-agent-design
Use this skill to generate well-branded interfaces and assets for fast-agent, either for production or throwaway prototypes/mocks/etc. Contains essential design guidelines, colors, type, fonts, assets, and UI kit components for protoyping.
diagram-design
Best practices for creating research diagrams with Excalidraw MCP tools.
architecture-diagram
Create a professional, dark-themed software/system architecture diagram as a single self-contained HTML file with inline SVG. Use when asked to visualize system components, layers, services, or how parts of a codebase fit together.
anti-slop-frontend
A mechanical, countable anti-slop checklist for AI-generated frontend. Catches the specific signatures an undirected model defaults to: AI-purple glows, Inter-everywhere, em-dashes, div-based fake screenshots, eyebrow-on-every-section, beige+brass "premium" palettes, generic Jane Doe / Acme data. Advisory layer that…