browse.json
Project-level configuration file for @ulpi/browse.
Overview
Create a browse.json file in your project root to set default options. Every command respects these settings unless overridden by CLI flags.
{
"session": "my-agent",
"json": true,
"contentBoundaries": true,
"allowedDomains": ["example.com", "*.api.io"],
"idleTimeout": 3600000,
"viewport": "1280x720",
"device": "iPhone 14",
"runtime": "playwright"
}Fields
| Field | Type | Default | Description |
|---|---|---|---|
session | string | "default" | Named session for isolation |
json | boolean | false | Wrap output as {success, data, command} |
contentBoundaries | boolean | false | Nonce-delimited output for LLM safety |
allowedDomains | string[] | [] | Block navigation outside these domains |
idleTimeout | number | 1800000 | Session auto-close timeout (ms) |
viewport | string | "1920x1080" | Default viewport size |
device | string | — | Device emulation preset |
runtime | string | "playwright" | Browser runtime (playwright, rebrowser, lightpanda, chrome) |
Precedence
CLI flags override browse.json values. Environment variables override both.
CLI flags > Environment variables > browse.json > Built-in defaults