telagod/frontend
Visual design taste for web UI, distilled from a stronger model's aesthetic - invoke when about to BUILD or STYLE any web page, component, artifact, or UI; picking a visual direction; writing CSS; reviewing how a design looks; or when a design works but feels generic or boring. Named style directions with exact tokens, concrete craft numbers, and a catalog of garbage design to refuse.
npx skills add https://github.com/telagod/code-abyss --skill frontend
Rule content lives in the five files below; this SKILL.md only routes (duplicating rule
text here is drift — doctrine/04-maintenance.md governs edits to this bundle too).
| You are about to… | Read (in this folder) |
|---|---|
| Start any page/component/artifact — brief to shipped | process.md first; it routes onward |
| Pick a visual direction, or choose between styles | styles.md |
| Understand what makes a design striking vs mediocre; make a boring design memorable | taste.md |
| Write actual CSS values — type, space, color, depth, motion, dark mode | craft.md |
| Judge a design (yours or anyone's); name precisely why something feels cheap | garbage.md |
Start with the ONE file that matches and follow its cross-references — they are required
inputs, not optional reading. Starting from scratch usually means process.md + the two
files it points you to.
This bundle is the visual/aesthetic layer only. Server-side design (stack, APIs,
data) → the backend bundle; whether to delegate → doctrine; how to think → methods. If the environment provides an artifact-design skill
(harness-side), it calibrates how much to invest per request; THIS bundle governs
direction and craft once you're building.
Left unguided, every model produces the same page (garbage.md §A names it precisely).
What taste means here — and why a clean-but-forgettable page counts as a failure — is
taste.md's opening; read it before judging any design.
Take telagod/frontend from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.