diff --git a/apps/docs/src/renderer/ai/AiPanel.tsx b/apps/docs/src/renderer/ai/AiPanel.tsx
index f27d6ce..85cbea9 100644
--- a/apps/docs/src/renderer/ai/AiPanel.tsx
+++ b/apps/docs/src/renderer/ai/AiPanel.tsx
@@ -24,7 +24,7 @@ import { createElectronTransport } from './transport'
import { useI18n, t as tModule, aiLangDirective, type StringKey } from '../i18n/locale'
import { Markdown } from '@hermesoffice/ui'
import { AiComposer, AiTypingIndicator } from '@hermesoffice/ui'
-import { GensparkMark } from '../components/icons'
+import { HermesMark } from '../components/icons'
import sendEnterOn from '../assets/send-enter-on.png'
import sendEnterOff from '../assets/send-enter-off.png'
import sendStop from '../assets/send-stop.png'
@@ -987,7 +987,7 @@ export function AiPanel({
aria-label={t('appExpandAiPanel')}
onClick={onExpand}
>
-
+
)
}
@@ -1018,7 +1018,7 @@ export function AiPanel({
/>
-
+
{t('aiPanelTitle')}
diff --git a/apps/docs/src/renderer/components/Ribbon.tsx b/apps/docs/src/renderer/components/Ribbon.tsx
index caf79f8..e863f85 100644
--- a/apps/docs/src/renderer/components/Ribbon.tsx
+++ b/apps/docs/src/renderer/components/Ribbon.tsx
@@ -73,7 +73,7 @@ import {
import { WRAP_OPTIONS } from './ContextMenu'
import { CropDialog, CutoutDialog } from './PictureDialogs'
import {
- GensparkMark,
+ HermesMark,
IconAlignCenter,
IconAlignJustify,
IconAlignLeft,
@@ -2737,7 +2737,7 @@ function RibbonInner({
) : tab === 'home' ? (
<>
- {/* ---- Genspark AI (first slot: entry + one-click AI actions) ---- */}
+ {/* ---- Hermes AI (first slot: entry + one-click AI actions) ---- */}
-
Genspark AI
+
Hermes AI
diff --git a/apps/docs/src/renderer/components/icons.tsx b/apps/docs/src/renderer/components/icons.tsx
index 30d33b1..4737281 100644
--- a/apps/docs/src/renderer/components/icons.tsx
+++ b/apps/docs/src/renderer/components/icons.tsx
@@ -1657,19 +1657,35 @@ export function IconClose(props: IconProps) {
/** Genspark brand mark (rounded-square sparkle badge), inline so it renders
* crisply at device resolution instead of going through
![]()
rasterization */
-export function GensparkMark({ size = 30 }: { size?: number }) {
+export function HermesMark({ size = 26 }: { size?: number }) {
return (
)
diff --git a/apps/docs/src/renderer/i18n/strings-ribbon.ts b/apps/docs/src/renderer/i18n/strings-ribbon.ts
index 4b87a58..b052ac3 100644
--- a/apps/docs/src/renderer/i18n/strings-ribbon.ts
+++ b/apps/docs/src/renderer/i18n/strings-ribbon.ts
@@ -143,7 +143,7 @@ export const ribbonStrings = defineStrings({
ribbonMoreStyles: '更多样式',
ribbonGroupStyles: '样式',
// Home · AI
- ribbonAiAssistant: 'Genspark',
+ ribbonAiAssistant: 'Hermes AI',
ribbonAiAssistantTip: '打开 AI 助手',
// Table Design
ribbonRemoveTableStyleTip: '移除表格样式',
@@ -842,7 +842,7 @@ export const ribbonStrings = defineStrings({
'Styles pane: browse all styles, create or update styles from the selection',
ribbonMoreStyles: 'More styles',
ribbonGroupStyles: 'Styles',
- ribbonAiAssistant: 'Genspark',
+ ribbonAiAssistant: 'Hermes AI',
ribbonAiAssistantTip: 'Open the AI assistant',
ribbonRemoveTableStyleTip: 'Remove table style',
ribbonNoStyle: 'No Style',
@@ -1548,7 +1548,7 @@ export const ribbonStrings = defineStrings({
ribbonMoreStyles: 'その他のスタイル',
ribbonGroupStyles: 'スタイル',
// Home · AI
- ribbonAiAssistant: 'Genspark',
+ ribbonAiAssistant: 'Hermes AI',
ribbonAiAssistantTip: 'AI アシスタントを開く',
// Table Design
ribbonRemoveTableStyleTip: '表のスタイルを削除',
@@ -2266,7 +2266,7 @@ export const ribbonStrings = defineStrings({
ribbonMoreStyles: '스타일 더 보기',
ribbonGroupStyles: '스타일',
// Home · AI
- ribbonAiAssistant: 'Genspark',
+ ribbonAiAssistant: 'Hermes AI',
ribbonAiAssistantTip: 'AI 도우미 열기',
// Table Design
ribbonRemoveTableStyleTip: '표 스타일 제거',
@@ -2976,7 +2976,7 @@ export const ribbonStrings = defineStrings({
'Volet Styles : parcourir tous les styles, créer ou mettre à jour un style à partir de la sélection',
ribbonMoreStyles: 'Autres styles',
ribbonGroupStyles: 'Styles',
- ribbonAiAssistant: 'Genspark',
+ ribbonAiAssistant: 'Hermes AI',
ribbonAiAssistantTip: "Ouvrir l'assistant IA",
ribbonRemoveTableStyleTip: 'Supprimer le style de tableau',
ribbonNoStyle: 'Aucun style',
@@ -3686,7 +3686,7 @@ export const ribbonStrings = defineStrings({
'Formatvorlagenbereich: alle Formatvorlagen anzeigen, aus der Auswahl neue erstellen oder aktualisieren',
ribbonMoreStyles: 'Weitere Formatvorlagen',
ribbonGroupStyles: 'Formatvorlagen',
- ribbonAiAssistant: 'Genspark',
+ ribbonAiAssistant: 'Hermes AI',
ribbonAiAssistantTip: 'KI-Assistenten öffnen',
ribbonRemoveTableStyleTip: 'Tabellenformatvorlage entfernen',
ribbonNoStyle: 'Keine Formatvorlage',
@@ -4397,7 +4397,7 @@ export const ribbonStrings = defineStrings({
'Panel de estilos: ver todos los estilos y crear o actualizar estilos a partir de la selección',
ribbonMoreStyles: 'Más estilos',
ribbonGroupStyles: 'Estilos',
- ribbonAiAssistant: 'Genspark',
+ ribbonAiAssistant: 'Hermes AI',
ribbonAiAssistantTip: 'Abrir el asistente de IA',
ribbonRemoveTableStyleTip: 'Quitar el estilo de tabla',
ribbonNoStyle: 'Sin estilo',
@@ -5106,7 +5106,7 @@ export const ribbonStrings = defineStrings({
ribbonStylePaneTip: 'บานหน้าต่างสไตล์: ดูสไตล์ทั้งหมด สร้างหรืออัปเดตสไตล์จากส่วนที่เลือก',
ribbonMoreStyles: 'สไตล์เพิ่มเติม',
ribbonGroupStyles: 'สไตล์',
- ribbonAiAssistant: 'Genspark',
+ ribbonAiAssistant: 'Hermes AI',
ribbonAiAssistantTip: 'เปิดผู้ช่วย AI',
ribbonRemoveTableStyleTip: 'เอาสไตล์ตารางออก',
ribbonNoStyle: 'ไม่มีสไตล์',
@@ -5799,7 +5799,7 @@ export const ribbonStrings = defineStrings({
ribbonStylePaneTip: 'Panel Gaya: telusuri semua gaya, buat atau perbarui gaya dari pilihan',
ribbonMoreStyles: 'Gaya lainnya',
ribbonGroupStyles: 'Gaya',
- ribbonAiAssistant: 'Genspark',
+ ribbonAiAssistant: 'Hermes AI',
ribbonAiAssistantTip: 'Buka asisten AI',
ribbonRemoveTableStyleTip: 'Hapus gaya tabel',
ribbonNoStyle: 'Tanpa Gaya',
@@ -6502,7 +6502,7 @@ export const ribbonStrings = defineStrings({
'Область стилей: просмотр всех стилей, создание и обновление стилей по выделенному фрагменту',
ribbonMoreStyles: 'Другие стили',
ribbonGroupStyles: 'Стили',
- ribbonAiAssistant: 'Genspark',
+ ribbonAiAssistant: 'Hermes AI',
ribbonAiAssistantTip: 'Открыть помощника ИИ',
ribbonRemoveTableStyleTip: 'Удалить стиль таблицы',
ribbonNoStyle: 'Без стиля',
@@ -7203,7 +7203,7 @@ export const ribbonStrings = defineStrings({
ribbonStylePaneTip: 'جزء الأنماط: استعراض كافة الأنماط، وإنشاء الأنماط أو تحديثها من التحديد',
ribbonMoreStyles: 'المزيد من الأنماط',
ribbonGroupStyles: 'أنماط',
- ribbonAiAssistant: 'Genspark',
+ ribbonAiAssistant: 'Hermes AI',
ribbonAiAssistantTip: 'فتح مساعد الذكاء الاصطناعي',
ribbonRemoveTableStyleTip: 'إزالة نمط الجدول',
ribbonNoStyle: 'بلا نمط',
@@ -7898,7 +7898,7 @@ export const ribbonStrings = defineStrings({
'Painel de estilos: veja todos os estilos, crie ou atualize estilos a partir da seleção',
ribbonMoreStyles: 'Mais estilos',
ribbonGroupStyles: 'Estilos',
- ribbonAiAssistant: 'Genspark',
+ ribbonAiAssistant: 'Hermes AI',
ribbonAiAssistantTip: 'Abrir o assistente de IA',
ribbonRemoveTableStyleTip: 'Remover estilo da tabela',
ribbonNoStyle: 'Sem Estilo',
@@ -8602,7 +8602,7 @@ export const ribbonStrings = defineStrings({
'Riquadro stili: sfoglia tutti gli stili, crea o aggiorna stili dalla selezione',
ribbonMoreStyles: 'Altri stili',
ribbonGroupStyles: 'Stili',
- ribbonAiAssistant: 'Genspark',
+ ribbonAiAssistant: 'Hermes AI',
ribbonAiAssistantTip: "Apri l'assistente IA",
ribbonRemoveTableStyleTip: 'Rimuovi stile tabella',
ribbonNoStyle: 'Nessuno stile',
@@ -9310,7 +9310,7 @@ export const ribbonStrings = defineStrings({
'Okienko stylów: przeglądaj wszystkie style, twórz lub aktualizuj style na podstawie zaznaczenia',
ribbonMoreStyles: 'Więcej stylów',
ribbonGroupStyles: 'Style',
- ribbonAiAssistant: 'Genspark',
+ ribbonAiAssistant: 'Hermes AI',
ribbonAiAssistantTip: 'Otwórz asystenta AI',
ribbonRemoveTableStyleTip: 'Usuń styl tabeli',
ribbonNoStyle: 'Brak stylu',
@@ -10016,7 +10016,7 @@ export const ribbonStrings = defineStrings({
'Deelvenster Stijlen: blader door alle stijlen, maak of werk stijlen bij op basis van de selectie',
ribbonMoreStyles: 'Meer stijlen',
ribbonGroupStyles: 'Stijlen',
- ribbonAiAssistant: 'Genspark',
+ ribbonAiAssistant: 'Hermes AI',
ribbonAiAssistantTip: 'De AI-assistent openen',
ribbonRemoveTableStyleTip: 'Tabelstijl verwijderen',
ribbonNoStyle: 'Geen stijl',
@@ -10722,7 +10722,7 @@ export const ribbonStrings = defineStrings({
'Anak tetingkap gaya: lihat semua gaya, cipta atau kemas kini gaya daripada pilihan',
ribbonMoreStyles: 'Lebih banyak gaya',
ribbonGroupStyles: 'Gaya',
- ribbonAiAssistant: 'Genspark',
+ ribbonAiAssistant: 'Hermes AI',
ribbonAiAssistantTip: 'Buka pembantu AI',
ribbonRemoveTableStyleTip: 'Alih keluar gaya jadual',
ribbonNoStyle: 'Tiada Gaya',
@@ -11423,7 +11423,7 @@ export const ribbonStrings = defineStrings({
ribbonStylePaneTip: 'חלונית סגנונות: עיין בכל הסגנונות, צור או עדכן סגנונות מהקטע הנבחר',
ribbonMoreStyles: 'סגנונות נוספים',
ribbonGroupStyles: 'סגנונות',
- ribbonAiAssistant: 'Genspark',
+ ribbonAiAssistant: 'Hermes AI',
ribbonAiAssistantTip: 'פתח את עוזר ה-AI',
ribbonRemoveTableStyleTip: 'הסר סגנון טבלה',
ribbonNoStyle: 'ללא סגנון',
@@ -12113,7 +12113,7 @@ export const ribbonStrings = defineStrings({
ribbonStylePaneTip: 'शैलियाँ फलक: सभी शैलियाँ देखें, चयन से नई शैली बनाएँ या अद्यतन करें',
ribbonMoreStyles: 'और शैलियाँ',
ribbonGroupStyles: 'शैलियाँ',
- ribbonAiAssistant: 'Genspark',
+ ribbonAiAssistant: 'Hermes AI',
ribbonAiAssistantTip: 'AI सहायक खोलें',
ribbonRemoveTableStyleTip: 'तालिका शैली हटाएँ',
ribbonNoStyle: 'कोई शैली नहीं',
@@ -12813,7 +12813,7 @@ export const ribbonStrings = defineStrings({
ribbonStylePaneTip: '樣式窗格:檢視全部樣式,從選取範圍新增/更新樣式',
ribbonMoreStyles: '更多樣式',
ribbonGroupStyles: '樣式',
- ribbonAiAssistant: 'Genspark',
+ ribbonAiAssistant: 'Hermes AI',
ribbonAiAssistantTip: '開啟 AI 助理',
ribbonRemoveTableStyleTip: '移除表格樣式',
ribbonNoStyle: '無樣式',
diff --git a/apps/markdown/src/renderer/App.tsx b/apps/markdown/src/renderer/App.tsx
index 47d1956..050eb33 100644
--- a/apps/markdown/src/renderer/App.tsx
+++ b/apps/markdown/src/renderer/App.tsx
@@ -20,7 +20,7 @@ import { ToastHost } from './components/toast'
import { TableMenu } from './components/TableMenu'
import { FrontmatterPanel } from './components/FrontmatterPanel'
import { AiAskPopover } from './components/AiAskPopover'
-import { AiPanel, GensparkMark, type AiPreset, type MarkdownAiDeps } from './ai/AiPanel'
+import { AiPanel, HermesMark, type AiPreset, type MarkdownAiDeps } from './ai/AiPanel'
import { EDIT_QUEUE_MAX, selectionForAnchor, type EditQueueItem } from './ai/edit-queue'
import { addQueueAnchor, clearQueueAnchors, removeQueueAnchors } from './editor/aiQueueAnchors'
import { DOCX_MAX_IMAGE_PX, exportDocxBytes } from './export/docxExport'
@@ -614,7 +614,7 @@ export default function App() {
aria-label={t('aiOpenAssistant')}
onClick={() => setAiOpen(true)}
>
-
+
)}
{/* mounted only after the file is loaded so chat history resolves against the real path */}
diff --git a/apps/markdown/src/renderer/ai/AiPanel.tsx b/apps/markdown/src/renderer/ai/AiPanel.tsx
index 26acbd0..d8f4311 100644
--- a/apps/markdown/src/renderer/ai/AiPanel.tsx
+++ b/apps/markdown/src/renderer/ai/AiPanel.tsx
@@ -565,7 +565,7 @@ export function AiPanel({
/>
-
+
Genspark
@@ -1013,19 +1013,35 @@ function IconClock(): ReactElement {
}
/** Genspark brand mark, inline for crisp device-resolution rendering */
-export function GensparkMark({ size = 18 }: { size?: number }): React.JSX.Element {
+export function HermesMark({ size = 26 }: { size?: number }) {
return (
)
diff --git a/apps/markdown/src/renderer/components/Ribbon.tsx b/apps/markdown/src/renderer/components/Ribbon.tsx
index 28185f1..3f726b2 100644
--- a/apps/markdown/src/renderer/components/Ribbon.tsx
+++ b/apps/markdown/src/renderer/components/Ribbon.tsx
@@ -5,7 +5,7 @@ import { useEditorState } from '@tiptap/react'
import { Dropdown, useDismissablePopover } from '@hermesoffice/ui'
import { useI18n } from '../i18n/locale'
import type { StringKey } from '../i18n/locale'
-import { GensparkMark } from '../ai/AiPanel'
+import { HermesMark } from '../ai/AiPanel'
import { liftFromList } from '../editor/slashCommand'
import {
IconBullets,
@@ -296,9 +296,9 @@ export function Ribbon({
onClick={onToggleAi}
>
-
+
-
Genspark AI
+
Hermes AI
{aiPresets.map(({ kind, btn, prompt }) => (