From 33489f32bdd8a6d9cd5fbbd0abf16ade8f5f72b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=85=AC=E6=98=8E?= <83812544+Ed1s0nZ@users.noreply.github.com> Date: Sun, 19 Apr 2026 05:16:52 +0800 Subject: [PATCH] Add files via upload --- web/static/i18n/en-US.json | 2 +- web/static/i18n/zh-CN.json | 2 +- web/static/js/tasks.js | 21 +++++++++++++++------ web/templates/index.html | 5 +++-- 4 files changed, 20 insertions(+), 10 deletions(-) diff --git a/web/static/i18n/en-US.json b/web/static/i18n/en-US.json index 6b48cac7..d004d74a 100644 --- a/web/static/i18n/en-US.json +++ b/web/static/i18n/en-US.json @@ -1594,7 +1594,7 @@ "agentMode": "Agent mode", "agentModeSingle": "Single-agent (ReAct)", "agentModeMulti": "Multi-agent (Eino)", - "agentModeHint": "Same as chat: single-agent ReAct or Deep / Plan-Execute / Supervisor (Eino requires multi-agent enabled).", + "agentModeHint": "Same as chat: native ReAct, Eino single-agent (ADK), or Deep / Plan-Execute / Supervisor (the last three require multi-agent enabled).", "scheduleMode": "Schedule mode", "scheduleModeManual": "Manual", "scheduleModeCron": "Cron expression", diff --git a/web/static/i18n/zh-CN.json b/web/static/i18n/zh-CN.json index cbb03c16..d8b08436 100644 --- a/web/static/i18n/zh-CN.json +++ b/web/static/i18n/zh-CN.json @@ -1594,7 +1594,7 @@ "agentMode": "代理模式", "agentModeSingle": "单代理(ReAct)", "agentModeMulti": "多代理(Eino)", - "agentModeHint": "与对话页一致:单代理 ReAct 或 Deep / Plan-Execute / Supervisor(Eino 需已启用多代理)。", + "agentModeHint": "与对话页一致:原生 ReAct、Eino 单代理(ADK),或 Deep / Plan-Execute / Supervisor(后三种需已启用多代理)。", "scheduleMode": "调度方式", "scheduleModeManual": "手工执行", "scheduleModeCron": "调度表达式(Cron)", diff --git a/web/static/js/tasks.js b/web/static/js/tasks.js index 10c3951c..79eec74d 100644 --- a/web/static/js/tasks.js +++ b/web/static/js/tasks.js @@ -14,14 +14,22 @@ function _tPlain(key, opts) { }); } +/** 与创建队列 / API 一致的合法 agentMode */ +const BATCH_QUEUE_AGENT_MODES = ['single', 'eino_single', 'deep', 'plan_execute', 'supervisor']; + +function isBatchQueueAgentMode(mode) { + return BATCH_QUEUE_AGENT_MODES.indexOf(String(mode || '').toLowerCase()) >= 0; +} + /** 批量队列 agentMode 展示文案(与对话模式命名一致) */ function batchQueueAgentModeLabel(mode) { const m = String(mode || 'single').toLowerCase(); - if (m === 'single') return _t('batchImportModal.agentModeSingle'); + if (m === 'single') return _t('chat.agentModeReactNative'); + if (m === 'eino_single') return _t('chat.agentModeEinoSingle'); if (m === 'multi' || m === 'deep') return _t('chat.agentModeDeep'); if (m === 'plan_execute') return _t('chat.agentModePlanExecuteLabel'); if (m === 'supervisor') return _t('chat.agentModeSupervisorLabel'); - return _t('batchImportModal.agentModeSingle'); + return _t('chat.agentModeReactNative'); } /** Cron 队列在「本轮 completed」等状态下的展示文案(底层 status 不变,仅 UI 强调循环调度) */ @@ -940,7 +948,7 @@ async function createBatchQueue() { // 获取角色(可选,空字符串表示默认角色) const role = roleSelect ? roleSelect.value || '' : ''; const rawMode = agentModeSelect ? agentModeSelect.value : 'single'; - const agentMode = ['single', 'deep', 'plan_execute', 'supervisor'].indexOf(rawMode) >= 0 ? rawMode : 'single'; + const agentMode = isBatchQueueAgentMode(rawMode) ? rawMode : 'single'; const scheduleMode = scheduleModeSelect ? (scheduleModeSelect.value === 'cron' ? 'cron' : 'manual') : 'manual'; const cronExpr = cronExprInput ? cronExprInput.value.trim() : ''; const executeNow = executeNowCheckbox ? !!executeNowCheckbox.checked : false; @@ -2138,10 +2146,11 @@ function startInlineEditAgentMode() { const queue = detail.queue; let currentMode = (queue.agentMode || 'single').toLowerCase(); if (currentMode === 'multi') currentMode = 'deep'; - if (['single', 'deep', 'plan_execute', 'supervisor'].indexOf(currentMode) < 0) currentMode = 'single'; + if (!isBatchQueueAgentMode(currentMode)) currentMode = 'single'; container.innerHTML = ` - + + -
与对话页一致:原生 ReAct 或三种 Eino 编排(需已启用多代理)。
+
与对话页一致:原生 ReAct、Eino 单代理(ADK),或 Deep / Plan-Execute / Supervisor(后三种需已启用多代理)。