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 1133
Standalone per-platform binaries to download and run, no tools needed. The newest is pinned on top.
Windows survive an upgrade AND the user's close is final. pup relaunches a missing window only when it knows the browser died for this pass (it ended it for an upgrade or restart, it crashed, or it was already dead at boot); any other missing window was closed and is forgotten. Closing a window during a relaunch queue cancels the queued relaunches of that thread (its taskbar icon). 2.0.681 dropped every window after the first on an upgrade; 2.0.680 and earlier reopened windows the user closed while pup restarted (John, AdomLapper, 2026-09-23). Promoted to public on 2026-09-23.
Stable link for websites and docs: /download/adom/pup-bridge/latest
All releases showing 21-40 of 1133
extension lane: a stuck mouse button is released before the next mouse event (the jump-list gate caught it; same bookkeeping as the CDP branch) Promoted to public on 2026-09-20.
skills + README for the public publish: extension-lane mental model, CDP off by default, isolation per lane, landed, vault; no code change from 2.0.662
dock health: serve /dashboard/status and /dashboard/health as aliases of /status (the dock appends its health path to the served URL; the LED read HTTP 404)
skills only: one owned window + explicit tabs (PR #1 ported), Windows Firewall prompt note (#91); no code change from 2.0.660
pup-bridge#113/#112: per-profile extension lanes (isolated:true and profile: open their own lane browser, no CDP); throwaway lanes end with their last window, staging removed, swept at boot
pup-bridge#113/#112: the extension lane is per profile; isolated:true and profile: open their own lane browser with their own staged extension, token and queue, no CDP; throwaway lanes end with their last window and are swept at boot
extension lane: no readiness wait or page scripts on blank/extension pages (20 s per about:blank navigate); smoke gaps closed (download fields, wiki view + auto-sign, owner chip); adom-desktop -> adom-bridge; CDP lane off by default
diagnostic: readiness wait logs each attempt
extension lane: page scripts after the wiki view flip; readiness wait accepts about:blank; carries the smoke gap fixes, the adom-bridge rename and the CDP-off default
extension lane: wait for the navigated document before page scripts, the landed probe and the wiki probe (scripts ran in the old document); owner chip, download fields, wiki view; adom-desktop -> adom-bridge; CDP lane off by default
extension lane: owner chip script built exactly as the CDP path builds it (an unreplaced placeholder threw before the chip drew); download fields, wiki view + auto-sign; adom-desktop -> adom-bridge; CDP lane off by default
extension lane: pup_download reports savedTo/bytes at top level; wiki view probe + desktop-token auto-sign; owner chip + floaty per page (the smoke on the extension lane found all three); carries 2.0.652 rename + CDP off by default
adom-desktop -> adom-bridge everywhere (vault service renamed with in-store key migration); CDP lane off by default (cdp_lane_disabled), John: the extension lane must solve every use case
HOTFIX: vault migration no longer holds the cache lock across save (2.0.650 hung every vault verb) and saves before deleting legacy entries; upgrade cycle takes hwnds from live sessions
vault migration keyed by the real service name (adom-desktop-pup); upgrade cycle waits for the old windows to vanish before relaunching them
pup-bridge#122 DPAPI secret store (no Credential Manager slot per login; legacy entries migrated and freed); #107 selector targeting for pup_input_dispatch; #106 captured metadata on every screenshot + identity guard on the OS-window path; #105 recording encode is a pollable job
pup-bridge#104 fetch_url: credentials fallback for wildcard CORS, binary-safe body (bodyBase64 + sha256), typed failure stage; #120 trusted input on the extension lane (Input.* through the worker's cdp action); #112 isolated:true mints an iso- profile removed on close; #90 slow opens answer loading:true after 35 s and finish in the background
pup-bridge#121: a stale lane worker after an upgrade is cycled through the crash-restore path (every window relaunched from its file); worker version reset on every lane kill; orphan sweep at launch; pup_readiness orphanedBrowser
pup-bridge#121: orphaned lane browser ended at launch (WMI by profile dir) and reported by pup_readiness; no in-place worker reload after an upgrade, pup's own kill + recovery restore instead
pup-bridge#119: HTTP auth from the vault on the extension lane (retry keyed per request); no_credential on navigate/fetch; pup_fetch_url on the extension lane; skill note