New Features
- Added conditional screenshots with
screenshot --if-changedto skip unchanged captures and--threshold <0-1>to tolerate small pixel differences. Screenshot history is scoped to each tab and capture mode, and unchanged captures omit the image path to save tokens (#1813) - Added automatic snapshot deltas with
snapshot --delta, which returns a full baseline followed by an unchanged revision or compact structural changes. Use--fullto refresh the baseline (#1811) - Added persistent snapshot refs for surviving DOM elements across same-document changes. Replaced elements and navigated pages or iframes invalidate their refs without recycling identifiers (#1812)
- Added human-like pointer movement with session
--input-mode, per-action--humanfor clicks and drags, and reproducible curvedmouse movepaths (#1810) - Added recording presentation tools:
--cursorrenders an animated pointer and click ripple, while--contact-sheetsaves a timestamped PNG summary of visual changes (#1807, #1808) - Added stateful auth vault login with
auth login --no-navigate, which fills an already prepared login page after verifying its origin against the credential URL (#1771) - Added WebMCP catalog updates to normal browser responses. Concise, content-bounded summaries appear on initial discovery and catalog changes, while full schemas remain opt-in (#1842)
Improvements
- Improved recording frame timing by holding the latest Chrome frame between repaints so the output duration follows the requested frame rate (#1806)
Bug Fixes
- Fixed CDP transport recovery and shutdown so malformed transport messages do not strand unrelated commands and failed initialization disconnects cleanly (#1739)
- Fixed dropdown label matching to normalize whitespace, including non-breaking spaces, when selecting options by visible label (#1736)
Documentation
- Clarified reliable browser wait strategies by recommending page-specific selectors, text, URLs, or JavaScript conditions and reserving
networkidlefor pages known to become quiet (#1834)