corner-diagonals — скилл для Claude Code: срезанные углы в UI
Скилл для срезанных углов и фаски на кнопках, карточках и панелях. Пригодится, когда интерфейсу нужна резкая геометрия вместо скруглённых пилюль.
npx skills add MengTo/Skills --skill corner-diagonals -a claude-codeЧто делает corner-diagonals
Скилл задаёт набор CSS-токенов и готовых clip-path: polygon(...), которые срезают углы у кнопок, карточек, панелей и контейнеров. Внутри — переменные --corner-cut-sm/md/lg (8px, 14px, 24px), цвета линий и заливки, три базовых силуэта: срез по всем углам, пара «верх-лево + низ-право», пара «верх-право + низ-лево». Для рамок предлагается обёртка .cut-shell с внутренним слоем, который наследует тот же полигон через clip-path: inherit.
Есть отдельные паттерны для основной и вторичной кнопки, включая градиентную обводку и видимое состояние фокуса. Размер среза советует подбирать по масштабу: 6–10px для мелких контролов, 12–18px для карточек, 20–32px для больших панелей. Кнопкам задана минимальная высота 44px — это про зоны касания, а не про красоту.
Главная ловушка в том, что clip-path обрезает и рамку, и область клика. Если оставить прямоугольный border или невидимую зону нажатия, силуэт будет читаться, а попадать по кнопке станет сложнее. Скилл прямо перечисляет это в разделе с ограничениями: клип только фона при прямоугольных границах и хит-зоне — ошибка. Ещё советует не смешивать скруглённые пилюли и фаски в одном слое без явной иерархии.
Какие задачи решает
- срезать углы у кнопки через
clip-path - собрать панель с рамкой и фаской по двум углам
- выдержать один размер среза во всех карточках
- сохранить зону нажатия 44px у клипнутой кнопки
- сделать видимый фокус вокруг срезанного силуэта
Примеры запросов агенту
- Сделай кнопку с фаской по верхнему левому и нижнему правому углу, срез 8px
- Собери карточку с рамкой через
.cut-shell, срез 14px по двум углам - Проверь, что у клипнутых кнопок осталась высота 44px и видимый фокус
Как установить corner-diagonals
1Через Skills CLI (Vercel)
npx skills add MengTo/Skills --skill corner-diagonals -a claude-code2Вручную: положить файлы
~/.claude/skills/corner-diagonals/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/corner-diagonals/
1Через Skills CLI (Vercel)
npx skills add MengTo/Skills --skill corner-diagonals -a codex2Вручную: положить файлы
.agents/skills/corner-diagonals/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add MengTo/Skills --skill corner-diagonals -a cursor2Вручную: положить файлы
.cursor/skills/corner-diagonals/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install MengTo/Skills corner-diagonals2Вручную: положить файлы
.github/skills/corner-diagonals/SKILL.md1Через Skills CLI (Vercel)
npx skills add MengTo/Skills --skill corner-diagonals -a gemini-cli2Командой платформы
gemini skills install https://github.com/MengTo/Skills --path agent-skills/web-design/corner-diagonalsВручную: положить файлы
.devin/skills/corner-diagonals/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add MengTo/Skills --skill corner-diagonals -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Из того же набора144
Похожие
Рядом в теме «Фронтенд и UI»
Всё по теме «Фронтенд и UI» →Вопросы о corner-diagonals
Как установить corner-diagonals в Claude?
Выполни npx skills add MengTo/Skills --skill corner-diagonals -a claude-code. Скилл окажется в ~/.claude/skills/corner-diagonals/SKILL.md.
Что делает corner-diagonals?
Даёт агенту готовые CSS-токены и полигоны для срезанных углов на кнопках, карточках, панелях и контейнерах. Плюс паттерны кнопок с градиентной обводкой и состоянием фокуса.
Чем это отличается от обычного border-radius?
border-radius даёт скругление, а здесь силуэт строится через clip-path: polygon(...) — углы срезаны по прямой. Из-за этого клип обрезает и рамку, и область клика, поэтому границы и хит-зону нужно вести по той же геометрии.
Исходный текст
SKILL.md · MIT
---
name: corner-diagonals
description: Apply diagonal-cut corners and chamfered edges to buttons, cards, panels, and container shells. Use when a design needs precise geometric framing, sci-fi UI surfaces, clipped-corner controls, or engineered sharp containers instead of rounded pills or plain rectangles.
---
# Corner Diagonals
## Scope
- Apply only to buttons, cards, panels, and container shells.
- Use when surfaces need diagonal-cut corners or chamfered edges.
- Keep the hit area readable and usable even when the visual shape is clipped.
- Reuse the same corner logic across surfaces so it feels like a system.
## Visual Target
- Diagonal cuts should feel engineered, sharp, and intentional.
- Cuts stay subtle and proportional to the component size.
- One or more corners can be chamfered, but the silhouette should still read quickly.
- Use diagonal corners as a repeated structural motif, not a one-off trick.
## Cut Tokens
```css
:root {
--corner-cut-sm: 8px;
--corner-cut-md: 14px;
--corner-cut-lg: 24px;
--corner-line: rgba(255, 255, 255, 0.18);
--corner-line-strong: rgba(255, 255, 255, 0.34);
--corner-fill: rgba(10, 14, 24, 0.82);
--corner-accent: #8b5cf6;
}
```
## Core Shapes
Use `clip-path: polygon(...)` for true diagonal silhouettes.
```css
.cut-all {
--cut: var(--corner-cut-md);
clip-path: polygon(
var(--cut) 0,
calc(100% - var(--cut)) 0,
100% var(--cut),
100% calc(100% - var(--cut)),
calc(100% - var(--cut)) 100%,
var(--cut) 100%,
0 calc(100% - var(--cut)),
0 var(--cut)
);
}
.cut-top-left-bottom-right {
--cut: var(--corner-cut-md);
clip-path: polygon(
var(--cut) 0,
100% 0,
100% calc(100% - var(--cut)),
calc(100% - var(--cut)) 100%,
0 100%,
0 var(--cut)
);
}
.cut-top-right-bottom-left {
--cut: var(--corner-cut-md);
clip-path: polygon(
0 0,
calc(100% - var(--cut)) 0,
100% var(--cut),
100% 100%,
var(--cut) 100%,
0 100%,
0 0
);
}
```
## Bordered Shell
For bordered surfaces, use an outer wrapper and inner surface with the same polygon.
```css
.cut-shell {
--cut: var(--corner-cut-md);
--border-size: 1px;
position: relative;
padding: var(--border-size);
background: linear-gradient(135deg, var(--corner-line-strong), transparent 46%, var(--corner-line));
clip-path: polygon(
var(--cut) 0,
100% 0,
100% calc(100% - var(--cut)),
calc(100% - var(--cut)) 100%,
0 100%,
0 var(--cut)
);
}
.cut-shell__inner {
min-height: 100%;
padding: clamp(16px, 2.4vw, 28px);
background: var(--corner-fill);
clip-path: inherit;
}
```
```html
<section class="cut-shell">
<div class="cut-shell__inner">
...
</div>
</section>
```
## Button Pattern
```css
.cut-button {
--cut: var(--corner-cut-sm);
position: relative;
display: inline-flex;
min-height: 44px;
align-items: center;
justify-content: center;
gap: 8px;
padding: 0 18px;
border: 0;
color: white;
background: linear-gradient(135deg, var(--corner-accent), color-mix(in srgb, var(--corner-accent), black 28%));
clip-path: polygon(
var(--cut) 0,
100% 0,
100% calc(100% - var(--cut)),
calc(100% - var(--cut)) 100%,
0 100%,
0 var(--cut)
);
}
.cut-button:hover {
filter: brightness(1.08);
}
.cut-button:focus-visible {
outline: 2px solid color-mix(in srgb, var(--corner-accent), white 45%);
outline-offset: 3px;
}
```
## Secondary Button
Use a darker shell with diagonal outline treatment.
```css
.cut-button-secondary {
--cut: var(--corner-cut-sm);
color: white;
background:
linear-gradient(var(--corner-fill), var(--corner-fill)) padding-box,
linear-gradient(135deg, var(--corner-line-strong), transparent 58%, var(--corner-accent)) border-box;
border: 1px solid transparent;
clip-path: polygon(
var(--cut) 0,
100% 0,
100% calc(100% - var(--cut)),
calc(100% - var(--cut)) 100%,
0 100%,
0 var(--cut)
);
}
```
## Recommended Patterns
- Primary buttons: clipped hex-like or chamfered rectangles with one consistent cut amount.
- Secondary buttons: dark shells with diagonal outline treatment and restrained hover fill.
- Cards and panels: thin framed containers with one or two diagonal corners.
- Large sections: diagonal-corner inner blocks nested inside straight outer frames for hierarchy.
- Mirrored pairings: top-left plus bottom-right, or top-right plus bottom-left.
## Tuning Knobs
- Cut size: `6px-10px` for small controls, `12px-18px` for cards, `20px-32px` for large panels.
- Border treatment: use a thin stroke, gradient shell, or inset line to make the silhouette legible.
- Consistency: reuse the same polygon family across buttons and containers.
- Accent: reserve bright color for primary controls, hover borders, or focal states.
- Motion: brighten fills, reveal borders, or slide overlays; keep the shape stable.
## Avoid
- Random cut sizes across similar components.
- Aggressive clipping that harms readability or makes the component feel broken.
- Mixing rounded pills and chamfered geometry without clear hierarchy.
- Clipping only the background while borders and hit areas stay rectangular.
- Flooding every diagonal surface with a bright accent color.
## Quick Checks
- Border, background, and hit area follow the same diagonal geometry.
- Text still has comfortable horizontal padding after the cut.
- Buttons keep at least `44px` height for touch targets.
- Repeated components use the same `--cut` scale.
- Focus states remain visible around the clipped shape.
© MengTo · MIT · MengTo/Skills