From 2fa153ac346530655c09541a31b0d8e5aa08e45e Mon Sep 17 00:00:00 2001 From: Vanalite Date: Tue, 28 Oct 2025 17:04:31 +0700 Subject: [PATCH] fix: Remove unused Proactive icon on chatInput This icon doesn't do anything on chatInput but just an indicator when the proactive capability is activated. Safely remove since this can be indicated from the model dropdown --- web-app/src/containers/ChatInput.tsx | 21 --------------------- web-app/src/lib/completion.ts | 8 +------- web-app/src/locales/de-DE/common.json | 1 + web-app/src/locales/en/common.json | 1 + web-app/src/locales/id/common.json | 1 + web-app/src/locales/pl/common.json | 1 + web-app/src/locales/vn/common.json | 1 + web-app/src/locales/zh-CN/common.json | 1 + web-app/src/locales/zh-TW/common.json | 1 + 9 files changed, 8 insertions(+), 28 deletions(-) diff --git a/web-app/src/containers/ChatInput.tsx b/web-app/src/containers/ChatInput.tsx index a8ce87866..564e295c4 100644 --- a/web-app/src/containers/ChatInput.tsx +++ b/web-app/src/containers/ChatInput.tsx @@ -108,7 +108,6 @@ const ChatInput = ({ const [connectedServers, setConnectedServers] = useState([]) const [isDragOver, setIsDragOver] = useState(false) const [hasMmproj, setHasMmproj] = useState(false) - const [hasProactive, setHasProactive] = useState(false) const [hasActiveModels, setHasActiveModels] = useState(false) const attachmentsEnabled = useAttachments((s) => s.enabled) // Determine whether to show the Attach documents button (simple gating) @@ -207,26 +206,6 @@ const ChatInput = ({ checkMmprojSupport() }, [selectedModel, selectedModel?.capabilities, selectedProvider, serviceHub]) - // Check for proactive capability when model changes - useEffect(() => { - const checkProactiveSupport = () => { - if (selectedModel && selectedModel?.id) { - // Proactive mode requires both tools and vision capabilities - const hasTools = selectedModel?.capabilities?.includes('tools') - const hasVision = selectedModel?.capabilities?.includes('vision') - const hasProactiveCapability = selectedModel?.capabilities?.includes('proactive') - - if (hasTools && hasVision && hasProactiveCapability) { - setHasProactive(true) - } else { - setHasProactive(false) - } - } - } - - checkProactiveSupport() - }, [selectedModel, selectedModel?.capabilities]) - // Check if there are active MCP servers const hasActiveMCPServers = connectedServers.length > 0 || tools.length > 0 diff --git a/web-app/src/lib/completion.ts b/web-app/src/lib/completion.ts index 8b511f942..12febfb31 100644 --- a/web-app/src/lib/completion.ts +++ b/web-app/src/lib/completion.ts @@ -488,6 +488,7 @@ const filterOldProactiveScreenshots = (builder: CompletionMessagesBuilder) => { // Reconstruct builder with filtered messages // Note: This is a workaround since CompletionMessagesBuilder doesn't have a setter // We'll need to access the private messages array + // eslint-disable-next-line no-extra-semi ;(builder as any).messages = filteredMessages } @@ -518,8 +519,6 @@ export const postMessageProcessing = async ( ) => { // Handle completed tool calls if (calls.length) { - // Track if any browser MCP tool was called - let hasBrowserMCPToolCall = false // Fetch RAG tool names from RAG service let ragToolNames = new Set() try { @@ -663,11 +662,6 @@ export const postMessageProcessing = async ( } builder.addToolMessage(result as ToolResult, toolCall.id) - // Mark if we used a browser tool (for proactive mode) - if (isBrowserTool) { - hasBrowserMCPToolCall = true - } - // Proactive mode: Capture screenshot/snapshot after browser tool execution if (isProactiveMode && isBrowserTool && !abortController.signal.aborted) { console.log('Proactive mode: Capturing screenshots after browser tool call') diff --git a/web-app/src/locales/de-DE/common.json b/web-app/src/locales/de-DE/common.json index 699c15a08..f79883980 100644 --- a/web-app/src/locales/de-DE/common.json +++ b/web-app/src/locales/de-DE/common.json @@ -80,6 +80,7 @@ "tools": "Werkzeuge", "webSearch": "Web Suche", "reasoning": "Argumentation", + "proactive": "Proaktiv", "selectAModel": "Wähle ein Modell", "noToolsAvailable": "Keine Werkzeuge verfügbar", "noModelsFoundFor": "Keine Modelle gefunden zu \"{{searchValue}}\"", diff --git a/web-app/src/locales/en/common.json b/web-app/src/locales/en/common.json index 026f430e8..950879bf6 100644 --- a/web-app/src/locales/en/common.json +++ b/web-app/src/locales/en/common.json @@ -81,6 +81,7 @@ "tools": "Tools", "webSearch": "Web Search", "reasoning": "Reasoning", + "proactive": "Proactive", "selectAModel": "Select a model", "noToolsAvailable": "No tools available", "noModelsFoundFor": "No models found for \"{{searchValue}}\"", diff --git a/web-app/src/locales/id/common.json b/web-app/src/locales/id/common.json index 77af93d31..7f9bfaeea 100644 --- a/web-app/src/locales/id/common.json +++ b/web-app/src/locales/id/common.json @@ -80,6 +80,7 @@ "tools": "Alat", "webSearch": "Pencarian Web", "reasoning": "Penalaran", + "proactive": "Proaktif", "selectAModel": "Pilih model", "noToolsAvailable": "Tidak ada alat yang tersedia", "noModelsFoundFor": "Tidak ada model yang ditemukan untuk \"{{searchValue}}\"", diff --git a/web-app/src/locales/pl/common.json b/web-app/src/locales/pl/common.json index ee25f6068..0676a8be3 100644 --- a/web-app/src/locales/pl/common.json +++ b/web-app/src/locales/pl/common.json @@ -80,6 +80,7 @@ "tools": "Narzędzia", "webSearch": "Szukanie w Sieci", "reasoning": "Rozumowanie", + "proactive": "Proaktywny", "selectAModel": "Wybierz Model", "noToolsAvailable": "Brak narzędzi", "noModelsFoundFor": "Brak modeli dla \"{{searchValue}}\"", diff --git a/web-app/src/locales/vn/common.json b/web-app/src/locales/vn/common.json index 28ddd29a7..6239d9686 100644 --- a/web-app/src/locales/vn/common.json +++ b/web-app/src/locales/vn/common.json @@ -80,6 +80,7 @@ "tools": "Công cụ", "webSearch": "Tìm kiếm trên web", "reasoning": "Lý luận", + "proactive": "Chủ động", "selectAModel": "Chọn một mô hình", "noToolsAvailable": "Không có công cụ nào", "noModelsFoundFor": "Không tìm thấy mô hình nào cho \"{{searchValue}}\"", diff --git a/web-app/src/locales/zh-CN/common.json b/web-app/src/locales/zh-CN/common.json index 69b15ac90..7ba859f09 100644 --- a/web-app/src/locales/zh-CN/common.json +++ b/web-app/src/locales/zh-CN/common.json @@ -80,6 +80,7 @@ "tools": "工具", "webSearch": "网页搜索", "reasoning": "推理", + "proactive": "主动模式", "selectAModel": "选择一个模型", "noToolsAvailable": "无可用工具", "noModelsFoundFor": "未找到“{{searchValue}}”的模型", diff --git a/web-app/src/locales/zh-TW/common.json b/web-app/src/locales/zh-TW/common.json index 809ac0cd4..3caf19258 100644 --- a/web-app/src/locales/zh-TW/common.json +++ b/web-app/src/locales/zh-TW/common.json @@ -80,6 +80,7 @@ "tools": "工具", "webSearch": "網路搜尋", "reasoning": "推理", + "proactive": "主動模式", "selectAModel": "選擇一個模型", "noToolsAvailable": "沒有可用的工具", "noModelsFoundFor": "找不到符合「{{searchValue}}」的模型",