Skip to content
Back to skills

Audit Styles

ASecurity

Audit component CSS for arbitrary colors, font sizes, and spacing that violate ui-design.md token system. Report violations and optionally fix.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 5, 2026
developmentbash

Security analysis

A100/100

Scanned October 5, 2026

npx -y skills add im9/inboil --skill audit-styles --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Audit Styles?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Audit Styles
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/im9-audit-styles/badge)](https://www.skillsdirectory.com/skills/im9-audit-styles)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: audit-styles
description: Audit component CSS for arbitrary colors, font sizes, and spacing that violate ui-design.md token system. Report violations and optionally fix.
allowed-tools: Read, Glob, Grep, Agent, Bash(ls *)
---

# Audit Component Styles

Scan Svelte component `<style>` blocks for values that violate the design token system defined in `docs/ai/ui-design.md`.

## What to check

### 1. Arbitrary colors
- `rgba(30,32,40,*)` not matching any `--lz-*` token opacity step (0.06, 0.08, 0.10, 0.12, 0.15, 0.35, 0.50, 0.55, 0.70)
- `rgba(237,232,220,*)` not matching any `--dz-*` / `--dk-*` token opacity step (0.06, 0.08, 0.10, 0.12, 0.15, 0.25, 0.30, 0.35, 0.45, 0.55, 0.70, 0.85, 0.90)
- `rgba(120,120,69,*)` not matching any `--olive-*` accent overlay (0.08, 0.15, 0.30, 0.40)
- `rgba(68,114,180,*)` not matching any `--blue-*` accent overlay (0.08, 0.13)
- `rgba(232,160,144,*)` not matching any `--salmon-*` accent overlay (0.06, 0.08)
- `rgba(248,113,113,*)` or `rgba(229,115,115,*)` not matching `--danger-border` (0.40) or `--danger-bg-hover` (0.15)
- Any raw hex color (`#xxx` / `#xxxxxx`) that is not a CSS variable reference — exceptions: `#fff` in piano keys, CPU meter semantic colors

### 2. Font sizes
- Any `font-size` value below 7px (minimum per spec)
- Any `font-size` not matching the component's spec table in ui-design.md

### 3. Spacing
- Any `gap`, `padding`, or `margin` value not matching the spacing system (2, 4, 8, 12, 16px)
- Exception: asymmetric padding (e.g., `8px 12px 10px`) is allowed when documented in the component spec

### 4. Border widths
- Border widths other than 1px, 1.5px, 2px, or 3px (selected indicator)

## Scope

If a component name is provided as argument (e.g., `/audit-styles StepGrid`), audit only that component.
Otherwise, audit ALL `.svelte` files in `src/lib/components/`.

## Process

1. **Read `docs/ai/ui-design.md`** to load the current token system and component specs.
2. **For each target component**, read the `<style>` block.
3. **Extract and classify** every color, font-size, gap/padding/margin, and border value.
4. **Compare** against the token system and component spec tables.
5. **Report violations** in this format:

```
## Style Audit Report

### ComponentName.svelte
| Line | Property | Current Value | Expected | Severity |
|------|----------|---------------|----------|----------|
| 123  | color    | #e57373       | var(--color-danger) | error |
| 456  | border   | rgba(30,32,40,0.07) | 0.06 (--lz-divider) | warning |

### ComponentName.svelte — OK (no violations)
```

## Severity levels

- **error**: Raw hex/rgba that has a direct token equivalent
- **warning**: Opacity value between two token steps (e.g., 0.07 between 0.06 and 0.08)
- **info**: Value not in token system but may be intentional (e.g., CPU meter colors)

## Rules

- This is a **read-only** operation by default
- Use parallel Agent tools to audit multiple components concurrently
- Only flag values in `<style>` blocks, not inline `style=` attributes that use dynamic values
- Ignore `var(--*)` references — those are already tokenized
- Ignore `transparent`, `inherit`, `none`, `currentColor`

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…