packages/kilo-docs/pages/code-with-ai/features/browser-use.md
Kilo Code provides browser automation capabilities that let you interact with websites directly from your coding workflow. This feature supports testing web applications, automating browser tasks, and capturing screenshots without leaving your editor.
{% callout type="info" title="Model Support Required" %} Browser Use requires an advanced agentic model. It is typically most reliable with recent high-capability models (for example Claude Sonnet 4 class models). {% /callout %}
{% tabs %} {% tab label="VSCode" %}
Browser automation is built into the extension and requires no manual setup. Enable it from Settings → Browser and Kilo handles the rest automatically.
{% /tab %} {% tab label="CLI" %}
Kilo Code uses Playwright for browser automation. Add it to your kilo.jsonc configuration:
{
"mcp": {
"playwright": {
"type": "local",
"command": ["npx", "-y", "@playwright/mcp@latest"]
}
}
}
Playwright downloads Chromium automatically on first use.
{% /tab %} {% tab label="VSCode (Legacy)" %}
By default, Kilo Code uses a built-in browser that:
All of this happens directly within VS Code, with no setup required.
{% /tab %} {% /tabs %}
A typical browser interaction follows this pattern:
For example:
Open the browser and view our site.Can you check if my website at https://kilocode.ai is displaying correctly?Browse http://localhost:3000, scroll down to the bottom of the page and check if the footer information is displaying correctly.{% tabs %} {% tab label="VSCode" %}
Kilo launches a browser automatically when asked and returns screenshots after each action so you can see what's happening. It can navigate to URLs, click elements, fill in forms, scroll, hover, select from dropdowns, and drag and drop — all driven by natural language instructions in chat.
{% /tab %} {% tab label="CLI" %}
The Playwright MCP server provides a set of browser tools for interacting with web pages. These tools return screenshots and accessibility snapshots after each action.
Key characteristics:
| Tool | Description | When to Use |
|---|---|---|
browser_navigate | Navigates to a URL | Opening a web page |
browser_click | Clicks an element on the page | Interacting with buttons, links, etc. |
browser_type | Types text into an input element | Filling forms, search boxes |
browser_screenshot | Captures a screenshot of the page | Inspecting visual state |
browser_scroll | Scrolls the page or a specific area | Viewing content above or below |
browser_hover | Hovers over an element | Revealing tooltips or menus |
browser_select | Selects an option from a dropdown | Choosing from select elements |
browser_drag | Drags an element to a target | Drag-and-drop interactions |
{% /tab %} {% tab label="VSCode (Legacy)" %}
The browser_action tool controls a browser instance that returns screenshots and console logs after each action, allowing you to see the results of interactions.
Key characteristics:
launch and end with close| Action | Description | When to Use |
|---|---|---|
launch | Opens a browser at a URL | Starting a new browser session |
click | Clicks at specific coordinates | Interacting with buttons, links, etc. |
type | Types text into active element | Filling forms, search boxes |
scroll_down | Scrolls down by one page | Viewing content below the fold |
scroll_up | Scrolls up by one page | Returning to previous content |
close | Closes the browser | Ending a browser session |
{% /tab %} {% /tabs %}
{% tabs %} {% tab label="VSCode" %}
Browser automation settings are available under Settings → Browser:
{% /tab %} {% tab label="CLI" %}
Browser automation is configured in your kilo.jsonc file. No additional settings are required — Playwright manages the browser lifecycle automatically.
{% /tab %} {% tab label="VSCode (Legacy)" %}
{% callout type="info" title="Default Browser Settings" %}
{% /callout %}
To change Browser / Computer Use settings in Kilo:
Browser / Computer UsePurpose: Master toggle that enables Kilo to interact with websites using a Puppeteer-controlled browser.
To change this setting:
Purpose: Determines the resolution of the browser session Kilo Code uses.
Tradeoff: Higher values provide a larger viewport but increase token usage.
To change this setting:
Purpose: Controls the WebP compression quality of browser screenshots.
Tradeoff: Higher values provide clearer screenshots but increase token usage.
To change this setting:
Purpose: Connect Kilo to an existing Chrome browser instead of using the built-in browser.
Benefits:
Requirements: Chrome must be running with remote debugging enabled.
To enable this feature:
Connect to a visible Chrome window to observe Kilo's interactions in real-time:
macOS
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222 --user-data-dir=/tmp/chrome-debug --no-first-run
Windows
"C:\Program Files\Google\Chrome\Application\chrome.exe" --remote-debugging-port=9222 --user-data-dir=C:\chrome-debug --no-first-run
Linux
google-chrome --remote-debugging-port=9222 --user-data-dir=/tmp/chrome-debug --no-first-run
{% /tab %} {% /tabs %}