Skip to content

Commit 4ba256b

Browse files
committed
feat: Default browser tool to headless mode and improve script usage guidance
- Set `headless` mode to `true` by default in `browser.tool.ts` to optimize resource usage. - Updated `execute-script.tool.ts` with detailed instructions for appropriate usage, emphasizing alternatives for browser interaction.
1 parent 8d55932 commit 4ba256b

2 files changed

Lines changed: 4 additions & 2 deletions

File tree

src/tools/browser.tool.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ export const startBrowserToolDefinition: ToolDefinition = {
1313
description: 'starts a browser session (Chrome, Firefox, Edge, Safari) and sets it to the current state',
1414
inputSchema: {
1515
browser: browserSchema.describe('Browser to launch: chrome, firefox, edge, safari (default: chrome)'),
16-
headless: z.boolean().optional(),
16+
headless: z.boolean().optional().default(true),
1717
windowWidth: z.number().min(400).max(3840).optional().default(1920),
1818
windowHeight: z.number().min(400).max(2160).optional().default(1080),
1919
navigationUrl: z.string().optional().describe('URL to navigate to after starting the browser'),
@@ -51,7 +51,7 @@ export const getBrowser = () => {
5151

5252
export const startBrowserTool: ToolCallback = async ({
5353
browser = 'chrome',
54-
headless = false,
54+
headless = true,
5555
windowWidth = 1920,
5656
windowHeight = 1080,
5757
navigationUrl,

src/tools/execute-script.tool.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ export const executeScriptToolDefinition: ToolDefinition = {
88
name: 'execute_script',
99
description: `Executes JavaScript in browser or mobile commands via Appium.
1010
11+
**Option B for browser interaction** — prefer get_visible_elements or click_element/set_value with a selector instead. Use execute_script only when no dedicated tool covers the action (e.g. reading computed values, triggering custom events, scrolling to a position).
12+
1113
**Browser:** Runs JavaScript in page context. Use 'return' to get values back.
1214
- Example: execute_script({ script: "return document.title" })
1315
- Example: execute_script({ script: "return window.scrollY" })

0 commit comments

Comments
 (0)