- Headless documentation - Browser control,made useful. - Headless gives an agent a persistent browser through a small, safe CLI. Test a page, capture evidence, and inspect a failure. + + + Headless documentation + + + + + Browser control, + + made useful. + + {plainText(documentation.introduction)} 01 / First run Start a session. - Start the host, create a session, then visit the app. The session stays isolated until you close it. - {`headless start\nheadless session create qa\nheadless --session qa visit localhost:3000/designers/dashboard\nheadless --session qa inspect --context summary --task "click Continue"`} - On macOS, agent startup leaves your current app in front. Use headless config set startup-presentation foreground to make the old foreground behavior persistent, or set it to background to restore the built-in default. Inspect it with headless config get startup-presentation. The headless start --foreground and --background flags override the setting for one new host; they do not reorder a running host. + + Start the host, create a session, then visit the app. The session + stays isolated until you close it. + + {documentation.firstRunCommands} + {plainText(documentation.startupPresentation)} 02 / A QA workflow Capture the proof. Record the path you need, then stop and create a report. - {`headless --session qa record start --fps 10 --format mp4\nheadless --session qa click --role button --name Continue\nheadless --session qa wait --url /next --settled\nheadless --session qa record stop --output dashboard-flow.mp4\nheadless --session qa report create --output pr-report.json`} + {documentation.qaWorkflowCommands} 03 / Command groups Use intent, not pixels. - {coreCommands.map(([title, commands, description]) => {title}{commands}{description})} + {documentation.commandGroups.map((group) => ( + + {group.title} + {group.commands} + {plainText(group.description)} + + ))} 04 / Context pruning Reveal only what matters. - Start with {'inspect --context summary --task "..."'}. For large pages, request an outline, choose a structural @rN reference, and inspect only its text or actions with --within. Bound results with --limit, --budget, and --depth; use full --text only as an explicit broad-page escape hatch. + {plainText(documentation.contextPruning)} 05 / Scrollable evidence Capture the whole scroll. - Use screenshot --every-viewport --output dashboard-scroll for up to 80 viewport-height stops, always including the bottom; bounded results report truncated and totalPoints. Section series capture headings and regions, and both modes restore the original scroll position. Add --format jpg for JPEG series; PDF requires --full-page. + {plainText(documentation.scrollableEvidence)} 06 / Safety by default Keep the browser local. - Headless uses a private Unix socket, not a public DevTools port. Only HTTP(S) navigation is allowed. Diagnostic secrets are redacted. + {plainText(documentation.security.slice(0, 3).join(" "))} - Linux: use the supplied Docker runtime or native Chromium. Ubuntu Snap Chromium is not supported for repeated navigation. - macOS: build with Xcode Command Line Tools, then use the visible WKWebView host through the same CLI. + {documentation.platforms.map((platform) => { + const name = platform.startsWith("macOS") ? "macOS" : "Linux"; + return ( + + + {name}:{" "} + {plainText(platform).replace( + new RegExp(`^${name}[^:]*:\\s*`), + "", + )} + + + ); + })}
- {proof.metric} · vs {proof.against} - {proof.value}% + + {proof.metric} · vs {proof.against} + + + {proof.value} + % + {proof.description}
+ 0{index + 1} - {title}{description} + + {title} + {description} + ))} @@ -220,7 +353,8 @@ export default function Home() {