Find the AI slop in the product you already have.

Broom reads your repository or your Figma file, learns the design system already in it, and finds where the interface drifts from it toward generic defaults. You get a score, every finding with its file and line, one of your repository's screens rebuilt, and rules that stop the drift.
Start free

3 credits free. No card needed.

A reading of the product you have, with evidence.

Nothing is redesigned. The product is measured against its own system, and the working is shown.

A score, and the band it falls in

Clean
0 – 3
nothing generic to speak of
Light
3 – 10
a few generic patterns
Noticeable
10 – 20
generic patterns across the product
Heavy
20+
the interface reads as generated

Weighted findings per 1,000 lines of interface code, with the count of findings and the lines measured printed beside it.

For scale: code Broom generates scores 0 against this check, an assertion in our test suite. On a public repository with 7,727 lines of interface code, a run we made found 59 things and scored 11.0: Noticeable.

Every finding, with its file and line

Four parts: the file, the line, what is on it, and what goes there instead.

src/components/card.tsx:42

a fill, a stroke and a shadow on one card

keep the fill

The shape of a finding, not a line from anybody's code.

What to fix first

What the product is and where to start, in its own terms rather than ours.

One of your own screens, rebuilt

A real screen from your repository, rebuilt with your own system beside the original, then checked: both counts are printed. A Flutter, SwiftUI or Jetpack Compose screen cannot run in a browser, so the model draws it from the widget code, and it is labelled as drawn.

  • The system you already have

    Its colours, type, corners, spacing, shadows, tokens and components, laid out as the audit found them.

  • A pack written in your names

    SLOP_REPORT.md, rules that name your tokens and components with their import paths, and skills — among them the slop check, a script your agent runs on the files it changed.

Bring a repository, a Figma file, or both.

  • Your GitHub repositories

    Sign in with GitHub and pick one from your own list, private ones included.

  • A GitHub or GitLab link

    Paste it. A private GitLab repository takes a read-only token, used for that one request and never stored.

  • Your Figma file

    Upload the .fig itself. Your browser opens it and sends only the document inside; the images never leave your machine.

Four steps, and the last one is your agent's.

  1. 01

    Say you have a product.

    “I have a product”, then “Just remove AI slop”: the choice that keeps your look.

  2. 02

    Connect what you have.

    A repository, a Figma file, or both.

  3. 03

    Broom learns your system, then reads against it.

    It works out the system already in the product, then checks every file that builds the interface against it.

  4. 04

    Your agent takes the pack.

    Unzip it at the root of the repository. Its instruction files point the agent at your rules and at the slop check.

Timed on our own runs: a full audit of a repository took about two and a half minutes. A bigger repository takes longer; we do not promise a number.

What an audit leaves alone.

  • Your code

    None of it changes. The pack is new files; where a CLAUDE.md or AGENTS.md exists, you append ours. Your agent makes the fixes, and they are yours to review.

  • Your look

    This audit keeps it. For a new one, a full redesign starts from what exists and why it fails.

    How a full redesign works
  • Your deliberate choices

    A purple brand, a pill you chose, a blur you declared: each is kept and noted, not flagged.

  • Your repository

    No copy is kept: one archive of the default branch sits in memory for the run and is dropped when it ends. What stays is what was found, with short excerpts of the lines it points at.

Questions before you connect a repository.

  • Can Broom audit a private repository?

    Yes. Sign in with GitHub and pick it from your own list, private ones included. A private GitLab repository takes a read-only token, used for that one request and never stored, logged or sent back.

  • Will it flag my brand colour?

    Not if you chose it. Slop is measured as drift from your own system, not from a house style, so a colour you use on purpose is kept and noted, not flagged.

  • What does the slop score mean?

    Weighted findings per 1,000 lines of interface code, in bands: Clean below 3, Light from 3 to 10, Noticeable from 10 to 20 and Heavy from 20 up. Heavy means the interface reads as generated.

  • Which languages and frameworks can it read?

    HTML, CSS, React, Vue, Svelte, Astro and Tailwind on the web; Flutter, SwiftUI and Jetpack Compose for native apps. A native screen's before and after is drawn by the model from the widget code and labelled as drawn.

  • Can I audit a Figma file instead of code?

    Yes. “Just remove AI slop” takes a repository, a Figma file or both; upload the .fig itself. If you want the file written down as tokens and rules rather than audited, that is the Figma handoff.

    How the Figma handoff works

Your agent gets its rules whichever way you come in.

What AI slop is, and why agents produce it

See how far your product has drifted.

Connect a repository or upload a Figma file and read the findings first.

Start free

3 credits free. No card needed.

  • Everything it writes is yours to keep
  • A run that fails returns its credit
  • Your code is not kept after the run