Skip to content

Commit 8f2a44a

Browse files
committed
fix(browser): align browser-tool gating in Task.getSystemPrompt() with webview generator; correct log message to 'supports images'
1 parent 54d2080 commit 8f2a44a

File tree

2 files changed

+13
-3
lines changed

2 files changed

+13
-3
lines changed

src/core/task/Task.ts

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ import { t } from "../../i18n"
5252
import { ClineApiReqCancelReason, ClineApiReqInfo } from "../../shared/ExtensionMessage"
5353
import { getApiMetrics, hasTokenUsageChanged } from "../../shared/getApiMetrics"
5454
import { ClineAskResponse } from "../../shared/WebviewMessage"
55-
import { defaultModeSlug } from "../../shared/modes"
55+
import { defaultModeSlug, getModeBySlug, getGroupName } from "../../shared/modes"
5656
import { DiffStrategy } from "../../shared/tools"
5757
import { EXPERIMENT_IDS, experiments } from "../../shared/experiments"
5858
import { getModelMaxOutputTokens } from "../../shared/api"
@@ -2414,10 +2414,20 @@ export class Task extends EventEmitter<TaskEvents> implements TaskLike {
24142414
throw new Error("Provider not available")
24152415
}
24162416

2417+
// Align browser tool enablement with generateSystemPrompt: require model image support,
2418+
// mode to include the browser group, and the user setting to be enabled.
2419+
const modeConfig = getModeBySlug(mode, customModes)
2420+
const modeSupportsBrowser = modeConfig?.groups.some((group) => getGroupName(group) === "browser") ?? false
2421+
2422+
const canUseBrowserTool =
2423+
(this.api.getModel().info.supportsImages ?? false) &&
2424+
modeSupportsBrowser &&
2425+
(browserToolEnabled ?? true)
2426+
24172427
return SYSTEM_PROMPT(
24182428
provider.context,
24192429
this.cwd,
2420-
(this.api.getModel().info.supportsImages ?? false) && (browserToolEnabled ?? true),
2430+
canUseBrowserTool,
24212431
mcpHub,
24222432
this.diffStrategy,
24232433
browserViewportSize,

src/core/webview/generateSystemPrompt.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ export const generateSystemPrompt = async (provider: ClineProvider, message: Web
5353
const tempApiHandler = buildApiHandler(apiConfiguration)
5454
modelSupportsImages = tempApiHandler.getModel().info.supportsImages ?? false
5555
} catch (error) {
56-
console.error("Error checking if model supports computer use:", error)
56+
console.error("Error checking if model supports images:", error)
5757
}
5858

5959
// Check if the current mode includes the browser tool group

0 commit comments

Comments
 (0)