← Commit history

README: document shadow-piercing finder, nbrowser_select, background-click focus fix, screenshot coord-map, session pinning + eager profile resolve

John Lauer ·e9521bcae6 · ·parent 96d8182
1 file changed +17
README.md+17
@@ -108,6 +108,23 @@ point it at, via the debugger/scripting APIs - never by loading external scripts  ## What's new +- **Custom-element / shadow-DOM sites just work** (Schwab, QuickBooks, and friends). The finder behind+  clicks/eval/select **pierces open shadow roots**, so a control whose real options hide in a web+  component is found by **visible text** or a **stable attribute** - no more falling back to fragile+  screenshot-coordinate clicks.+- **`nbrowser_select {label|near, optionText}`** - pick a dropdown option by its TEXT (custom *or* native):+  it opens the control, **waits** for the options, clicks the exact match, and **returns the selected+  value** so you can verify. This is what stops coordinate clicks landing on the wrong row of a+  virtualized list (mis-selecting a bank account by one row).+- **Background clicks that actually land** - a window fully occluded by your own maximized window used to+  make isTrusted clicks silently miss (Chrome occlusion). The extension now emulates focus so clicks/typing+  land **while the window stays in the background** - no focus theft, ever.+- **Exact screenshot→click mapping** - every `nbrowser_screenshot` returns a `viewport` coordinate-map+  (innerWidth/height, devicePixelRatio, scrollX/Y, resize ratio), so a screenshot pixel maps to a click+  coordinate precisely, even after the page scrolls.+- **No cross-profile mistakes** - `open_window` pins its session to the profile it opened in (later verbs+  auto-route there); `nbrowser_resolve_profiles` eagerly resolves each profile's email so keys are+  `chrome:[email protected]` up front instead of `pending-N`. - **The AI installs it for you, on a fresh machine, with nothing pre-installed** - proven end-to-end:   a brand-new adom-desktop with no bridge and **no system Node** goes from zero to a drivable, real   signed-in browser (the bridge reuses adom-desktop's managed Node so the native host always starts).