app
Pup - the AI's own browser
Public Made by Adomby adom
pup gives your AI a real browser on your desktop that it drives completely, in the background, signed in as you: windows that never jump in front of your work, one shared profile that learns your logins, and every window labeled on the taskbar with its AI thread's name.
← Commit history
Dev skill: park after page settle — the paint-raise must happen off-screen; re-asserts alone leave a visible blip
1 file changed
+9−6
dev-skills/pup-bridge-dev/SKILL.md+9−6@@ -355,12 +355,15 @@ must clear it first. (left/top/width/height, normal state) sized from the page's own `screen.availWidth/Height`, ONLY. - **Trusting that a confirmed park stays parked** → the open's FIRST cross-origin nav (welcome file:// → https) swaps renderer processes and re-shows the window at first paint — RAISING it- after the z-confirm passed (heavy sites paint late; the goto runs concurrently with the park).- A later same-window navigate does NOT raise (tested), nor does the badge (tested). The fix is- event-driven re-asserts: after the open's goto, at the page 'load' event, and after open_tab —- all `force:false` so a user-held window is never yanked. And the ONLY honest verify is the- Z-ORDER via `desktop_list_windows` (pup window below at least one non-pup window); if z cannot- be confirmed, the window goes BACK OFF-SCREEN — never leave a window that might be covering.+ after the z-confirm passed. A later same-window navigate does NOT raise (tested), nor does the+ badge (tested). Re-asserts after the raise still left a VISIBLE blip (another thread's window+ popped over John's work between paint and re-assert). THE fix (v1.8.68): **park AFTER the page+ settles** — wait for the load event (capped 2.5s) while the window is still OFF-SCREEN, so the+ paint-raise is invisible; only then bottom → place → z-confirm. First visible frame = full-size+ at z-bottom. A late (3s) `force:false` re-assert plus the open_tab re-assert remain as+ belt-and-suspenders. And the ONLY honest verify is the Z-ORDER via `desktop_list_windows`+ (pup window below at least one non-pup window); if z cannot be confirmed, the window goes BACK+ OFF-SCREEN — never leave a window that might be covering. - **`--start-maximized` + send-to-back after connect** → the window is foreground/maximized for 1–3s before you lower it = the visible pop. This is the naive version; off-screen launch replaces it. - **`SetForegroundWindow(usersWindow)` alone** → silently no-ops (foreground lock). You MUST use the