К основному содержанию
скилл CX Codex

color-mode-and-theme — скилл для Claude Code: суть и установка

Помогает выбрать цветовую схему проекта, решить вопрос о поддержке тёмной темы и выстроить токены без сломанного контраста.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add dembrandt/dembrandt-skills --skill color-mode-and-theme -a claude-code
Открыть на GitHub

Что делает color-mode-and-theme

Скилл помогает определиться с палитрой проекта на основе контекста использования и характера бренда. Для маркетинговых сайтов и витрин автор рекомендует светлую тему без лишних контролов. Тёмная тема отведена под терминалы трейдинга, консоли разработчиков и дашборды с плотными графиками. Если продукт используют часами, пользователю нужен переключатель. Для редких заходов достаточно зафиксировать один режим.

В правилах для тёмной темы скилл запрещает заливать фон чистым чёрным #000000. Глубину задают тёмно-серые оттенки вроде #0A0A0F, а карточки и модальные окна становятся светлее базового слоя вместо добавления теней. Насыщенность акцентных цветов советуют снижать на 10–15%, а шрифт делать на ступень жирнее из-за оптического истончения белых букв.

Сломанный ночной режим раздражает сильнее, чем его полное отсутствие. Переключатель тем требует поддержки двух полноценных палитр, а не механического инвертирования цветов. Любые хардкодные значения в стилях скилл предлагает отслеживать через grep и останавливать сборку при появлении новых литералов в кодовой базе.

Какие задачи решает

  • выбрать цветовой режим на основе характера бренда и задач продукта
  • оценить необходимость переключателя тем в интерфейсе
  • построить шкалу поверхностей тёмной темы через светлоту вместо теней
  • настроить проверку разметки на хардкодные литералы цветов

Примеры запросов агенту

  • Это сервис для финансовой аналитики, какой цветовой режим для него выбрать?
  • Стоит ли добавлять переключатель тем на лендинг нашего сервиса?
  • Помоги настроить токены для тёмной темы в design-system

Как установить color-mode-and-theme

1Через Skills CLI (Vercel)

npx skills add dembrandt/dembrandt-skills --skill color-mode-and-theme -a claude-code

2Вручную: положить файлы

~/.claude/skills/color-mode-and-theme/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/color-mode-and-theme/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Из того же набора34

nielsen-usability-heuristics Оценивает интерфейсы и текст ошибок по 10 эвристикам Нильсена. Скилл помогает выявить проблемы юзабилити прямо в коде компонентов до релиза. CX Codex +1 976установок performance-and-web-vitals Скилл помогает находить и устранять проблемы с Core Web Vitals и аудитами Lighthouse. Он даёт правила для оптимизации LCP, CLS, INP, изображений, шрифтов и скриптов. CX Codex +1 975установок ui-density Помогает подобрать плотность интерфейса под мобильные экраны, планшеты и десктоп. Задаёт правила группировки данных для таблиц, дашбордов и режимов для профи. CX Codex +1 915установок form-design Скилл для проектирования форм: подсказки под полем, плейсхолдеры, валидация и состояние кнопки отправки. Пригодится, когда верстаешь или проверяешь ввод данных. CX Codex +1 916установок brand-visual-language Скилл помогает выбрать радиусы, шрифты и стиль иконок так, чтобы интерфейс читался как одна марка. Пригодится, когда начинаете дизайн-систему или ловите разнобой в визуале. CX Codex +1 907установок semantic-html-and-seo Скилл для ИИ-агента: подсказывает семантичную разметку HTML5, метатеги, alt-тексты и progressive enhancement. Пригодится при вёрстке интерфейса и разборе чужого markup. CX Codex +1 901установок motion-and-storytelling Скилл для проектирования переходов, скролл-анимаций и онбординга. Подсказывает тайминги, easing и стаггер, когда анимация нужна, а не «для красоты». CX Codex +1 894установок information-architecture Помогает разложить большой интерфейс по полочкам: как называть сущности, строить навигацию и подтверждать необратимые действия. CX Codex +1 889установок

Похожие

tokens educlopez Проверяет, как в проекте устроены дизайн-токены, и помогает собрать трёхслойную систему с нуля. Пригодится, когда цвета и отступы расползлись по файлам. CX Codex +1 853установок color-palette jezweb Скилл строит полную цветовую систему из одного брендового hex: 11 оттенков, семантические токены, тёмная тема и проверка контраста по WCAG. CX Codex +1 3 200установок tailwind-theme-builder jezweb Скилл настраивает тему Tailwind v4 с shadcn/ui и тёмным режимом: ставит зависимости, связывает CSS-переменные через @theme inline, подключает переключатель темы. CX Codex +1 3 200установок preline-theme-generator htmlstreamofficial Генерирует CSS-темы для Preline UI из цветов бренда или настроения. Работает через локальные скрипты — не требует сети после установки. CX Codex +1 1 300установок design-tokens julianoczkowski Генерирует файл дизайн-токенов — CSS-переменные или конфиг Tailwind — по выбранной эстетике, со светлой и тёмной темами. CX Codex +1 5 900установок tailwind-v4 existential-birds Скилл для ИИ-агента, который подсказывает, как настроить Tailwind CSS v4: тема в CSS, токены дизайна, цвета OKLCH и тёмная тема. CX Codex +1 812установок

Рядом в теме «Дизайн»

Всё по теме «Дизайн» →

Вопросы о color-mode-and-theme

Как установить color-mode-and-theme в Claude Code?

Выполните команду npx skills add dembrandt/dembrandt-skills --skill color-mode-and-theme -a claude-code в терминале.

Что делает скилл color-mode-and-theme?

Он содержит правила подбора светлой и тёмной темы, задаёт условия для размещения тумблера в интерфейсе и описывает требования к токенам.

Почему скилл запрещает использовать чистый чёрный цвет в тёмной теме?

Цвет #000000 лишает интерфейс глубины. Скилл рекомендует брать нейтральные тёмные тона вроде #0A0A0F, чтобы приподнятые карточки и модальные окна выделялись за счёт более светлых оттенков.

Исходный текст

SKILL.md · MIT
---
name: color-mode-and-theme
description: Light, dark or both, and when a theme selector is worth it. Use when defining a base palette or deciding on dark mode support.
metadata:
  priority: 7
  pathPatterns:
    - "**/*.css"
    - "**/*.scss"
    - "**/tokens/**"
    - "**/theme/**"
    - "tailwind.config.*"
    - "design-system/**"
  promptSignals:
    phrases:
      - "dark mode"
      - "light mode"
      - "theme"
      - "color mode"
      - "dark design"
      - "white design"
      - "theme selector"
      - "brand tone"
retrieval:
  aliases:
    - dark mode
    - light mode
    - theme selector
    - color scheme
    - brand tone
    - white design
    - dark design
  intents:
    - choose between dark and light mode
    - decide if dark mode is needed
    - build a theme selector
    - match brand tone in color palette
    - design for enterprise tools
  examples:
    - should this app be dark or light
    - when should I add a theme toggle
    - design a dark mode for this dashboard
    - this is a trading platform, what color mode fits
---

# Color Mode and Theme

## The Decision: Light, Dark, or Both

Color mode is a brand and context decision, not a personal preference. Make it deliberately.

### Light (white design)
**Tone:** Open, trustworthy, content-forward, accessible, professional  
**Fits:** Marketing sites, e-commerce, editorial, SaaS with mixed audiences, consumer products, B2B tools where the content is the focus

Light mode is the safer default for most products. It performs better in bright environments and has broader accessibility coverage out of the box.

### Dark (dark design)
**Tone:** Premium, focused, immersive, technical, high-contrast data  
**Fits:** Trading platforms, developer tools, creative tools (video/audio editors), data dashboards with dense visualisations, entertainment, gaming

Dark mode reduces eye strain during extended use in low-light environments. It also makes colourful data visualisations (charts, heatmaps) pop more clearly against a dark surface.

**Caution:** Dark mode is harder to get right. Low-contrast text, over-saturated brand colours, and insufficient surface differentiation are common failures. If the team cannot maintain it properly, light mode is better than a broken dark mode.

### Combined (system-default + manual override)
Respect `prefers-color-scheme` and let the OS set the default. Offer a toggle for users who want to override. This is the modern standard for most products with a returning user base.

```css
@media (prefers-color-scheme: dark) {
  :root { /* dark tokens */ }
}
@media (prefers-color-scheme: light) {
  :root { /* light tokens */ }
}
[data-theme="dark"] { /* manual override */ }
[data-theme="light"] { /* manual override */ }
```

---

## When to Build a Theme Selector in the UI

A theme selector is a UI control — it takes space and adds complexity. Only build it when user control genuinely matters.

| Situation | Theme selector? |
|---|---|
| Marketing site, landing page | No — pick one mode, commit to it |
| Consumer SaaS, general audience | Combined (system-default + toggle) |
| Developer tool, technical product | Yes — developers expect it |
| Trading platform, financial dashboard | Yes — extended use, low-light sessions common |
| B2B enterprise tool (ERP, analytics) | Yes — power users, long sessions, personal preference varies |
| E-commerce storefront | Usually no — light default, possibly system-default |
| Creative tool (design, video, audio) | Yes — dark is often preferred, toggle still expected |

**Rule:** if the user will spend hours per day in the tool, give them control. If it's a transactional or occasional-use product, pick the mode that fits the brand and move on.

Place the theme toggle in the header (top-right, near account) or in user settings — not in primary navigation.

---

## Brand Tone and Color Mode

The brand's existing visual identity should inform the default mode.

| Brand tone | Default mode |
|---|---|
| Clean, minimal, trustworthy, open | Light |
| Premium, exclusive, bold, immersive | Dark |
| Technical, data-heavy, precise | Dark |
| Playful, colourful, energetic | Light (dark mode harder to maintain with vivid brand colours) |
| Neutral, enterprise, functional | Light, with system-default toggle |

If the brand uses a very dark primary colour (navy, deep green, near-black), a dark mode surfaces it naturally. If the brand is built around a bright, vivid primary, light mode lets it breathe.

---

## Dark Mode Token Principles

**A theme switcher is a second palette, not a toggle.** Every semantic colour needs a verified value in each mode — not one value flipped by an algorithm. Contrast that passes on light routinely fails on dark; saturation and elevation read differently. Real cost, and a reason not to build one unless it earns its place (see above).

Dark mode is not just inverting colours. Common mistakes:

- **Do not use pure black (#000000) as the base surface** — use a very dark neutral (#0A0A0F, #111827) for depth
- **Surface hierarchy in dark mode uses lightness, not shadows** — base, +1, +2 surfaces get progressively lighter, not more shadowed
- **Reduce brand colour saturation slightly** — vivid colours on dark backgrounds can be visually aggressive; a 10–15% desaturation keeps them readable
- **Increase font weight for reversed text** — light text on a dark background often appears "thinner" than the same weight in light mode. Increase the weight by one step (e.g., from Regular to Medium, or Medium to Semibold) to maintain legibility.
- **Text contrast needs active verification** — light text on dark surfaces is not automatically WCAG-compliant; check all combinations

**A literal equal to a token's value is that token.** When a hardcoded colour happens to match what a token resolves to in the current theme, it is not a coincidence and not a local choice: it is that token, written in the one form that cannot follow the theme. The damage then shows up inverted rather than missing. A surface frozen at its dark-mode value does not merely look wrong in light mode, it reverses its relationship to its neighbours, so what was sunken becomes raised and what receded now advances. The layout still renders, nothing throws, and the only report is somebody saying a screen feels off. Do not leave this to discipline, because a literal is invisible to every token audit by construction. Make it mechanical: grep the markup for literal colour values, treat the count as a debt with a number, and fail the build on new ones once it reaches zero. Any literal that survives the grep needs a reason in writing, and "it is the same as the token anyway" is the one reason that is never valid.

```css
/* Dark mode surface scale */
--color-surface:         #0A0A0F;  /* base */
--color-surface-raised:  #141419;  /* cards */
--color-surface-overlay: #1E1E26;  /* modals, popovers */
--color-border:          rgba(255,255,255,0.08);
--color-text:            #F0F0F5;
--color-text-secondary:  #8A8F98;
```

---

## Review Checklist

- [ ] Is the color mode choice deliberate and based on brand tone and use context?
- [ ] If combined mode: does `prefers-color-scheme` set the default?
- [ ] If a theme selector is built: is it placed in a low-profile but accessible location?
- [ ] In dark mode: are surfaces differentiated by lightness steps, not just shadows?
- [ ] In dark mode: is brand colour slightly desaturated to avoid visual aggression?
- [ ] Are all text/background contrast ratios verified in both modes (WCAG 2.2 AA)?
- [ ] Is font weight increased by one step for reversed text (light-on-dark) to maintain optical legibility?
- [ ] Is pure black (#000000) avoided as a dark mode base surface?

© dembrandt · MIT · dembrandt/dembrandt-skills

Смотрите также

Спонсоры проекта

Компании, которые помогают держать аналитику открытой