create-mac-icon
macOS app icons, measured against the reference instead of eyeballed. A direction catalogue distilled from 532 real icons, three generation engines with a written audit sheet, then a scoring harness that iterates the shipped SVG against the winning raster at five sizes until the material matches. Every confirmed construction feeds a recipe library, so it gets better with each commission.
/plugin install create-mac-icon@fledgeling-pluginsNeeds the marketplace added first — how to do that.
Reach for it when
Create a macOS app icon end-to-end — direction chosen from a 532-icon corpus catalogue, subject-mined glyph, three generation engines (hand-authored layered SVG, Arrow vector, corpus-referenced raster), a written audit.html contact sheet, and a measured fidelity loop that iterates the SVG master against the winning raster reference until the material matches.
What ships with it
- Scripts it runs itself
- 37 reference files
- Measured evals
Say any of this
- in the macOS style
- make an icon for my app
Taken from the skill’s own trigger description — these are the phrases it listens for. You do not have to match them exactly.
make an icon for my app
audit.html — 3 engines, 12-point rubric, losers included A layered SVG (ships) 9.5 / 12 B Arrow vector 7.0 / 12 C raster, Apple-steered 8.5 / 12 ← fidelity target Fidelity loop, A against C at 32 / 64 / 128 / 256 / 1024: r00 0.71 bevel too hard, ground reads flat r03 0.88 ground fixed, glyph still light at 32px r05 0.94 converged Shipped: icon.svg + 1024 / 256 / 128 png, audit sheet committed beside them.
The problem this exists for
Ask an AI to draw a macOS app icon as an SVG and you'll get something clean, well composed, and flat. Ask an image model for the same icon and you'll get gorgeous material (soft shadows, glassy depth, real lighting) baked into pixels you can never edit again.
Across every icon shipped in the Fledgeling marketplace, the same pattern held: at equal audit scores, the raster's material beat the vector's, while the vector won composition and legibility. We kept closing that gap by hand, icon after icon. This skill is that manual loop turned into a pipeline with a number on it.
The research behind it is real: three deep-research reports (verified, zero fabricated citations) all landed on the same conclusion. SVG can express everything the rasters show. Models fail because they author flat paths, and "look at a screenshot and try again" measurably makes output worse. The fix is a structured loop with a score. The full evidence base lives in the fidelity plan.
What it actually does
A flow diagram sits here. It needs a renderer this page deliberately does not ship — see it drawn on GitHub.
- Direction first. The style catalogue was distilled from 532 real macOS icons, including all 32 of Apple's own macOS 26 ground-truth captures. It knows the current era's grammar (and the ten ways shipping icons fail; 76% of them die on the same one).
- Three takes, not one. A hand-authored layered SVG (the master that ships), an independent vector take from Arrow, and raster takes steered by real Apple exemplars. Every take gets scored on a 12-point rubric in a written audit sheet, losers included.
- Then the measurement. When a raster wins the material read,
fidelity.pyscores the SVG master against it at five sizes, from 1024px down to the 16px menu-bar squint. A bounded loop edits one thing per round, and a gate rejects any round that trades small-size legibility for large-size gloss. The trap where a model games the score by embedding the raster inside the SVG? Statically rejected before a single render. - The skill learns. Every construction that closes a gap gets written into the recipe library with the fixture it came from. The next commission starts where the last one finished.
Does it work?
The scorer was calibrated against the marketplace's own history before anything trusted it. On the first fixture (a well-composed but flat master versus its raster reference), it scored 0.83 at 16px and 0.45 at 1024px: composition converged, material hadn't. That's precisely the judgment a human had already made about those two files, which is what you want from an instrument.
The skill ships with three process evals (full commission, iterate-against-a-reference, and an honest-degradation run with no image model available), each asserting the artifacts exist on disk rather than trusting the run's own account of itself.
Install
/plugin marketplace add fledgeling-co/fledgeling-plugins
/plugin install create-mac-icon@fledgeling-plugins
Needs numpy, Pillow, and rsvg-convert for the scoring harness. Install torch + lpips and the material metric upgrades itself; without them it runs a lighter stack and says so in the score file rather than pretending.
Where it came from
The icon pipeline (the direction catalogue, the three-engine discipline, the audit sheet, the Tahoe grammar) was extracted from mac-design-studio, which covers full macOS app design and taught this marketplace everything it knows about icons. This skill is the icon half of that pipeline plus the measurement layer it never had. The corpus analysis is theirs; the fidelity loop is new.
Deep material, if you want it:
- The SVG icon fidelity plan, with the full research corpus committed beside it
- The fidelity loop protocol
- The material recipe library
- The direction catalogue and rubric