fix(cli): narrow plugin-toggle toast to restart-required semantics

The toast said the change 'takes effect for new sessions', but plugins are
scanned once at process start — a new chat under the same gateway still
sees the old plugin set (#71595 repro). Rename the key to match
(toggleTakesEffectAfterRestart) and say only what is true: restart the
gateway to apply the change.
This commit is contained in:
chris-young
2026-08-04 09:12:16 -07:00
committed by Teknium
parent 47c202479a
commit 2dc4451458
18 changed files with 35 additions and 35 deletions

View File

@@ -324,8 +324,8 @@ export const af: Translations = {
disableRuntime: "Deaktiveer",
enableAfterInstall: "Aktiveer ná installasie",
enableRuntime: "Aktiveer",
toggleTakesEffectNextSession:
"Gestoor — geld vir nuwe sessies. Herbegin die gateway om dit oral toe te pas.",
toggleTakesEffectAfterRestart:
"Gestoor — herbegin die gateway om die verandering toe te pas.",
forceReinstall: "Forseer herinstallasie (skrap eers bestaande gids)",
headline:
"Ontdek, installeer, aktiveer en werk Hermes-inproppe op (`hermes plugins` ekwivalent).",

View File

@@ -324,8 +324,8 @@ export const de: Translations = {
disableRuntime: "Deaktivieren",
enableAfterInstall: "Nach Installation aktivieren",
enableRuntime: "Aktivieren",
toggleTakesEffectNextSession:
"Gespeichert — gilt für neue Sitzungen. Gateway neu starten, um es überall anzuwenden.",
toggleTakesEffectAfterRestart:
"Gespeichert — Gateway neu starten, um die Änderung anzuwenden.",
forceReinstall: "Neuinstallation erzwingen (bestehenden Ordner zuerst löschen)",
headline:
"Hermes-Plugins entdecken, installieren, aktivieren und aktualisieren (entspricht `hermes plugins`).",

View File

@@ -398,8 +398,8 @@ export const en: Translations = {
disableRuntime: "Disable",
enableAfterInstall: "Enable after install",
enableRuntime: "Enable",
toggleTakesEffectNextSession:
"Saved — takes effect for new sessions. Restart the gateway to apply it everywhere.",
toggleTakesEffectAfterRestart:
"Saved — restart the gateway to apply the change.",
forceReinstall: "Force reinstall (delete existing folder first)",
headline:
"Discover, install, enable, and update Hermes plugins (`hermes plugins` parity).",

View File

@@ -325,8 +325,8 @@ export const es: Translations = {
disableRuntime: "Deshabilitar",
enableAfterInstall: "Habilitar tras instalar",
enableRuntime: "Habilitar",
toggleTakesEffectNextSession:
"Guardado: surte efecto en nuevas sesiones. Reinicia el gateway para aplicarlo en todas partes.",
toggleTakesEffectAfterRestart:
"Guardado: reinicia el gateway para aplicar el cambio.",
forceReinstall: "Forzar reinstalación (eliminar carpeta existente primero)",
headline:
"Descubre, instala, habilita y actualiza complementos de Hermes (equivalente a `hermes plugins`).",

View File

@@ -325,8 +325,8 @@ export const fr: Translations = {
disableRuntime: "Désactiver",
enableAfterInstall: "Activer après l'installation",
enableRuntime: "Activer",
toggleTakesEffectNextSession:
"Enregistré — prend effet pour les nouvelles sessions. Redémarrez la passerelle pour l'appliquer partout.",
toggleTakesEffectAfterRestart:
"Enregistré — redémarrez la passerelle pour appliquer la modification.",
forceReinstall: "Forcer la réinstallation (supprimer d'abord le dossier existant)",
headline:
"Découvrez, installez, activez et mettez à jour les plugins Hermes (parité avec `hermes plugins`).",

View File

@@ -332,8 +332,8 @@ export const ga: Translations = {
disableRuntime: "Díchumasaigh",
enableAfterInstall: "Cumasaigh tar éis suiteála",
enableRuntime: "Cumasaigh",
toggleTakesEffectNextSession:
"Sábháilte — i bhfeidhm do sheisiúin nua. Atosaigh an gateway chun é a chur i bhfeidhm i ngach áit.",
toggleTakesEffectAfterRestart:
"Sábháilte — atosaigh an gateway chun an t-athrú a chur i bhfeidhm.",
forceReinstall: "Cuir iallach ar athshuiteáil (scrios an fillteán atá ann ar dtús)",
headline:
"Faigh, suiteáil, cumasaigh agus nuashonraigh plugins Hermes (paireacht le `hermes plugins`).",

View File

@@ -324,8 +324,8 @@ export const hu: Translations = {
disableRuntime: "Letiltás",
enableAfterInstall: "Engedélyezés a telepítés után",
enableRuntime: "Engedélyezés",
toggleTakesEffectNextSession:
"Mentve — az új munkamenetekre érvényes. Indítsa újra az átjárót, hogy mindenhol érvénybe lépjen.",
toggleTakesEffectAfterRestart:
"Mentve — indítsa újra az átjárót a módosítás alkalmazásához.",
forceReinstall: "Kényszerített újratelepítés (a meglévő mappa előbb törlődik)",
headline:
"Hermes-bővítmények felfedezése, telepítése, engedélyezése és frissítése (a `hermes plugins` paritás).",

View File

@@ -324,8 +324,8 @@ export const it: Translations = {
disableRuntime: "Disabilita",
enableAfterInstall: "Abilita dopo l'installazione",
enableRuntime: "Abilita",
toggleTakesEffectNextSession:
"Salvato: ha effetto nelle nuove sessioni. Riavvia il gateway per applicarlo ovunque.",
toggleTakesEffectAfterRestart:
"Salvato: riavvia il gateway per applicare la modifica.",
forceReinstall: "Forza reinstallazione (elimina prima la cartella esistente)",
headline:
"Scopri, installa, abilita e aggiorna i plugin Hermes (parità con `hermes plugins`).",

View File

@@ -323,8 +323,8 @@ export const ja: Translations = {
disableRuntime: "無効化",
enableAfterInstall: "インストール後に有効化",
enableRuntime: "有効化",
toggleTakesEffectNextSession:
"保存しました — 新しいセッションから有効になります。すべてに適用するにはゲートウェイを再起動してください。",
toggleTakesEffectAfterRestart:
"保存しました — 変更を適用するにはゲートウェイを再起動してください。",
forceReinstall: "強制再インストール (既存のフォルダを先に削除)",
headline:
"Hermes プラグインを発見、インストール、有効化、更新します (`hermes plugins` 相当)。",

View File

@@ -323,8 +323,8 @@ export const ko: Translations = {
disableRuntime: "비활성화",
enableAfterInstall: "설치 후 활성화",
enableRuntime: "활성화",
toggleTakesEffectNextSession:
"저장됨 — 새 세션부터 적용됩니다. 모든 곳에 적용하려면 게이트웨이를 다시 시작하세요.",
toggleTakesEffectAfterRestart:
"저장됨 — 변경 사항을 적용하려면 게이트웨이를 다시 시작하세요.",
forceReinstall: "강제 재설치 (기존 폴더를 먼저 삭제)",
headline:
"Hermes 플러그인을 검색, 설치, 활성화 및 업데이트합니다 (`hermes plugins` 동등).",

View File

@@ -325,8 +325,8 @@ export const pt: Translations = {
disableRuntime: "Desativar",
enableAfterInstall: "Ativar após instalação",
enableRuntime: "Ativar",
toggleTakesEffectNextSession:
"Salvo — entra em vigor em novas sessões. Reinicie o gateway para aplicar em todos os lugares.",
toggleTakesEffectAfterRestart:
"Salvo — reinicie o gateway para aplicar a alteração.",
forceReinstall: "Forçar reinstalação (eliminar pasta existente primeiro)",
headline:
"Descobrir, instalar, ativar e atualizar plugins Hermes (paridade com `hermes plugins`).",

View File

@@ -324,8 +324,8 @@ export const ru: Translations = {
disableRuntime: "Отключить",
enableAfterInstall: "Включить после установки",
enableRuntime: "Включить",
toggleTakesEffectNextSession:
"Сохранено — вступит в силу для новых сессий. Перезапустите шлюз, чтобы применить везде.",
toggleTakesEffectAfterRestart:
"Сохранено — перезапустите шлюз, чтобы применить изменение.",
forceReinstall: "Принудительная переустановка (сначала удалить существующую папку)",
headline:
"Поиск, установка, включение и обновление плагинов Hermes (аналог `hermes plugins`).",

View File

@@ -324,8 +324,8 @@ export const tr: Translations = {
disableRuntime: "Devre dışı bırak",
enableAfterInstall: "Yüklemeden sonra etkinleştir",
enableRuntime: "Etkinleştir",
toggleTakesEffectNextSession:
"Kaydedildi — yeni oturumlarda geçerli olur. Her yerde uygulamak için ağ geçidini yeniden başlatın.",
toggleTakesEffectAfterRestart:
"Kaydedildi — değişikliği uygulamak için ağ geçidini yeniden başlatın.",
forceReinstall: "Yeniden yüklemeyi zorla (önce mevcut klasörü sil)",
headline:
"Hermes eklentilerini keşfedin, yükleyin, etkinleştirin ve güncelleyin (`hermes plugins` ile eşdeğer).",

View File

@@ -345,7 +345,7 @@ export interface Translations {
disableRuntime: string;
enableAfterInstall: string;
enableRuntime: string;
toggleTakesEffectNextSession: string;
toggleTakesEffectAfterRestart: string;
forceReinstall: string;
headline: string;
identifierLabel: string;

View File

@@ -325,8 +325,8 @@ export const uk: Translations = {
disableRuntime: "Вимкнути",
enableAfterInstall: "Увімкнути після встановлення",
enableRuntime: "Увімкнути",
toggleTakesEffectNextSession:
"Збережено — набуде чинності для нових сесій. Перезапустіть шлюз, щоб застосувати всюди.",
toggleTakesEffectAfterRestart:
"Збережено — перезапустіть шлюз, щоб застосувати зміну.",
forceReinstall: "Примусово перевстановити (спершу видалити наявну теку)",
headline:
"Знаходьте, встановлюйте, вмикайте та оновлюйте плагіни Hermes (паритет з `hermes plugins`).",

View File

@@ -323,8 +323,8 @@ export const zhHant: Translations = {
disableRuntime: "停用",
enableAfterInstall: "安裝後啟用",
enableRuntime: "啟用",
toggleTakesEffectNextSession:
"已儲存 — 對新工作階段生效。重新啟動閘道以套用到所有工作階段。",
toggleTakesEffectAfterRestart:
"已儲存 — 重新啟動閘道以套用變更。",
forceReinstall: "強制重新安裝(先刪除既有資料夾)",
headline:
"探索、安裝、啟用並更新 Hermes 外掛(對齊 `hermes plugins` CLI)。",

View File

@@ -320,8 +320,8 @@ export const zh: Translations = {
disableRuntime: "禁用",
enableAfterInstall: "安装后启用",
enableRuntime: "启用",
toggleTakesEffectNextSession:
"已保存 — 对新会话生效。重启网关以应用到所有会话。",
toggleTakesEffectAfterRestart:
"已保存 — 重启网关以应用更改。",
forceReinstall: "强制重装(先删除已有目录)",
headline: "发现、安装、启用和更新 Hermes 插件(对齐 `hermes plugins` CLI)。",
identifierLabel: "Git 地址或 owner/repo",

View File

@@ -1126,7 +1126,7 @@ function PluginRowCard(props: PluginRowCardProps) {
const res = await api.disableAgentPlugin(row.name);
showToast(
res.restart_required
? t.pluginsPage.toggleTakesEffectNextSession
? t.pluginsPage.toggleTakesEffectAfterRestart
: t.pluginsPage.disableRuntime,
"success",
);
@@ -1145,7 +1145,7 @@ function PluginRowCard(props: PluginRowCardProps) {
const res = await api.enableAgentPlugin(row.name);
showToast(
res.restart_required
? t.pluginsPage.toggleTakesEffectNextSession
? t.pluginsPage.toggleTakesEffectAfterRestart
: t.pluginsPage.enableRuntime,
"success",
);