🏠 Главная › user guide › creative concept diagrams
{/ Эта страница автоматически создается на основе файла SKILL.md навыка с помощью сайта site/scripts/generate-skill-docs.py. Редактируйте исходный код SKILL.md, а не эту страницу. /}
Концептуальные диаграммы
Создавайте плоские SVG-диаграммы с минимальным учетом света и темноты в виде отдельных HTML-файлов, используя единый образовательный визуальный язык с 9 семантическими цветовыми шкалами, типографикой с регистром предложений и автоматическим темным режимом. Лучше всего подходит для образовательных и непрограммных визуальных эффектов — физических установок, химических механизмов, математических кривых, физических объектов (самолетов, турбин, смартфонов, механических часов), анатомии, планов этажей, поперечных сечений, повествовательных путешествий (жизненный цикл X, процесс Y), системной интеграции узлов (умный город, IoT) и представлений с разнесенными слоями. Если для предмета существуют более специализированные навыки (специальное программное обеспечение/облачная архитектура, нарисованные от руки эскизы, анимированные пояснения и т. д.), отдайте предпочтение этому — в противном случае этот навык также может служить запасным вариантом SVG-диаграмм общего назначения с чистым образовательным видом. Поставляется с 15 примерами диаграмм.
Метаданные навыков
Источник
Необязательно — установите с помощью hermesskills installofficial/creative/concept-diagrams
Ниже приведено полное определение навыка, которое Гермес загружает при активации этого навыка. Это то, что агент видит в качестве инструкций, когда навык активен.
Концептуальные диаграммы
Создавайте SVG-диаграммы промышленного качества с помощью единой плоской системы минимального дизайна. Выходные данные представляют собой отдельный автономный HTML-файл, который одинаково отображается в любом современном браузере с автоматическим светлым/темным режимом.
Область применения
Наиболее подходит для:
- Физические установки, химические механизмы, математические кривые, биология.
- Физические объекты (самолеты, турбины, смартфоны, механические часы, аккумуляторы)
- Анатомия, поперечные сечения, виды слоев в разобранном виде.
- Планы этажей, архитектурные преобразования
- Повествовательные путешествия (жизненный цикл X, процесс Y)
- Интеграция узловых систем (умный город, сети IoT, электросети)
- Образовательные/учебные визуальные эффекты в любой области.
- Количественные диаграммы (сгруппированные столбцы, энергетические профили)
Сначала поищите в другом месте:
- Специализированное программное обеспечение/архитектура облачной инфраструктуры с эстетикой темных технологий (рассмотрите «схему архитектуры», если таковая имеется)
- Эскизы, нарисованные на доске (рассмотрите вариант excalidraw, если он доступен).
- Анимированные пояснения или вывод видео (учитывайте навыки анимации)
Если для данного предмета доступен более специализированный навык, отдайте предпочтение этому. Если ни один из них не подходит, этот навык может служить запасным вариантом SVG-диаграммы общего назначения — выходные данные будут нести чистую образовательную эстетику, описанную ниже, что является разумным по умолчанию практически для любого предмета.
Рабочий процесс
Определитесь с типом диаграммы (см. Типы диаграмм ниже).
Размещайте компоненты, используя правила системы проектирования.
Напишите полную HTML-страницу, используя в качестве оболочки templates/template.html — вставьте свой SVG туда, где в шаблоне написано <!-- ВСТАВЬТЕ SVG ЗДЕСЬ -->.
Сохраните как отдельный файл .html (например, ~/my-diagram.html или ./my-diagram.html).
Пользователь открывает его прямо в браузере — без сервера, без зависимостей.
Необязательно: если пользователю нужна просматриваемая галерея из нескольких диаграмм, см. «Локальный сервер предварительного просмотра» внизу.
В шаблон встроена полная система дизайна CSS (цветовые классы c-*, текстовые классы, светлые/темные переменные, стили маркеров стрелок). Создаваемый вами SVG зависит от присутствия этих классов на странице хостинга.
Система дизайна
Философия
Плоский: без градиентов, теней, размытия, свечения или неоновых эффектов.
Минимальный: покажите самое важное. Никаких декоративных иконок внутри коробок.
Постоянство: одинаковые цвета, интервалы, типографика и ширина обводки на каждой диаграмме.
Готовность к темному режиму: все цвета автоматически адаптируются с помощью классов CSS — SVG для каждого режима не требуется.
Цветовая палитра
9 цветовых рамок, каждая по 7 ступеней. Поместите имя класса в <g> или элемент формы; CSS шаблона поддерживает оба режима.
Класс
50 (самый легкий)
100
200
400
600
800
900 (самый темный)
c-фиолетовый
#EEEDFE
#CECBF6
#AFA9EC
#7F77DD
#534AB7
#3C3489
#26215C
c-бирюзовый
#E1F5EE
#9FE1CB
#5DCAA5
#1D9E75
#0F6E56
#085041
#04342C
c-коралл
#FAECE7
#F5C4B3
#F0997B
#D85A30
#993C1D
#712B13
#4A1B0C
c-розовый
#FBEAF0
#F4C0D1
#ED93B1
#D4537E
#993556
#72243E
#4B1528
c-серый
#F1EFE8
#D3D1C7
#B4B2A9
#888780
#5F5E5A
#444441
#2C2C2A
c-синий
#E6F1FB
#B5D4F4
#85B7EB
#378ДОБАВИТЬ
#185FA5
#0C447C
#042C53
c-зеленый
#EAF3DE
#C0DD97
#97C459
#639922
#3B6D11
#27500А
#173404
c-янтарный
#ФАИДА
#FAC775
#EF9F27
#BA7517
#854F0B
#633806
#412402
c-красный
#FCEBEB
#F7C1C1
#F09595
#E24B4A
#A32D2D
#791F1F
#501313
Правила назначения цветов
Цвет кодирует значение, а не последовательность. Никогда не меняйте цвета, как радуга.
Группируйте узлы по категории — все узлы одного типа имеют один цвет.
Используйте «c-gray» для нейтральных/структурных узлов (начало, конец, общие шаги, пользователи).
– Используйте 2–3 цвета на диаграмме, а не 6+.
Для общих категорий отдавайте предпочтение цветам «c-фиолетовый», «c-бирюзовый», «c-коралловый», «c-розовый».
Зарезервируйте c-blue, c-green, c-amber, c-red для семантического значения (информация, успех, предупреждение, ошибка).
Всегда записывайте предложения по регистру. Ни в коем случае не в названии, ни в коем случае ЗАГЛАВНЫМИ БУКВАМИ.
Каждый <text> ДОЛЖЕН содержать класс (t, ts или th). Нет неклассифицированного текста.
dominant-baseline="central" для всего текста внутри полей.
text-anchor="middle" для центрированного текста в полях.
Оценка ширины (приблизительно):
- Вес 14 пикселей 500: ~8 пикселей на символ
- Вес 12 пикселей 400: ~6,5 пикселей на символ.
- Всегда проверяйте: box_width >= (char_count × px_per_char) + 48 (отступы по 24 пикселя с каждой стороны)
Интервал и макет
ViewBox: viewBox="0 0 680 H", где H = высота содержимого + буфер 40 пикселей.
Безопасная зона: от x=40 до x=640, от y=40 до y=(H-40).
– Между прямоугольниками: минимальный зазор 60 пикселей.
Внутри блоков: горизонтальное отступы 24 пикселя, вертикальное отступы 12 пикселей.
Зазор между стрелкой: 10 пикселей между стрелкой и краем рамки.
– Однострочное поле: высота 44 пикселя.
– Двухстрочный блок: высота 56 пикселей, расстояние между базовыми линиями заголовка и подзаголовка 18 пикселей.
– Отступы контейнера: минимум 20 пикселей внутри каждого контейнера.
Максимальная вложенность: глубина 2–3 уровня. Deeper становится нечитаемым при ширине 680 пикселей.
Обводка и форма
– Ширина обводки: 0,5 пикселя на всех границах узлов. Не 1 пиксель, не 2 пикселя.
- Округление прямоугольника: от rx="8" для узлов, от rx="12" для внутренних контейнеров, от rx="16" до rx="20" для внешних контейнеров.
- Пути соединителей: ДОЛЖНЫ иметь fill="none". В противном случае SVG по умолчанию использует «fill: black».
Блок-схема — конвейеры CI/CD, жизненные циклы запросов, рабочие процессы утверждения, обработка данных. Однонаправленный поток (сверху вниз или слева направо). Максимум 4-5 узлов в ряду.
Структурное/ограничение — вложенность облачной инфраструктуры, многоуровневая архитектура системы. Большие внешние контейнеры с внутренними областями. Пунктирные прямоугольники для логических группировок.
API/Карта конечных точек — маршруты REST, схемы GraphQL. Дерево от корня с разветвлением на группы ресурсов, каждая из которых содержит узлы конечных точек.
Топология микросервисов — Сервисная сетка, системы, управляемые событиями. Сервисы как узлы, стрелки для шаблонов связи, очереди сообщений между ними.
Поток данных — конвейеры ETL, потоковые архитектуры. Поток слева направо от источников через обработку к приемникам.
Физический/конструктивный — транспортные средства, здания, оборудование, анатомия. Используйте формы, соответствующие физической форме — <path> для изогнутых тел, <polygon> для конических форм, <ellipse>/<circle> для цилиндрических деталей, вложенный <rect> для отсеков. См. «ссылки/physical-shape-cookbook.md».
Инфраструктура/Системная интеграция — Умные города, сети IoT, многодоменные системы. Компоновка со ступичными спицами с центральной платформой, соединяющей подсистемы. Семантические стили линий (.data-line, .power-line, .water-pipe, .road). См. references/infrastructure-patterns.md.
Мокапы пользовательского интерфейса/дашборда — Панели администратора, панели мониторинга. Рамка экрана с вложенными элементами диаграммы/датчика/индикатора. См. references/dashboard-patterns.md.
Для физических диаграмм, схем инфраструктуры и информационных панелей перед созданием загрузите соответствующий справочный файл — каждый из них предоставляет готовые классы CSS и примитивы фигур.
Контрольный список проверки
Прежде чем завершить работу над любым SVG, проверьте ВСЕ следующее:
Каждый <text> имеет класс t, ts или th.
Каждый <text> внутри блока имеет dominant-baseline="central".
Каждый соединитель <path> или <line>, используемый в качестве стрелки, имеет fill="none".
Ни одна стрелка не пересекает несвязанный прямоугольник.
box_width >= (longest_label_chars × 8) + 48 для текста размером 14 пикселей.
box_width >= (longest_label_chars × 6,5) + 48 для текста размером 12 пикселей.
Высота ViewBox = самый нижний элемент + 40 пикселей.
Весь контент находится в пределах от x=40 до x=640.
Цветовые классы (c-*) находятся на <g> или элементах формы, но никогда на соединителях <path>.
Присутствует блок со стрелками <defs>.
Никаких градиентов, теней, размытия или эффектов свечения.
Ширина обводки — 0,5 пикселя по всем границам узла.
Вывод и предварительный просмотр
По умолчанию: отдельный HTML-файл.
Напишите один файл .html, который пользователь сможет открыть напрямую. Нет сервера, нет зависимостей, работает в автономном режиме. Шаблон:
# 1. Load the templatetemplate=skill_view("concept-diagrams","templates/template.html")# 2. Fill in title, subtitle, and paste your SVGhtml=template.replace("<!-- DIAGRAM TITLE HERE -->","SN2 reaction mechanism").replace("<!-- OPTIONAL SUBTITLE HERE -->","Bimolecular nucleophilic substitution").replace("<!-- PASTE SVG HERE -->",svg_content)# 3. Write to a user-chosen path (or./ by default)write_file("./sn2-mechanism.html",html)
Сообщите пользователю, как его открыть:
# macOS
open./sn2-mechanism.html
# Linux
xdg-open./sn2-mechanism.html
Используйте это только в том случае, если пользователю явно нужна просматриваемая галерея из нескольких диаграмм.
Правила:
- Привязка только к 127.0.0.1. Никогда 0.0.0.0. Публикация диаграмм на всех сетевых интерфейсах представляет угрозу безопасности в общих сетях.
- Выберите свободный порт (НЕ запрограммируйте его жестко) и сообщите пользователю выбранный URL-адрес.
- Сервер не является обязательным и требует согласия — сначала отдайте предпочтение автономному HTML-файлу.
# Put each diagram in its own folder under.diagrams/
mkdir-p.diagrams/sn2-mechanism
#...write.diagrams/sn2-mechanism/index.html...# Serve on loopback only, free port
cd.diagrams&&python3-c"import http.server, socketserverwith socketserver.TCPServer(('127.0.0.1', 0), http.server.SimpleHTTPRequestHandler) as s: print(f'Serving at http://127.0.0.1:{s.server_address[1]}/') s.serve_forever()"&
Если пользователь настаивает на фиксированном порте, используйте 127.0.0.1:<port> — но никогда не 0.0.0.0. Задокументируйте, как остановить сервер (kill %1 или pkill -f "http.server").
Примеры Справочник
В каталоге examples/ содержится 15 полных, проверенных диаграмм. Просмотрите их на предмет рабочих шаблонов, прежде чем писать новую диаграмму аналогичного типа:
Файл
Тип
Демонстрирует
больница-скорая помощь-отделение-flow.md
Блок-схема
Приоритетная маршрутизация с семантическими цветами
полнометражный-фильм-производство-pipeline.md
Блок-схема
Поэтапный рабочий процесс, горизонтальные подпотоки
automated-password-reset-flow.md
Блок-схема
Поток аутентификации с ветвями ошибок
автономный-llm-research-agent-flow.md
Блок-схема
Петлевые стрелки, ветви решений
place-order-uml-sequence.md
Последовательность
Стиль диаграммы последовательности UML
коммерческий-самолет-структура.md
Физический
Контуры, многоугольники, эллипсы для создания реалистичных фигур
ветер-турбина-структура.md
Физическое сечение
Разделение подземного и надземного пространства, цветовая маркировка
smartphone-layer-anatomy.md
Разобранный вид
Чередование левых и правых меток, многослойные компоненты
квартира-план-конверсия.md
План этажа
Стены, двери, предлагаемые изменения выделены красным пунктиром
банановое-путешествие-дерево-в-смузи.md
Сюжетное путешествие
Извилистый путь, прогрессивные изменения состояния