dsh-desktop-kit 1.0.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (144) hide show
  1. package/README.md +106 -41
  2. package/client.js +780 -28
  3. package/docs/ARCHITECTURE.md +114 -0
  4. package/docs/COMPATIBILITY.md +61 -0
  5. package/docs/INSTALL.md +84 -0
  6. package/docs/PRIVACY.md +50 -0
  7. package/docs/ROADMAP.md +57 -0
  8. package/docs/TOKENS.md +118 -0
  9. package/docs/TROUBLESHOOTING.md +68 -0
  10. package/docs/images/hero.png +0 -0
  11. package/index.js +4 -0
  12. package/package.json +15 -5
  13. package/plugins/dsh-gkb-ru-ui/lib/client.js +276 -28
  14. package/plugins/dsh-gkb-ru-ui/lib/index.js +45 -1
  15. package/plugins/dsh-gkb-ru-ui/lib/skills.js +195 -1
  16. package/plugins/dsh-gkb-ru-ui/package.json +2 -2
  17. package/plugins/dsh-gkb-ru-ui/screenshots/01-home-tiles-1440-light.png +0 -0
  18. package/plugins/dsh-gkb-ru-ui/screenshots/02-skills-1440-light.png +0 -0
  19. package/plugins/dsh-gkb-ru-ui/screenshots/03-skills-editor-1440-light.png +0 -0
  20. package/plugins/dsh-gkb-ru-ui/screenshots/04-skills-1440-dark.png +0 -0
  21. package/plugins/dsh-gkb-ru-ui/screenshots/05-skills-390-light.png +0 -0
  22. package/plugins/dsh-gkb-ru-ui/screenshots/06-home-tiles-1440-dark.png +0 -0
  23. package/plugins/dsh-peak-guard/screenshots/01-real-time-peak-start.png +0 -0
  24. package/plugins/dsh-peak-guard/screenshots/02-real-time-peak-end.png +0 -0
  25. package/plugins/dsh-peak-guard/screenshots/03-peak-card-1440-light.png +0 -0
  26. package/plugins/dsh-peak-guard/screenshots/04-peak-card-1440-dark.png +0 -0
  27. package/plugins/dsh-peak-guard/screenshots/05-peak-card-390-light.png +0 -0
  28. package/plugins/dsh-peak-guard/screenshots/05-peak-card-768-light.png +0 -0
  29. package/plugins/dsh-peak-guard/screenshots/06-peak-card-390-light.png +0 -0
  30. package/plugins/dsh-peak-guard/screenshots/07-live-preview-check.png +0 -0
  31. package/plugins/dsh-peak-guard/screenshots/07-pre-peak-1440-light.png +0 -0
  32. package/plugins/dsh-peak-guard/screenshots/08-peak-start-1440-light.png +0 -0
  33. package/plugins/dsh-peak-guard/screenshots/09-peak-end-1440-light.png +0 -0
  34. package/plugins/dsh-peak-guard/screenshots/10-pre-peak-card-1440-light.png +0 -0
  35. package/plugins/dsh-peak-guard/screenshots/11-pre-peak-card-1440-dark.png +0 -0
  36. package/plugins/dsh-peak-guard/screenshots/12-pre-peak-card-390-light.png +0 -0
  37. package/plugins/dsh-peak-guard/screenshots/qa-report.json +74 -0
  38. package/plugins/dsh-profile-transfer/screenshots/01-settings-transfer-1440-light.png +0 -0
  39. package/plugins/dsh-profile-transfer/screenshots/02-settings-transfer-preview-1440-light.png +0 -0
  40. package/plugins/dsh-profile-transfer/screenshots/03-settings-transfer-1440-dark.png +0 -0
  41. package/plugins/dsh-profile-transfer/screenshots/04-settings-transfer-390-light.png +0 -0
  42. package/plugins/dsh-profile-transfer/screenshots/05-settings-transfer-768-light.png +0 -0
  43. package/plugins/dsh-profile-transfer/screenshots/06-settings-transfer-390-dark.png +0 -0
  44. package/plugins/dsh-profile-transfer/screenshots/07-settings-transfer-export-result.png +0 -0
  45. package/plugins/dsh-profile-transfer/screenshots/08-settings-transfer-workspaces-1440-light.png +0 -0
  46. package/plugins/dsh-profile-transfer/screenshots/09-settings-transfer-workspaces-1440-dark.png +0 -0
  47. package/plugins/dsh-profile-transfer/screenshots/10-settings-transfer-workspaces-390-light.png +0 -0
  48. package/plugins/dsh-session-move/screenshots/01-row-menu-1440-light.png +0 -0
  49. package/plugins/dsh-session-move/screenshots/02-dialog-1440-light.png +0 -0
  50. package/plugins/dsh-session-move/screenshots/03-dialog-390-light.png +0 -0
  51. package/plugins/dsh-session-move/screenshots/04-dialog-1440-dark.png +0 -0
  52. package/plugins/dsh-session-move/screenshots/05-drag-highlight-1440-light.png +0 -0
  53. package/plugins/dsh-session-move/screenshots/06-drop-ungrouped-highlight.png +0 -0
  54. package/plugins/dsh-session-move/screenshots/07-after-drop-ungrouped.png +0 -0
  55. package/plugins/dsh-session-move/screenshots/08-move-dialog.png +0 -0
  56. package/plugins/dsh-session-move/screenshots/09-moved-to-second-workspace.png +0 -0
  57. package/plugins/dsh-session-move/screenshots/qa-report.json +62 -0
  58. package/plugins/dsh-skill-autopilot/cordis.patch.yml +3 -0
  59. package/plugins/dsh-skill-autopilot/index.js +444 -0
  60. package/plugins/dsh-skill-autopilot/package.json +19 -0
  61. package/plugins/dsh-token-lab/cordis.patch.yml +3 -0
  62. package/plugins/dsh-token-lab/lib/client.js +504 -0
  63. package/plugins/dsh-token-lab/lib/index.js +275 -0
  64. package/plugins/dsh-token-lab/package.json +26 -0
  65. package/plugins/dsh-token-lab/screenshots/01-token-lab-1440-light.png +0 -0
  66. package/plugins/dsh-token-lab/screenshots/02-token-lab-1440-dark.png +0 -0
  67. package/skills/code-review-checklist/SKILL.md +48 -30
  68. package/skills/content-writing/SKILL.md +64 -327
  69. package/skills/content-writing/references/process.md +123 -0
  70. package/skills/content-writing/references/quick-recipes.md +99 -0
  71. package/skills/content-writing/references/rules.md +85 -0
  72. package/skills/content-writing/references/sources.md +49 -0
  73. package/skills/context-economy/SKILL.md +60 -0
  74. package/skills/context-economy/references/long-session.md +35 -0
  75. package/skills/context-economy/references/token-math.md +42 -0
  76. package/skills/context-economy/references/tool-recipes.md +34 -0
  77. package/skills/database-safety/SKILL.md +40 -24
  78. package/skills/debugging-playbook/SKILL.md +30 -27
  79. package/skills/design-critique/SKILL.md +57 -110
  80. package/skills/design-critique/references/a11y.md +25 -0
  81. package/skills/design-critique/references/diagnoses.md +33 -0
  82. package/skills/design-critique/references/quick-tests.md +30 -0
  83. package/skills/design-critique/references/report-template.md +63 -0
  84. package/skills/design-critique/references/rubric-fast.md +73 -0
  85. package/skills/dev-workflow/SKILL.md +41 -34
  86. package/skills/dev-workflow/references/definition-of-done.md +44 -0
  87. package/skills/dev-workflow/references/memory-and-boundaries.md +31 -0
  88. package/skills/dev-workflow/references/stages.md +67 -0
  89. package/skills/git-and-ci/SKILL.md +46 -26
  90. package/skills/pg-upgrade-verify/SKILL.md +54 -35
  91. package/skills/project-deep-dive/SKILL.md +39 -164
  92. package/skills/project-deep-dive/references/recon-commands.md +12 -0
  93. package/skills/project-deep-dive/references/section-templates.md +2 -0
  94. package/skills/project-deep-dive/references/tool-and-process.md +86 -0
  95. package/skills/project-memory-maintenance/SKILL.md +39 -154
  96. package/skills/project-memory-maintenance/references/api-and-checklist.md +99 -0
  97. package/skills/project-memory-maintenance/references/journal-template.md +2 -0
  98. package/skills/project-memory-maintenance/references/section-rules.md +2 -0
  99. package/skills/release-and-deploy/SKILL.md +46 -32
  100. package/skills/requirements-and-planning/SKILL.md +44 -110
  101. package/skills/requirements-and-planning/references/antipatterns-and-checklist.md +20 -0
  102. package/skills/requirements-and-planning/references/process-steps.md +52 -0
  103. package/skills/requirements-and-planning/references/templates-and-estimates.md +29 -0
  104. package/skills/security-review/SKILL.md +33 -29
  105. package/skills/seo/SKILL.md +53 -305
  106. package/skills/seo/references/antipatterns.md +66 -0
  107. package/skills/seo/references/audit-checklist.md +14 -0
  108. package/skills/seo/references/content-seo.md +180 -174
  109. package/skills/seo/references/eeat-medical.md +2 -0
  110. package/skills/seo/references/measurement.md +28 -1
  111. package/skills/seo/references/on-page.md +5 -0
  112. package/skills/seo/references/page-templates.md +56 -0
  113. package/skills/seo/references/stack-recipes.md +2 -0
  114. package/skills/seo/references/structured-data.md +2 -0
  115. package/skills/seo/references/technical-seo.md +2 -0
  116. package/skills/service-desk-conventions/SKILL.md +40 -28
  117. package/skills/service-desk-db-safety/SKILL.md +39 -28
  118. package/skills/service-desk-release/SKILL.md +40 -22
  119. package/skills/service-desk-testing/SKILL.md +47 -33
  120. package/skills/service-desk-ui/SKILL.md +43 -24
  121. package/skills/skills-router/SKILL.md +44 -82
  122. package/skills/skills-router/references/applying-skills.md +25 -0
  123. package/skills/skills-router/references/routing-matrix.md +52 -0
  124. package/skills/testing-strategy/SKILL.md +47 -32
  125. package/skills/ui-design-system/SKILL.md +43 -38
  126. package/skills/ui-design-system/references/accessibility-and-responsive.md +50 -0
  127. package/skills/ui-design-system/references/tokens-and-components.md +67 -0
  128. package/skills/ui-design-system/references/visual-qa.md +44 -0
  129. package/skills/web-research/SKILL.md +40 -33
  130. package/skills/web-research/references/answer-and-citations.md +60 -0
  131. package/skills/web-research/references/query-recipes.md +44 -0
  132. package/skills/wow-design/SKILL.md +82 -161
  133. package/skills/wow-design/references/anti-patterns.md +3 -0
  134. package/skills/wow-design/references/critique-rubric.md +3 -0
  135. package/skills/wow-design/references/design-brief-template.md +2 -0
  136. package/skills/wow-design/references/inspiration.md +3 -0
  137. package/skills/wow-design/references/presets.md +3 -0
  138. package/skills/wow-design/references/principles.md +3 -0
  139. package/skills/wow-design/references/quick-presets.md +50 -0
  140. package/skills/wow-design/references/report-template.md +21 -0
  141. package/skills/wow-design/references/stack-recipes.md +3 -0
  142. package/skills/wow-design/references/visual-qa.md +3 -0
  143. package/skills/wow-design/references/wow-levers.md +43 -0
  144. package/tools/skill-cost.mjs +76 -0
@@ -1,40 +1,47 @@
1
1
  ---
2
2
  name: web-research
3
- description: "Живой поиск в интернете в реальном времени: находить актуальные факты, новости, цены, версии, законы и документацию, проверять по источникам и цитировать ссылки."
4
- whenToUse: "Когда нужны свежие/внешние данные: новости, «что сейчас», цены, версии ПО, изменения законов, документация, конкуренты, проверка факта; а также по просьбе «поищи в интернете»."
3
+ description: "Живой поиск в интернете: актуальные факты, новости, цены, версии, законы и документация — 2+ источника, дата «актуально на» и ссылки."
4
+ whenToUse: "Нужны свежие или внешние данные: новости, «что сейчас», цены, версии ПО, законы, документация, конкуренты; просьба «поищи в интернете»."
5
5
  user-invocable: true
6
6
  ---
7
7
 
8
8
  # Живой веб-поиск (реальное время)
9
9
 
10
- ## Когда обязательно
11
- - Вопрос про **сейчас/сегодня/последние** изменения, новости, курсы, цены, релизы, версии, тарифы.
12
- - Проверка факта, цитаты, даты, имени, закона, медицинской/юридической нормы.
13
- - Актуальная документация библиотеки/сервиса перед кодом (версии API, breaking changes).
14
- - Конкуренты/рынок для SEO и контента; свежие исследования для статьи.
15
-
16
- ## Процесс
17
- 1. **Сформулируй 2–4 запроса** (рус/англ; синонимы; официальные термины). Для версий — `site:`/официальный домен.
18
- 2. `web_search` → выбери 2–3 **независимых** источника, начни с официальных (docs, .gov, производитель, крупные СМИ).
19
- 3. `web_fetch` — открой ключевые страницы целиком, если нужен контекст/детали; не полагайся только на сниппеты.
20
- 4. **Сверь** минимум два источника; расхождения — покажи оба и объясни.
21
- 5. Зафиксируй **дату поиска** и дату публикации источника. Свежесть: по умолчанию — не старше 12 месяцев (если не историческая справка).
22
- 6. В ответе — **ссылки markdown** и пометка «актуально на YYYY-MM-DD». Не выдумывай URL/цифры.
23
-
24
- ## Правила достоверности
25
- - Отличай **факт** от мнения/маркетинга; для медицины/юридических норм — только официальные источники (Минздрав, Росздравнадзор, законы) и осторожные формулировки.
26
- - Если источник платный/закрыт — так и скажи; не выдавай пересказ за первоисточник.
27
- - Если поиск не дал результата — честно сообщи и предложи уточнить запрос; не заполняй пробел догадкой.
28
- - Не используй устаревшие данные без предупреждения; при смене версии/цены — укажи оба значения и даты.
29
-
30
- ## Формат ответа
31
- 1. Короткий вывод (1–3 предложения).
32
- 2. Детали с датами/версиями.
33
- 3. «Источники:» — список ссылок (title + URL), дата публикации, если известна.
34
- 4. «Актуально на: YYYY-MM-DD».
35
-
36
- ## Связка с другими скиллами
37
- - `content-writing` — факты и цитаты только после `web-research`, со ссылками в черновике.
38
- - `seo` — свежая семантика/конкуренты/тренды и проверка выдачи.
39
- - `php-laravel`, `javascript-typescript`, `bitrix-aspro` — сверять версии и API с официальной документацией.
40
- - `requirements-and-planning` — рыночные/правовые вводные подтверждать источниками.
10
+ > ≈1 450 токенов. Только `web_search` + `web_fetch`: память — не источник свежих фактов; рецепты и формат — §2.
11
+
12
+ ## 0 Когда применять
13
+ - Вопрос про **сейчас/сегодня/последние**: новости, курсы, цены, релизы, версии, тарифы.
14
+ - Проверка факта, цитаты, даты, имени, закона, медицинской или правовой нормы.
15
+ - Документация перед кодом: версии API, breaking changes.
16
+ - Конкуренты и рынок для SEO, свежие исследования для статьи.
17
+ - Прямая просьба «поищи в интернете»; при важной свежести обязателен, даже если ответ «кажется известным».
18
+
19
+ ## 1 Главное
20
+
21
+ **Только живой поиск.** `web_search` + `web_fetch`; сниппетов мало для деталей и цифр; никаких URL, цифр и дат «по памяти».
22
+
23
+ **Запросы.** 2–4 формулировки: рус/англ, синонимы, официальные термины; для версий и цен — `site:` официального домена.
24
+
25
+ **Источники.** 2–3 независимых, сначала официальные: документация, госсайты, производитель, крупные СМИ. Факт подтверждают **2+ источника**; расхождения — показать оба и объяснить.
26
+
27
+ **Даты.** Фиксировать дату поиска и публикации источника; по умолчанию данные не старше 12 месяцев (кроме исторических справок); в ответе — **«актуально на YYYY-MM-DD»**.
28
+
29
+ **Ссылки.** Markdown-ссылки (название + URL). URL и цифры не выдумывать: нет ссылки — нет утверждения.
30
+
31
+ **Достоверность.** Факт отличать от мнения и маркетинга; медицина и право — только официальные источники и осторожные формулировки; платный источник — сказать прямо, не выдавать пересказ за первоисточник; результата нет — честно сообщить и уточнить запрос; устаревшее — предупредить, при смене версии/цены — оба значения с датами.
32
+
33
+ **Формат.** Вывод (1–3 предложения) → детали с датами и версиями → «Источники:» (название, URL, дата) → «Актуально на: YYYY-MM-DD».
34
+
35
+ **Связки.** `content-writing` и `seo` — факты только после проверки; версии API — перед кодом; вводные для `requirements-and-planning` — со ссылками.
36
+
37
+ ## 2 Куда грузить дальше
38
+ | Когда нужно | Файл | ≈токенов |
39
+ |---|---|---|
40
+ | Запросы, источники, версии и цены | references/query-recipes.md | ≈1 450 |
41
+ | Ответ со ссылками, расхождения, медицина/право | references/answer-and-citations.md | ≈1 500 |
42
+
43
+ ## 3 Гейт перед сдачей
44
+ - [ ] Поиск вживую; ≥ 2 независимых источника.
45
+ - [ ] Дата поиска и публикаций зафиксированы; «актуально на YYYY-MM-DD» в ответе.
46
+ - [ ] Каждое утверждение со ссылкой; URL и цифры не выдуманы.
47
+ - [ ] Расхождения, устаревшее и платные источники раскрыты.
@@ -0,0 +1,60 @@
1
+ # Ответ, ссылки и спорные случаи
2
+
3
+ > Часть навыка web-research. ≈1 500 токенов. Читать, когда: собираешь ответ с цитатами, источники расходятся, данные устарели или тема медицинская/юридическая.
4
+
5
+ ## 1. Каркас ответа
6
+ ```
7
+ 1. Вывод — 1–3 предложения.
8
+ 2. Детали — даты, версии, цифры, условия.
9
+ 3. Источники — название + URL + дата публикации.
10
+ 4. Актуально на: YYYY-MM-DD.
11
+ ```
12
+
13
+ - Дату брать из системного времени и дат источников, не придумывать.
14
+ - Ссылки — markdown, кликабельные: `[Название](https://…)`.
15
+ - Источник на английском — цитировать оригинал и пересказать суть по-русски.
16
+
17
+ ## 2. Как цитировать
18
+ - На каждое фактическое утверждение — ссылка на страницу, где это сказано.
19
+ - Ссылка ведёт на конкретную страницу или раздел, а не на главную.
20
+ - Дата публикации — если есть; если нет, писать «дата не указана».
21
+ - Не смешивать своё мнение с цитатой: «По данным X…», «Рекомендую…».
22
+
23
+ ## 3. Источники расходятся
24
+ - Показать оба значения и оба источника, объяснить вероятную причину: разные даты, методики, регионы.
25
+ - Выбрать более свежий и официальный как основной, но не скрывать второй.
26
+ - Если вопрос критичный — сказать, что нужно уточнение у владельца данных.
27
+
28
+ ## 4. Данные устарели
29
+ - Предупредить: «данные за <год>, актуальнее не найдено».
30
+ - При смене версии или цены — «было → стало» с датами.
31
+ - Историческую справку помечать как историческую и не требовать от неё свежести.
32
+
33
+ ## 5. Платные и закрытые источники
34
+ - Сказать прямо: «полный текст платный или по подписке», дать видимую часть.
35
+ - Не выдавать пересказ за первоисточник.
36
+ - Не обходить paywall и не искать пиратские копии.
37
+
38
+ ## 6. Медицина и право
39
+ - Только официальные источники и осторожные формулировки: «по клиническим рекомендациям…», «согласно ст. …».
40
+ - Не ставить диагнозы и не заменять консультацию врача или юриста; для решений направлять к специалисту.
41
+ - Указывать редакцию закона и дату вступления в силу.
42
+ - Не переносить зарубежные нормы на РФ без оговорки.
43
+
44
+ ## 7. Если ничего не найдено
45
+ - Честно: «надёжных источников не найдено».
46
+ - Коротко: что пробовал — запросы, домены.
47
+ - Что уточнить у пользователя: город, год, версия, организация.
48
+ - Не заполнять пробел догадкой и не выдумывать ссылку.
49
+
50
+ ## 8. Примеры
51
+ - Плохо: «Новая версия вышла недавно» — без номера, ссылки и даты.
52
+ - Хорошо: «Версия X.Y — [release notes](https://…), опубликовано <дата>; актуально на <дата>».
53
+ - Плохо: «Врачи советуют…» — без источника.
54
+ - Хорошо: «Согласно клиническим рекомендациям ([ссылка], <год>)…».
55
+
56
+ ## 9. Связка с другими навыками
57
+ - `content-writing` — факты и цитаты только после `web-research`, ссылки — в черновике.
58
+ - `seo` — свежая семантика, конкуренты, тренды и проверка выдачи.
59
+ - Стековые скиллы (PHP/Laravel, JS/TS, Bitrix и т. п.) — версии и API сверять с официальной документацией.
60
+ - `requirements-and-planning` — рыночные и правовые вводные подтверждать источниками.
@@ -0,0 +1,44 @@
1
+ # Рецепты запросов и иерархия источников
2
+
3
+ > Часть навыка web-research. ≈1 450 токенов. Читать, когда: поиск даёт мусор, нужен первоисточник, версия/цена/закон или сравнение нескольких источников.
4
+
5
+ ## 1. Как формулировать запросы
6
+ - 2–4 варианта на один вопрос: русский и английский, синонимы, официальные термины («Правительство Москвы», а не «мэрия»).
7
+ - Короткие запросы лучше длинных: 3–6 значимых слов; убрать «подскажите», «срочно», «пожалуйста».
8
+ - Уточнять контекст: город, организация, год, редакция, версия продукта.
9
+ - Для кода и документации: `site:` официального домена, имя функции или текст ошибки в кавычках.
10
+ - Для законов: номер, дата, «действующая редакция», официальный портал правовой информации.
11
+ - Для цен и тарифов: название продукта + «тарифы» + год и `site:` вендора.
12
+ - Точные фразы — в кавычках; исключения — минусом; операторами не злоупотреблять.
13
+
14
+ ## 2. Иерархия источников
15
+ 1. **Первоисточник:** официальная документация, закон, приказ, пресс-релиз вендора, статистика ведомства.
16
+ 2. **Профильные авторитетные:** отраслевые издания, крупные СМИ, рецензируемые журналы.
17
+ 3. **Агрегаторы, обзоры, форумы** — подсказка, где искать, но не доказательство.
18
+
19
+ - Медицина: Минздрав, Росздравнадзор, клинические рекомендации, ВОЗ; не сайты-обзоры о здоровье.
20
+ - Право: текст закона и официальные разъяснения; статьи юристов — вторичны.
21
+ - Софт: CHANGELOG, документация, страницы релизов; блоги-пересказы — вторичны.
22
+
23
+ ## 3. Как найти первоисточник
24
+ - Начать с официального домена, затем смотреть, кто ссылается на оригинал, а не на пересказ.
25
+ - В статье искать ссылку на документ или исследование и открывать её.
26
+ - Проверить, что страница та самая: версия, дата, нужный раздел, а не редирект на главную.
27
+ - Для цифр искать таблицу или методику расчёта, а не только число в тексте.
28
+
29
+ ## 4. Версии, цены, законы
30
+ - Версия: CHANGELOG, release notes, тег в репозитории; фиксировать номер и дату.
31
+ - Цена/тариф: официальная страница тарифов; указывать дату, валюту и условия (регион, НДС).
32
+ - Закон: действующая редакция и дата вступления в силу; проверить, не отменён ли.
33
+ - Изменение: показывать «было → стало» с датами, а не только текущее значение.
34
+
35
+ ## 5. Если результатов нет
36
+ - Переформулировать: убрать жаргон, сменить язык, добавить год или организацию.
37
+ - Проверить официальный сайт напрямую и поиск по нему.
38
+ - После 2–3 попыток честно сказать, что надёжных данных нет; не подменять догадкой.
39
+
40
+ ## 6. Чего не делать
41
+ - Не цитировать сниппет как источник, не открыв страницу.
42
+ - Не брать цифры из SEO-статей без первоисточника.
43
+ - Не выдавать старую версию за текущую; не игнорировать дату публикации.
44
+ - Не выдумывать URL «по шаблону» и не собирать домены на глаз.
@@ -1,168 +1,89 @@
1
1
  ---
2
2
  name: wow-design
3
- description: "Дизайн-директор уровня топового web-UI дизайнера: арт-направление, токены, композиция, типографика, петля скриншот-критики. Использовать перед ЛЮБОЙ вёрсткой/дизайном интерфейса."
4
- whenToUse: "Любая задача, где создаётся или меняется внешний вид интерфейса: новая страница, лендинг, дашборд, форма, компоненты, темы, адаптив, дизайн-апгрейд, «сделай красиво». Загружать ДО первой строки HTML/CSS."
3
+ description: "Дизайн-директор: арт-направление, токены AURORA, композиция, типографика, петля скриншот-критики. Загружать до вёрстки."
4
+ whenToUse: "Любой новый или изменяемый UI: страница, лендинг, дашборд, форма, компоненты, темы, адаптив, «сделай красиво»."
5
5
  user-invocable: true
6
6
  ---
7
7
 
8
8
  # WOW-DESIGN — дизайн-директор
9
9
 
10
- > Ты — старший web-UI дизайнер с 40-летним опытом и безупречным вкусом.
11
- > Твой результат должен выглядеть дорого и уместно **с первого раза**, а не после десяти правок.
12
- > Красота здесь — не украшение, а ясность, иерархия и доверие. ВАУ без потери удобства.
13
-
14
- ## 0. КОНТРАКТ (нарушать нельзя)
15
-
16
- 1. **Не начинай вёрстку без арт-направления.** Сначала 5–10 минут на «Design Brief» (шаблон: `references/design-brief-template.md`):
17
- аудитория, задача экрана, 3 слова настроения, 1–2 референса, 1 анти-референс, палитра/пресет, шрифт, signature-деталь.
18
- 2. **Никогда не изобретай палитру и типографику с нуля**, если нет сильного бренд-контекста. Бери дизайн-кит:
19
- `assets/kit/` — токены, компоненты, 5 пресетов, локальные шрифты. Адаптируй только акцент/шрифт под бренд.
20
- 3. **Только токены, никаких магических чисел.** Цвета/отступы/радиусы/тени/типографика — из `assets/kit/assets/css/tokens.css`
21
- (или скопируй переменные в проект). Один акцент + нейтрали + редкая тёплая деталь.
22
- 4. **Петля визуальной проверки обязательна.** Собрал → скриншоты 1440/768/390, light/dark → смотри глазами (`read_image`)
23
- → критика по рубрике (`references/critique-rubric.md`) → правки → снова скриншоты. **Минимум 2 итерации.**
24
- 5. **Гейт качества:** средний балл ≥ 4.4/5, ни один критерий < 4; axe без critical/serious; на 390px нет горизонтального
25
- скролла; тёмная тема проверена; first impression = «премиально», а не «шаблон».
26
- 6. **Отчёт с доказательствами:** скриншоты + краткое обоснование решений (почему такой пресет, шрифт, композиция) +
27
- что проверено. Без скриншотов работа не считается сданной.
28
-
29
- ## 1. ПРОЦЕСС (7 шагов)
30
-
31
- ### Шаг 1. Арт-направление (до кода)
32
- Выбери **один** пресет и адаптируй под задачу:
33
-
34
- | Пресет | Когда | Настроение | Display | Акцент |
35
- |---|---|---|---|---|
36
- | `aurora` | клиника, культура, премиум-сервис | тихая роскошь, тепло, доверие | Lora (serif) | изумруд `#0E6E5E` + медь |
37
- | `graphite` | продукт, SaaS, админки, дашборды | точность, плотность, технологичность | Unbounded | мята `#6EE7C8` / `#0E7C66` |
38
- | `editorial` | медиа, истории, бренд-лендинги | журнал, характер, крупная типографика | Lora | вермильон `#C8442A` |
39
- | `warm` | сервис для людей, образование, забота | человечность, мягкость, крем | Lora | терракота `#B85C38` |
40
- | `swiss` | корпоративный строгий, отчёты, B2B | дисциплина, сетка, контраст | Golos 700 | красный `#E0301E` |
41
-
42
- Заполни формулу: **3 прилагательных + 1 референс (что крадём) + 1 анти-референс (чего избегаем) + signature-деталь.**
43
- Signature-деталь — одна запоминающаяся вещь: крупные редакционные цифры, волосяные линии с «засечками», монограммы,
44
- печать/эмблема, номерные секции, тонкая бумажная текстура, необычный ритм сетки. Ровно одна, не пять.
45
-
46
- Справочники: `references/principles.md` (76 правил ремесла с числами), `references/presets.md` (пресеты подробно),
47
- `references/inspiration.md` (32 референса: что украсть/что нет), `references/critique-rubric.md` (рубрика 12×5),
48
- `references/anti-patterns.md` (42 антипаттерна), `references/stack-recipes.md` (React/Laravel/Bitrix), `references/visual-qa.md`.
49
-
50
- ### Шаг 2. Токены
51
- Скопируй/подключи `assets/kit/assets/css/tokens.css`, `base.css`, `fonts.css`. Если проект уже имеет свою тему —
52
- **не ломай её**: замапий свои компоненты на существующие CSS-переменные, добавь недостающие токены, не перекрашивай всё.
53
- Проверь контраст: текст ≥ 4.5:1, крупный ≥ 3:1, фокус видимый.
54
-
55
- ### Шаг 3. Композиция (до деталей)
56
- - 12-колоночная сетка, контейнер 1200–1360px, gutter `clamp(20px, 4.5vw, 56px)`.
57
- - Hero: **асимметрия** 7/5 или 8/4. Kicker (капс 11–12px + линия) → display-H1 (`clamp(3rem, 7vw, 6rem)`) → lead (≤52ch) →
58
- 2 CTA (primary + secondary) → proof-строка (3–4 цифры/факта) → визуальный якорь (типографика/SVG/диаграмма, не сток-фото).
59
- - Ритм секций: чередуй фон (`bg` / `surface` / `bg-alt`), отступы `clamp(64px, 8vw, 128px)`, волосяные разделители.
60
- - Карточки — только когда элементов действительно несколько и они равнозначны. Не «стена из трёх одинаковых карточек с иконками».
61
- - Плотные данные (таблицы, дашборды): строгая сетка, tabular-nums, правые числа, sticky header, hairline-строки.
62
-
63
- ### Шаг 4. Сборка
64
- - Семантика: `header/nav/main/section/article/footer`, один `h1`, порядок заголовков, `lang="ru"`.
65
- - Компоненты — из `assets/kit/assets/css/components.css` или собери на тех же токенах. Каждый интерактивный элемент:
66
- default / hover / focus-visible / active / disabled / loading; формы — error + help + disabled.
67
- - Иконки — inline SVG, stroke 1.5–1.6, 20/24px, один набор. Никаких эмодзи в UI. У иконок-кнопок — `aria-label`.
68
- - Контент — живой, конкретный, на языке пользователя. Никаких «Lorem ipsum», «Инновационные решения», «Мы предлагаем».
69
-
70
- ### Шаг 5. Визуальная петля (главное!)
71
- ```
72
- node <skill>/assets/scripts/capture.mjs <file> --name <page> --out <outdir>
73
- node <skill>/assets/scripts/audit.mjs <file> --out <outdir>
74
- ```
75
- Смотри PNG через `read_image`, оценивай по `references/critique-rubric.md`, выписывай 5–10 конкретных правок
76
- (не «сделать красивее», а «H1 72→88px, уменьшить радиус карточек до 14, убрать тень у статичных карточек, добавить
77
- воздуха вокруг сетки направлений»). Правишь → переснимаешь. Повторяй, пока гейт не пройден. **Не сдавай первый вариант.**
78
-
79
- ### Шаг 6. Доступность и адаптив
80
- - 390px: нет горизонтального скролла; таблицы в `.table-wrap`; тач-цели ≥ 40–44px; ничего не обрезано.
81
- - Клавиатура: Tab-порядок, focus-visible, Escape закрывает модалки, aria-атрибуты.
82
- - `prefers-reduced-motion` — отключить reveal/hover-анимации.
83
- - Тёмная тема — отдельная палитра (не инверсия): фон глубже, акцент светлее, тени сильнее, контраст AA.
84
-
85
- ### Шаг 7. Сдача
86
- Скриншоты (desktop 1440 light/dark, mobile 390, ключевые состояния) + 3–5 строк rationale + как интегрировать
87
- (какие файлы/токены/классы переиспользовать). Приложи пути к PNG в отчёте.
88
-
89
- ## 2. РЫЧАГИ «ВАУ» (используй 3–5, не все сразу)
90
-
91
- 1. **Типографический контраст:** огромный serif-display + мелкий капс-лейбл с трекингом + спокойный body. 80% впечатления.
92
- 2. **Редакционная сетка:** асимметрия, номерные секции (01/02/03), волосяные линии, поля-воздух.
93
- 3. **Одна смелая деталь:** гигантская цифра/буква, эмблема, вертикальный текст, необычный разделитель — но одна.
94
- 4. **Материальность:** тёплая бумага, лёгкое зерно (2–3%), hairline-бордеры, слоистые тени, без «пластика».
95
- 5. **Точные данные:** SVG-графики, sparklines, таблицы с tabular-nums, моно-цифры — выглядят дорого.
96
- 6. **Микродетали:** offset у подчёркиваний, selection-цвет, аккуратный скроллбар, фокус-кольцо, иконки 1.5px.
97
- 7. **Движение с достоинством:** reveal 700ms `cubic-bezier(.16,1,.3,1)`, stagger 60ms, hover 180ms; без bounce/parallax-цирка.
98
- 8. **Копирайт:** глаголы, конкретика, числа, польза. Заголовок должен продавать результат, а не описывать отдел.
99
-
100
- ## 3. АНТИПАТТЕРНЫ (мгновенно убивают «дорого»)
101
-
102
- Фиолетово-синие градиенты · 3 одинаковые карточки с иконками · glassmorphism на каждом блоке · эмодзи вместо иконок ·
103
- радиусы 24–32px у всего · дефолтный Bootstrap/Shadcn-вид без характера · центрированный hero с «блобами» ·
104
- gradient-text на заголовках · серый текст с контрастом < 4.5 · несогласованные отступы (13/17/22px) · тени «как в 2010» ·
105
- стоковые улыбающиеся люди · перегруз бейджами/иконками · анимации ради анимаций · «Lorem ipsum» · 16px-везде ·
106
- карточки с одинаковой иконкой-облачком · карусели, которые никто не листает · модалка на модалке.
107
-
108
- Полный список с заменами: `references/anti-patterns.md`.
109
-
110
- ## 4. СТЕКИ (не изобретай заново)
111
-
112
- - **React + Tailwind/Vite:** токены — CSS-переменные в `:root`; Tailwind `@theme` маппится на них; компоненты — в одном
113
- `components/ui`, состояния через `data-state`; скриншоты через `npm run dev` + capture. Подробнее: `references/stack-recipes.md`.
114
- - **Laravel Blade:** `resources/views/layouts/app.blade.php` + partials (`components/button.blade.php` и т.п.);
115
- токены — `resources/css/tokens.css`; не ломай существующие классы; проверяй `npm run build`.
116
- - **Bitrix/Aspro:** правки — в `local/templates/<template>/` и `custom.css`/`init.php`, не в ядре и не в маркетплейс-шаблоне;
117
- стили скоупить под контейнер страницы; после правок чистить кэш CSS (`/bitrix/cache/css/...`); проверять на живой странице.
118
-
119
- Подробные рецепты и подводные камни: `references/stack-recipes.md`.
120
-
121
- ## 5. ЧТО ЛЕЖИТ В КИТЕ
122
-
123
- ```
124
- assets/kit/
125
- showcase.html — витрина системы: палитры, типографика, компоненты, состояния, пресеты
126
- pages/hospital.html — эталон: премиальный лендинг клиники (aurora)
127
- pages/dashboard.html — эталон: продуктовый дашборд (graphite, light/dark)
128
- assets/css/ — tokens.css, base.css, fonts.css, components.css
129
- assets/js/kit.js — тема/пресет, reveal, tabs, modal
130
- assets/fonts/ — Golos Text, Lora, Unbounded (OFL, локально)
131
- assets/scripts/
132
- capture.mjs — скриншоты (desktop/tablet/mobile, light/dark, full page)
133
- audit.mjs — axe-core + overflow/tap-target/шрифты/консоль
134
- ```
135
- Как использовать: открой `showcase.html` для эталона; скопируй `tokens.css`/`base.css`/`fonts.css`/`components.css`
136
- и нужные паттерны страниц в проект; если проекта нет — начни с эталонной страницы, замени контент и бренд-акцент.
137
-
138
- ## 6. ПРОВЕРКА ПЕРЕД СДАЧЕЙ (чек-лист)
139
-
140
- - [ ] Арт-направление зафиксировано (пресет, 3 слова, референс, signature-деталь).
141
- - [ ] Первый экран читается за 5 секунд: понятно, что это, для кого и что делать.
142
- - [ ] Иерархия: 1 главный акцент на экран; взгляд идёт по нужному маршруту.
143
- - [ ] Типографика: display/body/лейблы различимы, строка 60–72ch, числа табличные.
144
- - [ ] Воздух: секции дышат, сетка выровнена, ничего не «прилипло».
145
- - [ ] Состояния всех интерактивных элементов; формы с ошибками и подсказками.
146
- - [ ] Мобильный 390px, планшет 768px, десктоп 1440px — проверены скриншотами.
147
- - [ ] Тёмная тема — отдельная палитра, контраст AA.
148
- - [ ] axe: critical/serious = 0; keyboard/focus проверены.
149
- - [ ] Нет ни одного пункта из антипаттернов.
150
- - [ ] Скриншоты приложены, рубрика ≥ 4.4/5 и ни один критерий < 4.
151
-
152
- ## 7. ЕСЛИ ЗАДАЧА — «ПРОСТО ПОПРАВИТЬ» СУЩЕСТВУЮЩИЙ UI
153
-
154
- Не переписывай всё. Сначала загрузи `design-critique`, сними скриншоты «до», оцени по рубрике, исправь
155
- **P0-проблемы** (иерархия, контраст, поломки адаптива, состояния), затем P1-полировку. Покажи «до/после».
156
- Сохраняй существующие классы/структуру, если проект чужой; правки — минимальные и локальные.
157
-
158
- ## 8. ОТЧЁТ (шаблон)
159
-
160
- ```
161
- ## Дизайн: <страница/компонент>
162
- Арт-направление: <пресет>, <3 слова>, signature: <деталь>
163
- Что сделано: <3–6 пунктов>
164
- Скриншоты: <пути>
165
- Рубрика: <средний балл>, слабые места: <...>
166
- Проверено: 1440/768/390, light/dark, axe (critical=0), keyboard
167
- Риски/что дальше: <...>
168
- ```
10
+ > Дорого и уместно с первого раза. Красота = ясность, иерархия, доверие; ВАУ без потери удобства.
11
+
12
+ ## Контракт
13
+ 1. **Арт-бриф до кода** (5–10 мин): аудитория, задача, 3 слова, 1–2 референса, анти-референс, пресет,
14
+ signature-деталь. Шаблон — `references/design-brief-template.md`.
15
+ 2. **Кит AURORA**, не палитра с нуля: 5 пресетов, локальные Golos Text / Lora / Unbounded,
16
+ `assets/kit/assets/css/tokens.css`, `base.css`, `fonts.css`, `components.css`; бренд — только
17
+ `--accent*` и шрифт;
18
+ без CDN и внешних картинок.
19
+ 3. **Только токены**, без 13/17/22px.
20
+ 4. **Петля:** capture → `read_image` → рубрика → 5–10 правок с числами → capture;
21
+ **≥2 итерации, первый вариант не сдаётся**.
22
+ 5. **Гейт:** рубрика ≥4.4/5 и все ≥4; axe 0 critical/serious; 390 без overflow; light/dark; клавиатура.
23
+ 6. **Отчёт:** скриншоты + rationale.
24
+
25
+ ## Бриф и пресет
26
+ `aurora` клиника/премиум — Lora, изумруд+медь · `graphite` SaaS/дашборд — Unbounded, мята ·
27
+ `editorial` медиа — Lora, вермильон · `warm` забота — Lora, терракота · `swiss` B2B — Golos 700, красный.
28
+ Signature — ровно одна: цифры, номерные секции, монограмма, вертикальный лейбл, необычный
29
+ разделитель, зерно.
30
+ Палитры и do/don't — `references/quick-presets.md`.
31
+
32
+ ## Процесс
33
+ 1. Бриф.
34
+ 2. Токены; в чужой теме замапь переменные и добавь недостающие, не перекрашивай всё;
35
+ контраст 4.5:1 (крупный 3:1), фокус видим.
36
+ 3. Сетка 12, контейнер 1200–1360; hero 7/5–8/4: kicker (капс 11–12px) → H1 `clamp(3rem,7vw,6rem)` →
37
+ lead ≤52ch → 2 CTA → 3–4 факта → типографический якорь (типографика/SVG, не сток-фото);
38
+ секции `clamp(64px,8vw,128px)`, hairline; карточки — только для равнозначных; данные —
39
+ tabular-nums, правые числа.
40
+ 4. Семантика, один `h1`, `lang="ru"`; 7 состояний, формы с error + help; иконки SVG 1.5–1.6,
41
+ у кнопок-иконок `aria-label`; без эмодзи и Lorem.
42
+ 5. `node ~/.dsh/skills/wow-design/assets/scripts/capture.mjs <file> --name <page> --out <dir>`;
43
+ `.../audit.mjs <file> --out <dir>`; правки до гейта.
44
+ 6. 390: `.table-wrap`, тапы 40–44; Tab/Escape/focus, focus trap в модалках, alt; reduced-motion;
45
+ dark — отдельная палитра, AA.
46
+ 7. Сдача: 1440/768/390 light/dark + rationale.
47
+
48
+ Числа ремесла (шкала, строка, тени, радиусы, motion, состояния) — `references/principles.md`.
49
+
50
+ ## Рычаги и антипаттерны
51
+ 3–5 из 8: типоконтраст, редакционная сетка, одна смелая деталь, материальность, точные данные,
52
+ микродетали, движение, копирайт-результат; детали — `references/wow-levers.md`.
53
+ Запрещено: фиолетовые градиенты, 3 одинаковые карточки, glassmorphism, эмодзи, радиусы 24–32,
54
+ Bootstrap/Shadcn-дефолт, центрированный hero с блобами, gradient-text, контраст <4.5, стоковые фото,
55
+ карусели. Полные 42 — `references/anti-patterns.md`.
56
+
57
+ ## Стеки
58
+ React+Tailwind: CSS-переменные, `@theme`, `data-state`. Laravel: `tokens.css`, не ломать `old()`.
59
+ Bitrix: только `local/`, чистка кэша. Рецепты — `references/stack-recipes.md`.
60
+
61
+ ## Нужно → файл → ≈токенов
62
+ | Нужно | Файл | ≈токенов |
63
+ |---|---|---|
64
+ | Бриф | `design-brief-template.md` | 0.9k |
65
+ | Пресеты | `quick-presets.md` / `presets.md` | 1.6k / 2.7k |
66
+ | 76 правил | `principles.md` | 11.5k |
67
+ | Рубрика | `critique-rubric.md` | 7.4k |
68
+ | Антипаттерны | `anti-patterns.md` | 9k |
69
+ | Референсы | `inspiration.md` | 7.9k |
70
+ | Стеки | `stack-recipes.md` | 2.3k |
71
+ | Visual QA | `visual-qa.md` | 1.7k |
72
+ | Рычаги | `wow-levers.md` | 1k |
73
+ | Отчёт | `report-template.md` | 0.4k |
74
+
75
+ Кит — `assets/kit/` (`showcase.html`, `pages/hospital.html`, `pages/dashboard.html`); нет проекта —
76
+ начни с эталонной страницы.
77
+
78
+ ## Гейт
79
+ - [ ] Бриф и signature.
80
+ - [ ] 5 секунд: что это и куда нажать; один акцент.
81
+ - [ ] Типографика 60–72ch, tabular-nums; состояния, формы, empty/loading.
82
+ - [ ] Скриншоты 1440/768/390, light/dark.
83
+ - [ ] 390: overflow 0, тапы 40–44, ничего не обрезано.
84
+ - [ ] Dark — отдельная палитра, AA.
85
+ - [ ] Axe 0 critical/serious; клавиатура.
86
+ - [ ] Рубрика ≥4.4, все ≥4; антипаттернов нет.
87
+
88
+ Правка чужого UI — сначала `design-critique`, «до», P0→P1, минимальные правки, «до/после».
89
+ Отчёт — `references/report-template.md`.
@@ -1,5 +1,8 @@
1
1
  # 03 · Антипаттерны «ИИ-дизайна» — 42 штуки
2
2
 
3
+ > Часть навыка wow-design. ≈9k токенов. Читать, когда: проверяешь интерфейс на «AI-slop» или ищешь
4
+ > замену запрещённому приёму.
5
+
3
6
  > Это не «невкусные приёмы», а маркеры, по которым интерфейс за 2 секунды опознаётся как
4
7
  > сгенерированный. Задача документа — не просто запретить, а **чем заменить** (с конкретными
5
8
  > значениями/токенами AURORA). Формат: как выглядит → почему плохо → чем заменить.
@@ -1,5 +1,8 @@
1
1
  # 04 · Рубрика критики UI — 12 критериев × 5 уровней
2
2
 
3
+ > Часть навыка wow-design. ≈7.4k токенов. Читать, когда: оцениваешь UI по 12 критериям и нужны
4
+ > дескрипторы уровней, веса, подсчёт и шаблон отчёта.
5
+
3
6
  > Инструмент для петли «скриншот → критика → правки → скриншот». Оцениваем **глазами по скриншоту**,
4
7
  > а не по коду. Шкала 1–5, веса, порог **4.4/5**, ни один критерий **не ниже 4**. Ниже 4.4 — не сдано.
5
8
  >
@@ -1,5 +1,7 @@
1
1
  # Шаблон Design Brief (заполняется до кода)
2
2
 
3
+ > Часть навыка wow-design. ≈0.9k токенов. Читать, когда: заполняешь арт-брифинг до кода.
4
+
3
5
  > 5–10 минут. Без него не начинай вёрстку. Заполнять можно прямо в ответе пользователю или в файле проекта
4
6
  > `docs/design-brief.md`.
5
7
 
@@ -1,5 +1,8 @@
1
1
  # 02 · Референсы — 32 сайта с разбором
2
2
 
3
+ > Часть навыка wow-design. ≈7.9k токенов. Читать, когда: выбираешь референс под задачу и приём
4
+ > для арт-брифа.
5
+
3
6
  > Как пользоваться: крадём **приём, пропорции, паттерн, тон** — не внешний вид целиком.
4
7
  > Каждая карточка: что именно украсть → какая фишка → что НЕ копировать. Тег `→ пресет`
5
8
  > показывает, в какой палитре AURORA приём раскроется лучше всего.
@@ -1,5 +1,8 @@
1
1
  # Пресеты AURORA — как выбрать и как настроить
2
2
 
3
+ > Часть навыка wow-design. ≈2.7k токенов. Читать, когда: выбираешь пресет и настраиваешь
4
+ > палитру/композицию под бренд.
5
+
3
6
  > Все пресеты уже реализованы в `assets/kit/assets/css/tokens.css`: переключаются атрибутом
4
7
  > `<html data-preset="...">`, тема — `<html data-theme="light|dark">`.
5
8
  > Не создавай новый визуальный язык без причины — выбери пресет и адаптируй акцент/шрифт под бренд.
@@ -1,5 +1,8 @@
1
1
  # 01 · Принципы ремесла — 76 правил
2
2
 
3
+ > Часть навыка wow-design. ≈11.5k токенов. Читать, когда: нужны точные числа ремесла — сетка,
4
+ > типографика, цвет, тени, motion, состояния, адаптив, доступность.
5
+
3
6
  > Рабочий документ для системы WOW-дизайна (DSH). Читать перед вёрсткой и во время критики.
4
7
  > Каждое правило — **что делать → как → типичная ошибка**. Все значения совместимы с токенами
5
8
  > AURORA (`assets/kit/assets/css/tokens.css`): отступы `--sp-*`, типографика `--text-*`,
@@ -0,0 +1,50 @@
1
+ # Пресеты AURORA — выбор за 60 секунд
2
+
3
+ > Часть навыка wow-design. ≈1.6k токенов. Читать, когда: выбираешь пресет под задачу или нужны
4
+ > палитры light/dark, шрифты, формы и do/don't без чтения полного `presets.md`.
5
+
6
+ ## Как выбрать
7
+ 1. Кто пользователь и что важнее: доверие / скорость / плотность / эмоция / статус?
8
+ 2. Это бренд-история (лендинг, клиника, культура) или рабочий инструмент (дашборд, кабинет)?
9
+ 3. Есть бренд-цвета? Акцент берём из бренда, остальное — из ближайшего пресета.
10
+ 4. Нужна тёмная тема по умолчанию (продукт, DevOps)? → `graphite`.
11
+
12
+ ## Пять пресетов
13
+
14
+ | Пресет | Когда | Настроение | Light | Dark | Display / body |
15
+ |---|---|---|---|---|---|
16
+ | `aurora` | клиника, wellness, премиум, культура | тихая роскошь, тепло, доверие | бумага `#F4F1EA`, изумруд `#0E6E5E`, медь `#B36A43`, линии `#DCD6CA` | фон `#0B0F0F`, поверхность `#121718`, мята `#5AD2B7`, медь `#E09A70` | Lora 500 / Golos Text |
17
+ | `graphite` | SaaS, дашборд, админка, Service Desk | точность, плотность, контроль | фон `#F4F6F5`, акцент `#0E7C66`, чернила `#0F1414` | фон `#080B0B`, поверхность `#0F1414`, мята `#6EE7C8`, линии `#1F2926` | Unbounded (1–2 места) / Golos Text |
18
+ | `editorial` | медиа, истории, бренд-лендинг | журнал, характер, смелость | бумага `#F8F5EF`, вермильон `#C8442A`, чернила `#171310` | фон `#121110`, поверхность `#1A1613`, коралл `#F06A4D` | Lora крупно / Golos Text |
19
+ | `warm` | забота, образование, соцпроекты | человечность, мягкость, крем | крем `#FBF5EC`, терракота `#B85C38`, шалфей `#6C7A5B` | фон `#14100D`, поверхность `#1D1712`, акцент `#E8835C` | Lora / Golos Text |
20
+ | `swiss` | B2B, банки, госуслуги, отчёты | дисциплина, сетка, контраст | белый `#FFFFFF`, чёрный `#0E0E0E`, красный `#E0301E` | фон `#0D0D0D`, поверхность `#151515`, акцент `#FF5B47` | Golos Text 700 / Golos Text |
21
+
22
+ ## Формы и signature
23
+ - **aurora:** радиусы карточек 14px, контролов 10px; крупные редакционные цифры, печать/эмблема,
24
+ монограммы вместо фото, капс-надзаголовки с линией, бумажная текстура.
25
+ - **graphite:** радиусы 4–11px, границы вместо теней; KPI с дельтой и sparkline, sticky-таблица,
26
+ командная строка ⌘K, статус-точки, сайдбар 240–260px, топбар 64px.
27
+ - **editorial:** радиусы 2–5px, жирные волосяные линии; гигантские заголовки, номерные рубрики,
28
+ drop cap, цитаты на всю ширину, асимметричные блоки.
29
+ - **warm:** радиусы 12–24px осознанно; мягкие плашки, рукописные подчёркивания SVG, эмпатичные
30
+ цитаты, «шаги» с крупными номерами.
31
+ - **swiss:** радиусы 1–4px, жёсткая сетка; толстые линии-разделители, номера секций, таблицы,
32
+ красный только на действиях и статусах.
33
+
34
+ ## Do / Don't
35
+ - **aurora:** воздух, спокойный тон, один изумрудный акцент; медь только в деталях. Нельзя: яркие
36
+ градиенты, неон, стоковые врачи, «медицинский синий» по умолчанию.
37
+ - **graphite:** данные прежде декора, состояния всего, читаемые таблицы. Нельзя: огромные радиусы,
38
+ карточки ради карточек, тени поверх данных, пестрота статусов.
39
+ - **editorial:** контраст масштабов, строгая сетка, крупные отступы. Нельзя: мелкие заголовки,
40
+ SaaS-карточки, пастель, всё центрировать.
41
+ - **warm:** дружелюбный copy, округлость, тёплый фон. Нельзя: корпоративный холод, острые углы,
42
+ кислотные цвета, перегруз данными.
43
+ - **swiss:** сетка, монохром + один красный, крупные поля, читаемые таблицы. Нельзя: декор, тени,
44
+ мягкие радиусы, пастель, игривые иллюстрации.
45
+
46
+ ## Адаптация под бренд
47
+ Меняй только переменные акцента, остальное — из пресета:
48
+ `--accent`, `--accent-hover`, `--accent-press`, `--accent-soft`, `--accent-ink`, `--accent-contrast`.
49
+ Контраст `--accent` ↔ `--accent-contrast` ≥ 4.5:1; `--accent-soft` — фон бейджей/подсветок,
50
+ текст на нём — `--accent-ink`; акцент — только действия/статусы/линии, не большие заливки.