aboutsummaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorTianren Dong <tianrendong.dtr@gmail.com>2026-05-13 01:43:33 -0400
committerTianren Dong <tianrendong.dtr@gmail.com>2026-05-13 01:43:33 -0400
commit07cf31df3cd47d18d8a067c45a667632fb3b8925 (patch)
treef2a030714c5a67e4991b72b775083db1f0725f15 /README.md
parent6478feb07293fa439560564362f9e7fd5c7e5deb (diff)
pi-chrome 0.11.0: smart-auto trusted mode default + rename to Pi Chrome Connector
Trusted-input mode default flips from 'off' to 'auto': - Synthetic events still run first for every chrome_* call. - If a click produced no page change AND the target's label looks like a user-activation-gated affordance (play/copy/share/sign-in/etc), or the page just emitted NotAllowedError / 'transient activation required', the call is silently retried via chrome.debugger (CDP). - Typing auto-retries when the input value didn't change at all (editor rejected synthetic input). - Result carries autoRetried=true + autoRetryReason + syntheticAttempt so callers / agents see the upgrade happened. - Yellow debugger banner now appears only for the retry, not every call. Companion extension renamed 'Pi Existing Chrome Profile Bridge' → 'Pi Chrome Connector' (manifest, action title, SW client name, README, slash-command notify strings). One-time chrome://extensions reload needed to pick up the new name; auto-reload mechanism handles the rest. /chrome-doctor explains the active mode and what smart-retry does. /chrome-trusted picker shows 'auto (current)' first; on-mode now warned as 'banner permanently visible'. chrome_click / chrome_type tool descriptions explain auto-retry.
Diffstat (limited to 'README.md')
-rw-r--r--README.md2
1 files changed, 1 insertions, 1 deletions
diff --git a/README.md b/README.md
index d6f2834..82468bf 100644
--- a/README.md
+++ b/README.md
@@ -69,7 +69,7 @@ pi-chrome v<version>
By default, `chrome_*` clicks and keystrokes are **synthetic** DOM events (`event.isTrusted === false`). They drive React/Vue/Angular state correctly but **do not** satisfy Chrome's user-activation gates: clipboard write, fullscreen, file picker, and autoplay all need a real user gesture.
-pi-chrome can optionally route input through `chrome.debugger` (CDP `Input.dispatchMouseEvent` / `Input.dispatchKeyEvent`) so each event arrives as `isTrusted=true`, satisfies user-activation, and bypasses site bot-detection that filters synthetic events. The tradeoff: Chrome pins a yellow *"Pi Existing Chrome Profile Bridge started debugging this browser"* banner to the top of any debugged tab.
+pi-chrome can optionally route input through `chrome.debugger` (CDP `Input.dispatchMouseEvent` / `Input.dispatchKeyEvent`) so each event arrives as `isTrusted=true`, satisfies user-activation, and bypasses site bot-detection that filters synthetic events. The tradeoff: Chrome pins a yellow *"Pi Chrome Connector started debugging this browser"* banner to the top of any debugged tab.
Usage: