Pup - Puppeteer Bridge
Public Made by Adomby adom
pup is the AI's own browser: a real, full Chrome on the user's desktop that the AI fully controls (a sandbox, not the user's signed-in browser). Rides Bridge; pup_* verbs open windows and tabs, navigate, screenshot, and eval JS.
Releases 568
Standalone per-platform binaries to download and run, no tools needed. The newest is pinned on top.
Fresh-user defaults now match Johns working config, since the AUMID crash concern that kept them off is resolved and John confirmed they work great. A new user now gets per-window taskbar identity (aumidIcons on), jump lists (jumpLists on), the category icon style, and split taskbar grouping by default, instead of the old all-windows-stacked-under-one-Chrome-button mode. Existing users explicit choices are untouched via the _chosen tracking, so this only moves users who never set these keys
All releases showing 101-120 of 568
Overlay/HWND fix: resolve a window's OS handle by its unique (ai-thread: sid) title tag whenever it returns exactly one match, regardless of the titleTag setting. Fixes shared-profile windows (e.g. a 13-tab bridge-pages) that the geometry wiggle left ambiguous, so their taskbar overlay finally paints.
Freeze the jump-list on the first commit to the real category appId (not a beat later), collapsing the settle rebuilds too. Completes option B: one taskbar commit per window, then frozen.
Freeze the jump-list too (option B): once a window's menu is committed to its frozen identity, never rebuild it on later view/active-tab changes. Completes the stamp-once-then-freeze so multi-tab windows produce ZERO taskbar rebuilds after settle.
Stamp-once-then-freeze taskbar identity (option B): after a per-session window is branded with its first real category, freeze the appId so later category changes (e.g. adding a web tab -> mixed) never recreate the taskbar button, jump-list, or overlay again. Zero multi-tab churn; tile may be slightly stale by design.
Jump-list multi-tab churn: reset the debounce timer on every request so a multi-tab open (auth flip + tab-add) commits the menu ONCE after it settles, instead of rebuilding 2-3x.
v1.9.350: fix missing taskbar favicon overlay on the shared adom-you profile. The ownership guard (hwndBelongsToPup) refused every badge because the shared Chrome process pid was absent from the tracked pid set; now a pup window's unique ai-thread title tag confirms ownership and learns the owner pid onto the browser entry so sibling windows self-heal, while Edge and non-pup buttons stay protected.
Overlay badge refinement (John): drop the teal border (it wasted space and shrank the favicon). The favicon now sits on a full-bleed dark card the tone of the Windows taskbar (#202124), inset only 2px so it stays as large as possible (44/48) with a thin visible dark margin. Transparent favicons still get a clean backdrop; no border eating pixels.
Taskbar icons (John): remove the notch from the base tile — it is a FULL solid icon again — and move the 'background' onto the OVERLAY badge where it belongs. The overlay favicon now sits on a solid dark, teal-edged rounded card (composited behind it at 48px), so transparent site favicons no longer look bad painted onto the tile; every badge reads as one clean unit. PUP_ICON_GEN i6->i7 so Windows recreates the buttons with the un-notched tile.
Fix bridge instability on heavy pages (John: a heavy page should never crash the bridge; CDP mishandling). neutralizeDebugger kept Debugger.enable on for every tab's whole life, which streams a Debugger.scriptParsed event for every script the page parses — thousands on a heavy Babylon.js bundle — flooding the bridge's single event loop and de-opting V8; under concurrent heavy-page opens the loop starved and AD couldn't reach the bridge (error sending request). Now it disables Debugger right after clearing any inherited pause and detaches the session: freeze immunity kept (a page debugger; is a no-op with no client holding the domain), flood + de-opt + per-tab session leak gone.
Steer all pup windows to the shared adom-you profile (John): a thread passing its own named profile (nameplates, np-verify, nsf-draft) fragmented the doppelganger identity — separate login jar, no shared adom-you logins, no adom-you frame color. Now, outside genuine throwaway isolation (isolated:true / webSecurity:false / wikiView:public), any custom profile name is overridden to adom-you and the override is surfaced as _profileSteered in the response. A named {profile} no longer creates a separate durable jar; use isolated:true for a private throwaway.
Pup window frame color changed from bright teal (20,184,184) to the Adom near-black ground #0d1117 (13,17,23) per John: the teal was 'a bit ugly', wanted something closer to black but on-brand that still color-codes pup/adom-you windows as distinct from the user's real Chrome profiles. Applied via --install-autogenerated-theme on the adom-you (DEFAULT_PROFILE) launch.
Fix owner-chip toggle timeout: applyOwnerChipSetting awaited page.evaluate on every tab with no bound, so one slow/wedged page (a heavy 3D-viewer tab) hung the whole sweep and browser_set_identity/ownerChip toggles timed out. Each per-page evaluate is now raced against a 1.5s timeout, and browser_set_identity fires the repaint non-blocking, so toggling the chip on/off never hangs on a busy window.
Show the user's Adom identity in the floating owner chip: since Chrome's own profile chip cannot take a custom local image (Google sign-in only), the owner chip now leads with the user's Adom avatar + name. New verb browser_set_identity {avatarB64,name,enabled,clear} stores the identity in pup-settings and repaints live windows. Owner-chip injection (attachTab) and the live-apply path both render the round avatar; falls back to the hexagon glyph when no identity is set.
Fix multi-monitor park overflow: a freshly opened pup window is launched off-screen then parked by reading screen.availWidth/Height, which reflects whichever monitor the window momentarily sits on. On a multi-monitor setup that could size the window for a LARGER monitor while it lands on the smaller primary, overflowing off the bottom-right so page content past the fold was unreachable until the slow 120s placement sweep re-parked it. placeOnScreen now settles then re-reads the destination monitor's work area and re-clamps immediately if it differs, so a window is never left bigger than the screen it is actually on.
Fix debugger-pause freeze: every pup tab now skips ALL debugger pauses (Debugger.setSkipAllPauses+resume) so a page's 'debugger;' statement or a stray breakpoint can never freeze the window and its 3D viewer (John's wiki viewer locked up behind a 'Debugger paused in another tab' banner). Fix overlay-paint spam: dedup desktop_taskbar — only paint when the composed icon+tooltip+target actually changed since the last paint, instead of re-sending identical overlays every few seconds and flooding AD's activity log. Enforcer now treats a genuinely no-favicon page's generic glyph as final after 3 upgrade attempts (retried on navigation) rather than re-composing it every 10s forever.