Stealth Mode

View as Markdown

Stealth mode makes browser runtimes harder to detect as automated. It patches common detection signals and optionally adds human-like mouse movements, click timing, and scrolling.

Enabling stealth

humanize

Enable human-like behavior simulation when launching a runtime:

1const runtime = await workspace.runtimes.browser("main").playwright({
2 mode: "ephemeral",
3 config: {
4 humanize: true,
5 },
6});

When humanize is enabled:

  • Mouse movements follow natural Bezier curves instead of teleporting
  • Random micro-movements are added between actions
  • Click timing varies realistically
  • Scrolling mimics human patterns
  • Typing has variable keystroke delays

humanizePersonaId

Each persona ID (0–124) represents a distinct behavioral profile — different movement speeds, curve patterns, and interaction styles:

1const runtime = await workspace.runtimes.browser("main").playwright({
2 mode: "ephemeral",
3 config: {
4 humanize: true,
5 humanizePersonaId: 42,
6 },
7});
ParameterTypeRequiredDescription
humanizebooleanNoEnable human-like behavior
humanizePersonaIdnumberNoPersona ID (0–124) for consistent behavioral patterns

Use a fixed persona ID when you want repeatable behavior across runs. Omit it for random selection.

What stealth patches

Under the hood, stealth mode patches common automation detection points:

  • WebDriver flags — Hides navigator.webdriver and related properties
  • Browser fingerprint — Normalizes canvas, WebGL, and audio fingerprints
  • Timing patterns — Randomizes execution timing to avoid detection
  • Chrome DevTools Protocol — Masks CDP connection signals

Combining with other features

Stealth mode works well with other anti-detection features:

1const runtime = await workspace.runtimes.browser("main").playwright({
2 mode: "profile",
3 profileId: "my-profile",
4 config: {
5 humanize: true,
6 humanizePersonaId: 7,
7 solveCaptchas: true,
8 proxy: {
9 type: "http",
10 host: "residential.proxy.com",
11 port: 9090,
12 },
13 },
14});

This gives you a persistent identity (profile), human-like behavior, automatic captcha solving, and residential proxy — all in one runtime.