hallmark vs kill-ai-slop vs visual-skills: three design skills, one real page
The three most-installed design skills for Claude Code claim adjacent territory: one generates taste, one hunts slop, one briefs image models. Instead of paraphrasing their READMEs, we pointed all three at the same real target — this site's own homepage — and let each do the job it claims, by its own rules. Including the part where two of them graded us.
Tested 2026-07-25
The three contenders
| Metric | hallmark | kill-ai-slop | visual-skills (image) |
|---|---|---|---|
| Repo | nutlope/hallmark | yetone/kill-ai-slop | smixs/visual-skills |
| Stars | 17,177 as of 2026-07-25 | 738 as of 2026-07-25 | 108 as of 2026-07-25 |
| Commit tested | aeb42fb | 88cd544 | 75d8ce8 |
| Install | npx skills add nutlope/hallmark -a claude-code -y | npx skills add yetone/kill-ai-slop -a claude-code -y | npx skills add smixs/visual-skills -a claude-code -y |
| Install time | 4.8s fresh session incl. CLI bootstrap; 2.5s on 07-23 warm run | 3.3s fresh session incl. CLI bootstrap; 2.8s on 07-23 warm run | 3.3s fresh session incl. CLI bootstrap; installs two skills (image + video) |
| Payload on disk | 0.94MB | 0.12MB | 0.44MB |
| Files installed | 106 | 8 | 35 |
| SKILL.md | 1 file(s), 558 lines, 9802 words — English | 1 file(s), 120 lines, 859 words — English | 2 file(s), 210 lines, 2099 words — English body, Russian reference tables |
| Audio assets bundled | no (guidance only) | no (guidance only) | no (guidance only) |
Three different theories of what a design skill even is. hallmark is a codified design judgment — four verbs, genre rules, a version-stamped system, and the heaviest instruction file we have ever measured. kill-ai-slop is recall machinery — a runnable scanner over a 33-tell taxonomy, with a mandatory human-confirm step before anything gets fixed. visual-skills is a compiler — it turns your intent into a model-specific prompt and refuses to let the agent improvise ("each model has its own physics").
The brief (same target for all three)
Auditing our own homepage is the honest version of this test: we publish the findings against ourselves, including the ones that sting.
Lens one — hallmark audits the page
Per its audit verb spec: named tell, severity, one-line fix, no edits. The punch
list, verbatim from our session:
0 critical · 1 major · 3 minor
The interesting failure is not on the page — it is in the spec. hallmark's severity rules are
genre-scoped (a pure-white background is a tell for "editorial" but allowed for
"modern-minimal"), and genre comes from a stamp or a design.md. Our page has
neither, so the audit's only major finding hinges on a guess the spec never licenses. That gap
went straight into our suggestions to the author, below.
Lens two — kill-ai-slop scans the page
Its scanner ran over the same homepage (plus our new comparison page) in seconds. Raw output, then the human-confirm step the skill itself insists on:
3 groups · 30 raw hits before human confirm
This is the recall-vs-precision trade in the open: thirty raw hits, of which roughly one survives confirmation. One rule literally matches the treatment its own fix line recommends; another flags the mono-for-data aesthetic this site chose on purpose. None of that makes the scanner useless — it makes the skill's own "confirm before you fix" workflow the load-bearing step, and it is the reason the two critics disagree about the same page.
Lens three — visual-skills briefs the image
visual-skills is the odd one out: it is not a critic and it never touches your page. Asked for this page's social-card image, it forces a reading order first (its own SKILL.md admits that shortcutting it "produced lazy, generic results"), routes the job to a model by table, and emits a structured brief:
- Settings
- quality: high · 1200×630 (og:image)
- Prompt (5-slot)
- Scene: flat warm-white studio backdrop, no environment, no props. Subject: typographic social card for a software test log — headline 'Claude Code skills, actually tested' in a heavy grotesk, small wordmark 'skillstested.com' above it with a green checked square. Important Details: single accent green #106b34, ink near-black #191919, generous margins, flat color, no gradients, no shadows, tabular numerals if any digits appear. Use Case: og:image for a developer documentation site. Constraints: EXACT TEXT only as quoted — no extra words, no duplicate text, no watermark, no icons besides the one checked square, no gradients.
- Routing
- routing per its models.md table: brand typography + exact small text → GPT Image 2 over Nano Banana; syntax follows its 5-slot template with the anti-slop constraint slot filled
That is the entire deliverable — a prompt, not an image — and the discipline is the point: the model choice, the quality lever, and the constraints slot all came from rules we could trace to a specific reference file.
The same page, three verdicts
| Metric | hallmark | kill-ai-slop | visual-skills (image) |
|---|---|---|---|
| Role on the same page | Critic with judgment (audit verb: tell / where / severity / fix, no edits) | Critic with regexes (scanner output, then human confirm) | Not a critic — produced the page's social-card brief |
| Raw output on our homepage | 0 critical · 1 major · 3 minor | 3 slop groups, 30 raw hits in seconds | 1 ready-to-use brief: GPT Image 2, quality high, 1200×630, 5-slot prompt |
| After the human-confirm step each skill demands | 1 major stands only if the page is 'editorial' genre — the audit spec has no rule for un-stamped pages, so severity hinges on a guess | ~1 hit survives; the other groups are deliberate design-system choices (mono for data) and one rule matching its own recommended fix | n/a — output is the deliverable itself |
| Cost profile | Full model pass + on-demand reference loads (9,802-word body) | Seconds of node, zero model cost for recall; model cost only at confirm/fix | One model pass after a forced two-file read |
| Where it breaks down | No mechanical layer: regressions between audits cost a full re-audit | No judgment: philosophy clashes and self-matches ship as 'hits' | Russian-first decision tables gate the core logic for EN users |
A note on the star counts
| Skill | Star readings (GitHub UI/API, dated) |
|---|---|
| hallmark | 15,794 (2026-07-23) → 17,177 (2026-07-25) |
| kill-ai-slop | 683 (2026-07-22) → 708 (2026-07-23) → 738 (2026-07-25) |
| visual-skills (image) | 103 (2026-07-23) → 108 (2026-07-25) |
All three moved up between our install tests and this comparison — no anomalies this time (unlike the video pair). Dated readings as always; we measure installs, not stars.
What we would fix upstream
Same protocol as our first deep comparison: evidence-backed suggestions, headed for each author's repo — links will land here once the issues are up.
To hallmark
1. Define genre resolution for un-stamped pages
The audit verb's severity rules are genre-scoped (pure-white paper: tell for editorial, allowed for modern-minimal), and genre comes from the page's stamp or design.md — but for a page with neither, the spec is silent. Our audit's only major finding flips severity depending on a guess the spec doesn't license.
2. Ship a mechanical recall layer
kill-ai-slop's scanner produced 30 dated, line-numbered hits in seconds at zero model cost; hallmark's audit needs a full model pass every time. A small scan script over the anti-pattern list's mechanical subset (transition-all, hover:scale-105, bg-clip-text) would catch regressions between audits cheaply.
3. Trim non-instruction content from the skill body
The 558-line SKILL.md every agent loads includes marketing lines ('Powered by Together AI') that carry no instruction; at 9,802 words this is the heaviest instruction file we have measured, and every non-directive line is paid for on every activation.
To kill-ai-slop
1. Fix rule 09 matching its own recommended fix
The rule's fix line says 'strike for edits, underline for links', yet the regex flags a:hover{text-decoration:underline} — the exact recommended link treatment. Reproduced on two pages of ours.
2. Add an exemption channel for declared design systems
Rule 33 (mono for code only) returned 22 hits on our deliberate data-log aesthetic — mono for measured numbers and badges. A config allow-list or a documented exemption comment would separate philosophy clashes from real hits without weakening recall.
3. Exclude test fixtures by default
Run without arguments, scan.mjs scans its own install directory and reports its test file's fixtures as live slop (hits for rules 01 and 02 from scan.test.mjs). Default-excluding *.test.* and the script's own directory would stop the self-match.
To visual-skills
1. Publish English mirrors of the decision tables
The routing logic that the skill hard-requires reading first (models.md model-selection tables) is written in Russian, as are the README usage examples — while the install path and skill descriptions target the English skills-CLI ecosystem. This is the single biggest adoption barrier we hit.
2. Document the one-line install
README only documents manual cp, but npx skills add smixs/visual-skills works and lands both skills (verified 07-23 and 07-25). One line in the README would align it with how the ecosystem actually installs.
3. Enforce the mandatory reading order mechanically
The skill's own body says shortcut prompting 'produced lazy, generic results' and relies on agent discipline to read models.md first; a checklist token the agent must echo (or a hash the output must cite) would turn the strongest design idea in this pack from a plea into a contract.
Verdict: which one, when
Building something new? hallmark, and nothing else comes close: it is the only one of the three that can generate a design, and its stamp system is the strongest anti-drift mechanism we have seen in any skill. Budget the context weight and declare a genre so its audit can actually grade you later.
Inheriting a vibe-coded mess? kill-ai-slop first — the scanner gives you a line-numbered map in seconds for free — but treat every hit as a question, not a sentence. Its own workflow says exactly that; the trouble starts when people skip the confirm step.
Need imagery for the page? visual-skills, with a Russian dictionary or a translator handy for the decision tables. It is the smallest, most disciplined skill of the three and the only one whose output you can paste straight into another tool.
All three together is the actual answer for a real project: hallmark to design, kill-ai-slop to police regressions mechanically, visual-skills to brief the artwork. They overlap on exactly one square — judging an existing page — and that is the square where they disagree, for reasons this page just showed you.