refactoring-the-assembled-ui

refactoring-the-assembled-ui is a skill for Claude Code from AleksandarBisevac/claude-plugins. It costs 192 tokens per session (6,583 once invoked), scanned A, original, MIT.

A guide for changing CSS and JavaScript that Python combines into a self-contained HTML page. It explains how the source parts are joined and how tests protect the resulting file.

In plain words
What is it for?
Use it when splitting, sharing, or editing the assembled page’s styles and scripts, and when updating the tests that check its exact structure.
Why use it?
It prevents edits from breaking the assembly process or producing incorrect HTML. It also helps avoid confusing source files with the final page they create.

Skill for Claude Code

Written for Claude Code: installed under .claude/. Also seen: reads .claude/ paths.

Needs its repository: it runs a file that does not travel with it, so clone the repository first. The line is python3 tools/count-ui-pins.py # --json for a machine-readable shape.

Good fit Use it when splitting, sharing, or editing the assembled page’s styles and scripts, and when updating the tests that check its exact structure.

Compare 6 skills from other repositories ↓
Install

Getting it into your agent

It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.

Clone the repo
git clone --depth 1 https://github.com/AleksandarBisevac/claude-plugins
agentmods
npx agentmods add skills/aleksandarbisevac/claude-plugins/refactoring-the-assembled-ui

Made for: Claude Code.

Wrote 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.

agentmods badge for refactoring-the-assembled-ui

README.md
[![agentmods](https://agentmods.dev/badge/skills/aleksandarbisevac/claude-plugins/refactoring-the-assembled-ui/github.svg)](https://agentmods.dev/skills/aleksandarbisevac/claude-plugins/refactoring-the-assembled-ui)
Your own site
<a href="https://agentmods.dev/skills/aleksandarbisevac/claude-plugins/refactoring-the-assembled-ui"><img src="https://agentmods.dev/badge/skills/aleksandarbisevac/claude-plugins/refactoring-the-assembled-ui/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.

agentmods 80×15 button for refactoring-the-assembled-ui

Your own site · 80×15
<a href="https://agentmods.dev/skills/aleksandarbisevac/claude-plugins/refactoring-the-assembled-ui"><img src="https://agentmods.dev/badge/skills/aleksandarbisevac/claude-plugins/refactoring-the-assembled-ui.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 192 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 6,583 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
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.1 $0.00192 $0.06583
Opus 5 $0.00096 $0.03291
Sonnet 5 $0.00038 $0.01317
Haiku 4.5 $0.00019 $0.00658

Measured 11d ago against content hash 82dcc2a28789, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-11, from the pricing page.

Security

Grade A, and why

refactoring-the-assembled-ui 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 11d 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.

.claude/skills/refactoring-the-assembled-ui/SKILL.md · 401 lines

How it starts

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

Refactoring the assembled UI

scripts/ui/ does not hold standalone files. It holds ordered parts of one artifact. _report_ui.py, _panel_ui.py and panel-server.py read them at import and join them into a single self-contained HTML page. Almost every surprise in this area comes from forgetting that.

The assembly contract

  • One inline <style>, and one inline <script> carrying code. The tags live in the Python modules, never in the assets — selftests pin both, and pin that the .js files carry no <script> tags of their own.

    Carrying code is not hedging. The panel emits one of each; the shipped report emits three <script> tagswindow.AUDIT_USAGE (2.6 KB of data), window.AUDIT_MD_B64 (the 6.9 KB base64 Markdown twin), and the code (81 KB). Check the artifact, not this sentence: grep -c '<script' examples/acme-store/acme-store-audit.html prints 3.

    The pin that reads SCRIPT.count("<script>") == 1 counts tags in a Python string — the code block alone — not in the page. It has never contradicted the above, which is exactly why the wrong version of this bullet survived: the pin that looked like it was guarding the claim was guarding something else.

  • No external resources, ever. CI asserts the rendered report contains no <script src, <img , <link , <iframe or url(http. No CDN, no web font, no separate stylesheet.

  • A module script, but no cross-file import. The report's code block is <script type="module">: that is where its scope and its strict mode come from, and it is why no IIFE wraps it. What a module does NOT buy here is loading — import/export cannot work on an opaque file:// origin. There is no build step and there will not be one.

  • The panel is different in kind, and it has been measured. It is served over http://127.0.0.1, where a real cross-file import DOES work — verified in Chromium against the panel server's exact response profile, with a file:// control in the same run reproducing the report's net::ERR_FAILED. What blocks it is not the browser: panel-server.py has no static route (a module fetch gets 403 without the session token, 404 with it), a relative specifier inherits the path but never the ?t= query, module scripts are strictly MIME-checked, and the __*__ placeholders substituted into the script text would need a new home. The panel's script is also still a CLASSIC <script>, so it has neither module scope nor strict mode; it boots unchanged as type="module" (measured by rewriting only the response body), which removes every top-level function declaration from window. Until a route is decided, Python joins the parts — but do not repeat "ES modules are impossible here" as if it covered both surfaces.

  • Order is load-bearing. TOKEN_CSS must come first — both stylesheets are individually invalid without it (undeclared custom properties, and panel.css alone fails the color-scheme check). Then base, then components, then the surface file, because report.css's @media (max-width:52rem) thead th{position:static} beats the shared rule by source order alone.

  • Every part ends with \n. panel-server.py runs a line-based lint over UI_HTML.splitlines(); a part without a trailing newline joins two lines and can hide a real offender or manufacture a false one.

  • .gitattributes pins scripts/ui/** text eol=lf as a glob, so new parts inherit it. No .py may ever land in scripts/ui/ — a selftest pins that directory as Python-free.

Read the full file on GitHub · 401 lines

Files

What ships with it

1 file 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.

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. 11d ago First seen · 401 lines · 192 tokens per session scan A 82dcc2a28789

Subscribe to this mod's changes

refactoring-the-assembled-ui is a skill published in the GitHub repository AleksandarBisevac/claude-plugins (4 stars, last pushed 2d ago), licensed MIT. It adds 192 tokens to every session and 6,583 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-08-31.

Related

Other skills, from other repositories

motion-animations

Use when building website animations, scroll effects, entrance reveals, layout transitions, gesture interactions, parallax, hero choreography, or any animated UI component. Auto-trigger on any website build or frontend feature that involves motion, transitions, or animated elements.

ne11nn/cantos-plugin · 53 tokens

design-taste-frontend

Senior UI/UX Engineer. Architect digital interfaces overriding default LLM biases. Enforces metric-based rules, strict component architecture, CSS hardware acceleration, and balanced design engineering.

ne11nn/cantos-plugin · 40 tokens

ui-refactor

Tactical user interface design guide for fixing layouts, selecting colors/fonts, and creating professional UIs. Use when the user asks to "make this look better," needs help with CSS/styling decisions, wants to create a design system, or needs to fix a cluttered interface.

ne11nn/cantos-plugin · 61 tokens

impeccable

Use when the user wants to design, redesign, shape, critique, audit, polish, clarify, distill, harden, optimize, adapt, animate, colorize, extract, or otherwise improve a frontend interface. Covers websites, landing pages, dashboards, product UI, app shells, components, forms, settings, onboarding, and empty states.…

ne11nn/cantos-plugin · 189 tokens

emil-design-eng

This skill encodes Emil Kowalski's philosophy on UI polish, component design, animation decisions, and the invisible details that make software feel great.

ne11nn/cantos-plugin · 35 tokens

gpt-taste

Elite UX/UI & Advanced GSAP Motion Engineer. Enforces Python-driven true randomization for layout variance, strict AIDA page structure, wide editorial typography (bans 6-line wraps), gapless bento grids, strict GSAP ScrollTriggers (pinning, stacking, scrubbing), inline micro-images, and massive section spacing.

ne11nn/cantos-plugin · 72 tokens