跳到主要內容

皮膚與主題

皮膚控制 Hermes CLI 的 視覺呈現:橫幅顏色、旋轉圖標和動詞、響應框標籤、品牌文本以及工具活動前綴。

對話風格與視覺風格是兩個獨立的概念:

  • 個性(Personality)改變 Agent 的語氣和措辭。
  • 皮膚(Skin)改變 CLI 的外觀。

更改皮膚

/skin                # 顯示當前皮膚並列出可用皮膚
/skin ares # 切換到內置皮膚
/skin mytheme # 從“0”切換到自定義皮膚

或在 ~/.hermes/config.yaml 中設置默認皮膚:

display:
skin: default

內置皮膚

皮膚描述Agent 品牌視覺特徵
default經典 Hermes — 金色與可愛風Hermes Agent溫暖的金色邊框,玉米絲綢色文字,旋轉圖標中使用可愛表情。熟悉的雙蛇杖橫幅。簡潔而親切。
ares戰神主題 — 深紅與青銅色Ares Agent深紅色邊框配青銅裝飾。旋轉動詞具有攻擊性(“鍛造”、“行軍”、“淬火”)。自定義劍與盾的 ASCII 藝術橫幅。
mono單色 — 簡潔灰度Hermes Agent全部為灰色 — 無顏色。邊框為 #555555,文字為 #c9d1d9。適合極簡終端環境或屏幕錄製。
slate冷藍色 — 開發者導向Hermes Agent皇家藍色邊框(#4169e1),柔和藍色文字。平靜而專業。不使用自定義旋轉圖標 — 使用默認表情。
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通用 UI 強調色(高亮、活躍元素)#FFBF00
ui_labelUI 標籤和標籤#4dd0e1(青綠色)
ui_ok成功指示(對勾、完成狀態)#4caf50(綠色)
ui_error錯誤指示(失敗、阻塞)#ef5350(紅色)
ui_warn警告指示(警告、確認提示)#ffa726(橙色)
prompt交互式提示文字顏色#FFF8DC
input_rule輸入區域上方的水平分隔線#CD7F32
response_borderAgent 響應框周圍的邊框(ANSI 轉義序列)#FFD700
session_label會話標籤顏色#DAA520
session_border會話 ID 淡化邊框顏色#8B8682

旋轉圖標(spinner:

控制等待 API 響應時顯示的動畫旋轉圖標。

類型描述示例
waiting_faces字符串列表等待 API 響應時循環的圖標["(⚔)", "(⛨)", "(▲)"]
thinking_faces字符串列表模型推理期間循環的圖標["(⚔)", "(⌁)", "(<>)"]
thinking_verbs字符串列表旋轉圖標消息中顯示的動詞["forging", "plotting", "hammering plans"]
wings[左, 右] 對列表旋轉圖標的裝飾性括號[["⟪⚔", "⚔⟫"], ["⟪▲", "▲⟫"]]

當旋轉圖標值為空時(如 defaultmono 皮膚),將使用 display.py 中的硬編碼默認值。

品牌(branding:

CLI 界面中使用的文本字符串。

描述默認值
agent_name橫幅標題和狀態顯示中顯示的名稱Hermes Agent
welcomeCLI 啟動時顯示的歡迎消息Welcome to Hermes Agent! Type your message or /help for commands.
goodbye退出時顯示的消息Goodbye! ⚕
response_label響應框標題上的標籤⚕ Hermes
prompt_symbol用戶輸入提示前的符號
help_header/help 命令輸出的標題文本(^_^)? Available Commands

其他頂層鍵

類型描述默認值
tool_prefixstringCLI 中工具輸出行前的前綴字符
tool_emojisdict各工具的進度指示器和進度條自定義表情符號(格式為 {tool_name: emoji}{}
banner_logostringRich 格式的 ASCII 藝術 Logo(替換默認的 HERMES_AGENT 標誌)""
banner_herostringRich 格式的英雄藝術圖(替換默認的蛇杖圖案)""

自定義皮膚

~/.hermes/skins/ 目錄下創建 YAML 文件。用戶皮膚會繼承內置 default 皮膚中缺失的值,因此你只需指定需要更改的鍵。

完整自定義皮膚 YAML 模板

# ~/.hermes/skins/mytheme.yaml
# 完整的皮膚模板 - 顯示所有按鍵。刪除不需要的;
# 缺失值自動從“0”皮膚繼承。

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"

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 表情符號覆蓋(可選)
tool_emojis:
terminal: "⚔"
web_search: "🔮"
read_file: "📄"

# 自定義 ASCII 藝術橫幅(可選,支持 Rich 標記)
# 橫幅標誌:|
# [粗體 #FFD700] 我的 AGENT [/]
# 橫幅英雄: |
# [#FFD700] 這裡是自定義藝術 [/]

最小化自定義皮膚示例

由於所有內容均繼承自 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 是社區開發的 Web UI,用於可視化創建和管理皮膚。無需手動編寫 YAML,你將獲得一個點選式編輯器並支持實時預覽。

Hermes Mod 皮膚編輯器

功能說明:

  • 列出所有內置和自定義皮膚
  • 將任意皮膚打開為可視化編輯器,包含所有 Hermes 皮膚字段(顏色、進度指示器、品牌標識、工具前綴、工具表情符號)
  • 根據文本提示生成 banner_logo 文本藝術
  • 將上傳的圖像(PNG、JPG、GIF、WEBP)轉換為 banner_hero 的 ASCII 藝術,支持多種渲染風格(佈雷耶爾、ASCII 漸變、方塊、點陣)
  • 直接保存至 ~/.hermes/skins/
  • 通過更新 ~/.hermes/config.yaml 激活皮膚
  • 顯示生成的 YAML 內容和實時預覽

安裝

選項 1 — Pinokio(一鍵安裝):

pinokio.computer 上找到它並一鍵安裝。

選項 2 — npx(終端最快方式):

npx -y hermes-mod

選項 3 — 手動安裝:

git clone https://github.com/cocktailpeanut/hermes-mod.git
cd hermes-mod/app
npm install
npm start

使用方法

  1. 啟動應用(通過 Pinokio 或終端)。
  2. 打開 皮膚工作室
  3. 選擇一個內置或自定義皮膚進行編輯。
  4. 從文本生成 Logo,或上傳圖像作為英雄藝術。選擇渲染風格和寬度。
  5. 編輯顏色、進度指示器、品牌標識及其他字段。
  6. 點擊 保存,將皮膚 YAML 寫入 ~/.hermes/skins/
  7. 點擊 激活,將其設為當前皮膚(更新 config.yaml 中的 display.skin)。

Hermes Mod 支持 HERMES_HOME 環境變量,因此也適用於配置文件

操作說明

  • 內置皮膚從 hermes_cli/skin_engine.py 加載。
  • 未知皮膚會自動回退到 default
  • /skin 命令可立即更新當前會話的 CLI 主題。
  • ~/.hermes/skins/ 中的用戶皮膚優先於同名的內置皮膚。
  • 通過 /skin 進行的皮膚更改僅在當前會話有效。如需設為永久默認,需在 config.yaml 中設置。
  • banner_logobanner_hero 字段支持 Rich 控制檯標記(例如 [bold #FF0000]text[/]),用於彩色 ASCII 藝術。