Skins
На этой странице
Скины управляют визуальным представлением CLI Hermes: цвета баннера, лица и глаголы спиннера, подписи блоков ответов, брендинговый текст и префикс активности инструментов.
Разговорный стиль и визуальный стиль — это разные концепции: * Личность (Personality) меняет тон и формулировки агента. * Скин (Skin) меняет внешний вид CLI.
Смена скинов¶
/skin # показать текущий скин и список доступных скинов
/skin ares # переключиться на встроенный скин
/skin mytheme # переключиться на пользовательский скин из ~/.hermes/skins/mytheme.yaml
Или установите скин по умолчанию в ~/.hermes/config.yaml:
Встроенные скины¶
| Скин | Описание | Брендинг агента | Визуальный характер |
|---|---|---|---|
default |
Классический Hermes — золотой и милый | Hermes Agent |
Тёплые золотые границы, текст цвета кукурузного шёлка, милые лица в спиннерах. Знакомый баннер с кадуцеем. Чистый и привлекательный. |
ares |
Тема бога войны — багровый и бронзовый | Ares Agent |
Глубокие багровые границы с бронзовыми акцентами. Агрессивные глаголы спиннера («куёт», «марширует», «закаляет сталь»). Пользовательский ASCII-арт баннера с мечом и щитом. |
mono |
Монохромный — чистый оттенки серого | Hermes Agent |
Всё в серых тонах — без цвета. Границы #555555, текст #c9d1d9. Идеально для минималистичных терминалов или записи экрана. |
slate |
Холодный синий — для разработчиков | Hermes Agent |
Границы королевского синего (#4169e1), мягкий синий текст. Спокойный и профессиональный. Без собственного спиннера — используются стандартные лица. |
daylight |
Светлая тема для ярких терминалов с тёмным текстом и холодными синими акцентами | Hermes Agent |
Разработана для белых или ярких терминалов. Тёмно-серый текст с синими границами, бледные поверхности статуса и светлое меню автодополнения, которое остаётся читаемым в светлых профилях терминала. |
warm-lightmode |
Тёплая коричнево-золотая тема для светлых фонов терминала | Hermes Agent |
Тёплые тона пергамента для светлых терминалов. Тёмно-коричневый текст с акцентами цвета седла, кремовые поверхности статуса. Землистая альтернатива более холодной теме daylight. |
poseidon |
Тема бога океана — глубокий синий и морская пена | Poseidon Agent |
Градиент от глубокого синего до цвета морской пены. Спиннеры на морскую тематику («прокладывает курс», «измеряет глубину»). ASCII-арт баннера с трезубцем. |
sisyphus |
Тема Сизифа — строгие оттенки серого с настойчивостью | Sisyphus Agent |
Светло-серые тона с резким контрастом. Спиннеры на тему валуна («толкает в гору», «перекатывает валун», «выносит цикл»). ASCII-арт баннера с валуном и холмом. |
charizard |
Вулканическая тема — жжёный оранжевый и искры | Charizard Agent |
Тёплый градиент от жжёного оранжевого до искр. Спиннеры на тему огня («заходит на вираж», «измеряет нагрев»). ASCII-арт баннера с силуэтом дракона. |
Полный список настраиваемых ключей¶
Цвета (colors:)¶
Управляет всеми цветовыми значениями в CLI. Значения — шестнадцатеричные строки цветов.
| Ключ | Описание | По умолчанию (скин default) |
|---|---|---|
banner_border |
Граница панели стартового баннера | #CD7F32 (бронза) |
banner_title |
Цвет текста заголовка в баннере | #FFD700 (золото) |
banner_accent |
Заголовки разделов в баннере (Доступные инструменты и т.д.) | #FFBF00 (янтарь) |
banner_dim |
Приглушённый текст в баннере (разделители, второстепенные метки) | #B8860B (тёмная золотарник) |
banner_text |
Основной текст в баннере (имена инструментов, имена навыков) | #FFF8DC (кукурузный шёлк) |
ui_accent |
Основной акцентный цвет интерфейса (подсветка, активные элементы) | #FFBF00 |
ui_label |
Метки и теги интерфейса | #4dd0e1 (бирюзовый) |
ui_ok |
Индикаторы успеха (галочки, завершение) | #4caf50 (зелёный) |
ui_error |
Индикаторы ошибок (сбои, блокировки) | #ef5350 (красный) |
ui_warn |
Индикаторы предупреждений (осторожно, запросы подтверждения) | #ffa726 (оранжевый) |
prompt |
Цвет текста интерактивного приглашения | #FFF8DC |
input_rule |
Горизонтальная линия над областью ввода | #CD7F32 |
response_border |
Граница вокруг блока ответа агента (ANSI-escape) | #FFD700 |
session_label |
Цвет метки сессии | #DAA520 |
session_border |
Цвет тусклой границы ID сессии | #8B8682 |
status_bar_bg |
Цвет фона панели статуса/использования TUI | #1a1a2e |
voice_status_bg |
Цвет фона значка статуса голосового режима | #1a1a2e |
completion_menu_bg |
Цвет фона списка меню автодополнения | #1a1a2e |
completion_menu_current_bg |
Цвет фона активной строки автодополнения | #333355 |
completion_menu_meta_bg |
Цвет фона колонки метаданных автодополнения | #1a1a2e |
completion_menu_meta_current_bg |
Цвет фона активной колонки метаданных автодополнения | #333355 |
Спиннер (spinner:)¶
Управляет анимированным спиннером, отображаемым во время ожидания ответов от API.
| Ключ | Тип | Описание | Пример |
|---|---|---|---|
waiting_faces |
список строк | Лица, сменяемые в цикле при ожидании ответа API | ["(⚔)", "(⛨)", "(▲)"] |
thinking_faces |
список строк | Лица, сменяемые в цикле во время рассуждения модели | ["(⚔)", "(⌁)", "(<>)"] |
thinking_verbs |
список строк | Глаголы, отображаемые в сообщениях спиннера | ["forging", "plotting", "hammering plans"] |
wings |
список пар [левая, правая] | Декоративные скобки вокруг спиннера | [["⟪⚔", "⚔⟫"], ["⟪▲", "▲⟫"]] |
Когда значения спиннера пусты (как в default и mono), используются жёстко заданные значения по умолчанию из display.py.
Брендинг (branding:)¶
Текстовые строки, используемые в интерфейсе CLI.
| Ключ | Описание | По умолчанию |
|---|---|---|
agent_name |
Имя, отображаемое в заголовке баннера и панели статуса | Hermes Agent |
welcome |
Приветственное сообщение при запуске CLI | Welcome to Hermes Agent! Type your message or /help for commands. |
goodbye |
Сообщение при выходе | Goodbye! ⚕ |
response_label |
Метка на заголовке блока ответа | ⚕ Hermes |
prompt_symbol |
Символ перед приглашением ввода пользователя (простой токен, рендереры добавляют пробел в конце) | ❯ |
help_header |
Текст заголовка для вывода команды /help |
(^_^)? Available Commands |
Другие ключи верхнего уровня¶
| Ключ | Тип | Описание | По умолчанию |
|---|---|---|---|
tool_prefix |
строка | Символ, добавляемый перед строками вывода инструментов в CLI | ┊ |
tool_emojis |
словарь | Переопределения эмодзи для отдельных инструментов в спиннерах и прогрессе ({имя_инструмента: эмодзи}) |
{} |
banner_logo |
строка | ASCII-арт логотип в разметке Rich (заменяет стандартный баннер HERMES_AGENT) | "" |
banner_hero |
строка | Героический ASCII-арт в разметке Rich (заменяет стандартный арт с кадуцеем) | "" |
Пользовательские скины¶
Создавайте YAML-файлы в каталоге ~/.hermes/skins/. Пользовательские скины наследуют отсутствующие значения от встроенного скина default, поэтому вам нужно указать только те ключи, которые вы хотите изменить.
Полный шаблон пользовательского скина YAML¶
# ~/.hermes/skins/mytheme.yaml
# Полный шаблон скина — показаны все ключи. Удалите те, что не нужны;
# отсутствующие значения автоматически наследуются от скина 'default'.
name: mytheme
description: My custom theme
colors:
banner_border: "#CD7F32"
banner_title: "#FFD700"
banner_accent: "#FFBF00"
banner_dim: "#B8860B"
banner_text: "#FFF8DC"
ui_accent: "#FFBF00"
ui_label: "#4dd0e1"
ui_ok: "#4caf50"
ui_error: "#ef5350"
ui_warn: "#ffa726"
prompt: "#FFF8DC"
input_rule: "#CD7F32"
response_border: "#FFD700"
session_label: "#DAA520"
session_border: "#8B8682"
status_bar_bg: "#1a1a2e"
voice_status_bg: "#1a1a2e"
completion_menu_bg: "#1a1a2e"
completion_menu_current_bg: "#333355"
completion_menu_meta_bg: "#1a1a2e"
completion_menu_meta_current_bg: "#333355"
spinner:
waiting_faces:
- "(⚔)"
- "(⛨)"
- "(▲)"
thinking_faces:
- "(⚔)"
- "(⌁)"
- "(<>)"
thinking_verbs:
- "processing"
- "analyzing"
- "computing"
- "evaluating"
wings:
- ["⟪⚡", "⚡⟫"]
- ["⟪●", "●⟫"]
branding:
agent_name: "My Agent"
welcome: "Welcome to My Agent! Type your message or /help for commands."
goodbye: "See you later! ⚡"
response_label: " ⚡ My Agent "
prompt_symbol: "⚡"
help_header: "(⚡) Available Commands"
tool_prefix: "┊"
# Переопределения эмодзи для отдельных инструментов (опционально)
tool_emojis:
terminal: "⚔"
web_search: "🔮"
read_file: "📄"
# Пользовательские ASCII-арт баннеры (опционально, поддерживается разметка Rich)
# banner_logo: |
# [bold #FFD700] MY AGENT [/]
# banner_hero: |
# [#FFD700] Custom art here [/]
Минимальный пример пользовательского скина¶
Поскольку всё наследуется от default, минимальный скин требует изменений только того, что отличается:
name: cyberpunk
description: Neon terminal theme
colors:
banner_border: "#FF00FF"
banner_title: "#00FFFF"
banner_accent: "#FF1493"
spinner:
thinking_verbs: ["jacking in", "decrypting", "uploading"]
wings:
- ["⟨⚡", "⚡⟩"]
branding:
agent_name: "Cyber Agent"
response_label: " ⚡ Cyber "
tool_prefix: "▏"
Hermes Mod — Визуальный редактор скинов¶
Hermes Mod — это созданный сообществом веб-интерфейс для визуального создания и управления скинами. Вместо написания YAML вручную вы получаете редактор с нажатием и выбором и живым предпросмотром.
Редактор скинов Hermes Mod
Что он делает:
* Показывает все встроенные и пользовательские скины
* Открывает любой скин в визуальном редакторе со всеми полями скинов Hermes (цвета, спиннер, брендинг, префикс инструментов, эмодзи инструментов)
* Генерирует текстовый арт banner_logo из текстового запроса
* Конвертирует загруженные изображения (PNG, JPG, GIF, WEBP) в ASCII-арт banner_hero с несколькими стилями рендеринга (шрифт Брайля, ASCII-рампа, блоки, точки)
* Сохраняет напрямую в ~/.hermes/skins/
* Активирует скин обновлением ~/.hermes/config.yaml
* Показывает сгенерированный YAML и живой предпросмотр
Установка¶
Способ 1 — Pinokio (в 1 клик): Найдите его на pinokio.computer и установите одним нажатием.
Способ 2 — npx (самый быстрый из терминала):
Способ 3 — Вручную:
Использование¶
- Запустите приложение (через Pinokio или терминал).
- Откройте Skin Studio.
- Выберите встроенный или пользовательский скин для редактирования.
- Сгенерируйте логотип из текста и/или загрузите изображение для героического арта. Выберите стиль рендеринга и ширину.
- Отредактируйте цвета, спиннер, брендинг и другие поля.
- Нажмите Save, чтобы записать YAML скина в
~/.hermes/skins/. - Нажмите Activate, чтобы установить его как текущий скин (обновляет
display.skinвconfig.yaml).
Hermes Mod учитывает переменную окружения HERMES_HOME, поэтому он также работает с профилями.
Эксплуатационные заметки¶
- Встроенные скины загружаются из
hermes_cli/skin_engine.py. - Неизвестные скины автоматически возвращаются к
default. /skinнемедленно обновляет активную тему CLI для текущей сессии.- Пользовательские скины в
~/.hermes/skins/имеют приоритет над встроенными скинами с тем же именем. - Изменения скина через
/skinдействуют только в рамках сессии. Чтобы сделать скин постоянным по умолчанию, установите его вconfig.yaml. -
Поля
banner_logoиbanner_heroподдерживают разметку Rich console (например,[bold #FF0000]text[/]) для цветного ASCII-арта. - Встроенные скины
- Полный список настраиваемых ключей
- Цвета (
colors:) - Спиннер (
spinner:) - Брендинг (
branding:) - Другие ключи верхнего уровня
- Пользовательские скины
- Полный шаблон пользовательского скина YAML
- Минимальный пример пользовательского скина
- Hermes Mod — Визуальный редактор скинов
- Установка
- Использование
- Эксплуатационные заметки