Skip to main content
Defaults applied to every browser-based test in the project. Individual tests can override any of these values.
momentic.config.yaml

Identity

"Chromium" | "Google Chrome" | "Chrome for Testing"
Default browser used by all tests in the project.
momentic.config.yaml
  • Chromium: lightweight, open-source browser supporting a basic feature set. Same engine Playwright and Cypress use.
  • Google Chrome: full Google Chrome build with extensions, PDF rendering, WebGL.
  • Chrome for Testing: headless-only Chrome optimized for automation.
string | null
User agent string sent on every request. Defaults to the current Chrome desktop UA. Set to null to disable the default override and use the browser’s native user agent (which then matches the runner’s OS).
momentic.config.yaml
momentic.config.yaml
string
Default IANA timezone. Defaults to America/Los_Angeles. Per-test settings override this.
momentic.config.yaml
boolean
Use the host machine’s timezone instead. When true, all timezone settings (project- and test-level) are ignored. Default: false.
momentic.config.yaml

Timeouts

number
Maximum wait time for a page to load, in milliseconds. Applies to new tabs and navigation events. Default: 8000.
momentic.config.yaml
number
Maximum wait time for smart waiting between steps, in milliseconds. Default: 5000.
momentic.config.yaml
number
Default maximum wait time for element check assertions to become true, in seconds. Element check steps with an explicit timeout are unaffected. Default: 5.
momentic.config.yaml
number
Default delay between keystrokes for type steps, in milliseconds. Type steps with an explicit delay are unaffected. Increase this if your app needs more time to react to each keystroke. Default: 25.
momentic.config.yaml
number
Default key hold time for press steps, in milliseconds: how long each key stays held between keydown and keyup. Press steps with an explicit delay are unaffected. Default: 0.
momentic.config.yaml

Headers, storage, and identity

Record<string, string>
Extra HTTP headers added to every request the browser makes. Useful for auth tokens or custom headers.
momentic.config.yaml
Record<origin, Record<key, value>>
Local storage values to seed per origin before the test starts. Origin must include scheme, host, and (if non-default) port. Useful for feature flags or cached auth.
momentic.config.yaml
string[]
Paths to unpacked Chrome extensions loaded into the browser before the test starts.
momentic.config.yaml
string[]
Browser permissions to auto-grant during the run. When omitted, all permissions are granted.
momentic.config.yaml
boolean
Ignore HTTPS errors like self-signed certificates. Useful for internal / development environments. Default: false.
momentic.config.yaml

Performance and stability

boolean
Disable intensive graphical operations (WebGL, hardware-accelerated raster). Speeds up runs on machines without a dedicated GPU. May break sites that rely on WebGL. Default: false.
momentic.config.yaml
boolean
Disable Chrome’s zygote process. Can reduce process overhead in some environments, but may break certain features. Default: false.
momentic.config.yaml
boolean
Block FullStory scripts from mounting during the run. FullStory’s high-volume DOM scanning can crash automated pages.
momentic.config.yaml

Run-data capture

boolean
Disable Momentic’s default recording of console logs, network requests, HTML snapshots, and element screenshots. These power the run viewer’s debug tabs. Disabling can improve perf on sites with high log volume. Default: false.
momentic.config.yaml
boolean
Disable console log recording during runs. Default: false.
momentic.config.yaml
boolean
Disable network request recording during runs. Default: false.
momentic.config.yaml

Page handling

boolean
Automatically expand iframes so Momentic can interact with elements inside them without configuring Act within iframe per step. Default: false.
momentic.config.yaml
boolean
Deprecated. Waiting for new tabs is inherently racy; use Switch tab steps instead.
Automatically switch to new tabs opened during the run. Default: false.
momentic.config.yaml
boolean
Default: true. Momentic reads the browser’s already-computed accessibility data. This is fast and stable, but can be incomplete on pages that never finish loading. Set to false to force the browser to rebuild the tree from scratch on every read (more complete on slow pages, but significantly slower, and can destabilize the browser on very large pages).
momentic.config.yaml
boolean | "inputs-only"
Default: true. Controls whether zero-opacity elements are visible to the AI locator agent and interactive steps.
Use hover steps to reveal hidden elements before interacting with them.
  • true: show all elements regardless of opacity.
  • false: filter zero-opacity elements out of the page context and block interactions on them. More closely mimics a human user.
  • inputs-only: still show zero-opacity <input> elements (useful for UI frameworks that style hidden inputs).
momentic.config.yaml

Locator and cache tuning

boolean | "always"
Default: always. Use Momentic’s algorithm to find the top-most interactable element when a target is covered by another element. Other frameworks throw or require force; this redirects to the covering element instead.
  • false: disabled.
  • true: only redirects on CLICK steps (backwards-compat).
  • always: redirects on all interactive steps.
See Global locator redirect for the full algorithm.
momentic.config.yaml
boolean
When globalLocatorRedirect can’t find a valid redirect target, force-click the original element anyway instead of failing actionability checks. Default: false.
momentic.config.yaml
boolean
Resolve element coordinates with a visual heuristic and use those coordinates for clicks, hovers, and typing. Default: false.
momentic.config.yaml
boolean
Ignore the href attribute when matching cached anchors. Useful on sites with auto-generated or rotating links. Only applies when the anchor has text content. Default: false.
momentic.config.yaml
boolean
Disable Levenshtein distance validation when resolving cached elements. When enabled, the cache accepts any element that passes CSS/hybrid selector matching and requirements checks without comparing its serialized HTML to the cached version. Default: false.
momentic.config.yaml
boolean
Disable HTML l-dist and template-matching cache fallbacks. Faster but less accurate. Cache entries can occasionally resolve to the wrong element. Default: false.
momentic.config.yaml
"off" | "test" | "prefer" | "always"
Hybrid selectors are in beta and may change.
Default: prefer. Hybrid selectors combine text content, classes, attributes, parent hierarchy, and shadow-DOM-piercing to identify elements more resiliently than CSS selectors.
  • off: disabled.
  • test: save and resolve hybrid selectors, but report mismatches to Momentic without using them.
  • prefer: resolve with hybrid selectors first, fall back to CSS.
  • always: only use hybrid selectors; fall back to AI on miss.
Hybrid selectors weight text content heavily. If you need a specific child in a hierarchy, use nth keywords with Disable cache.
momentic.config.yaml

AI context filtering

string[]
Extra HTML attributes that should never be pruned from AI context. Common testing attributes (data-test-id, aria-label, etc.) are always important. Suffix with * for a prefix match.
momentic.config.yaml
string[]
CSS class names that mark an element as important. Matching elements are never pruned from AI context. Suffix with * for a prefix match.
momentic.config.yaml
string[]
HTML attributes to strip from AI context AND ignore when matching cached elements. Use this for attributes whose values change between renders (e.g. framework-generated for IDs) that otherwise bust the cache every run. Suffix with * for prefix matches.
momentic.config.yaml
If the attribute is genuinely useful for identifying elements, list it under browser.importantAttributes instead.