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
package.json+2−2@@ -1,6 +1,6 @@ { "slug": "pup-bridge",- "version": "2.0.548",+ "version": "2.0.549", "type": "app", "description": "The pup SKILL PACK \u2014 the AI skills that teach a cloud/container AI how to drive the Adom Desktop Puppeteer (pup) bridge (browser_* verbs): the everyday `pup` skill plus focused sub-skills for windows/sessions/tabs, screenshots+recording, browsers+Chrome install, and driving the Adom wiki. Installs into ~/.claude/skills + ~/.codex/skills. DOCS ONLY \u2014 this is NOT the bridge runtime. The bridge itself (the Node program that drives the browser) runs on the DESKTOP: Adom Desktop bundles it and auto-installs/updates it, and it's published separately on the Releases tab as adom-bridge-puppeteer-v<ver>.zip. The pkg version is kept in lockstep with the Release version so the page's max version row always carries BOTH a pkg tarball (skills) and a runtime zip (bridge) \u2014 a skills-only or runtime-only bump on the top row breaks constraint installs. TL;DR: pkg install = the skills for your AI; the bridge = the Release zip, which Adom Desktop manages for you.", "keywords": [@@ -147,5 +147,5 @@ "prompt": "Download the puppeteer-bridge zip from the wiki and walk me through server.js" } ],- "changelog": "Match Chrome for Testing to the user's installed Chrome: CFT_BUILD_ID 148.0.7778.97 -> 152.0.7977.82 (the CfT build closest to the measured installed Chrome 152.0.7977.83). Pup drove CfT 148 while presenting 152 in the UA, a version mismatch that shows in the TLS ClientHello: the extension SET Chrome offers changes between 148 and 152 (post-quantum key share, ECH, cert compression roll in over versions), which is where the lane's JA4 diverged from real Chrome and where Akamai on analog.com keys. Matching the version makes the UA rewrite truthful and the ClientHello native-152. The box fetches 152 on the next pup_prewarm / ext open (~150 MB); the identity brand-list shim still runs because CfT omits the Google Chrome brand regardless of version."+ "changelog": "A Chrome-for-Testing version bump now actually fetches the new build. detect_cft falls back to any cached CfT so an offline box still drives, but ensure_background short-circuited on that fallback, so 148 stayed cached and the pinned 152 was never downloaded. ensure_background now gates on the PINNED build: present = ready; missing = download it in the background while a cached fallback drives meanwhile, so a box upgrades on its own after a bump." }
page.json+2−2@@ -4,7 +4,7 @@ "slug": "pup-bridge", "title": "Pup - Puppeteer Bridge", "brief": "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.",- "version": "2.0.548",+ "version": "2.0.549", "tags": [ "skills", "pup",@@ -167,5 +167,5 @@ "pup-bridge verbs are invoked through the adom-bridge CLI, not through a binary this package installs, so prefix rules cannot reach them." ] },- "changelog": "Match Chrome for Testing to the user's installed Chrome: CFT_BUILD_ID 148.0.7778.97 -> 152.0.7977.82 (the CfT build closest to the measured installed Chrome 152.0.7977.83). Pup drove CfT 148 while presenting 152 in the UA, a version mismatch that shows in the TLS ClientHello: the extension SET Chrome offers changes between 148 and 152 (post-quantum key share, ECH, cert compression roll in over versions), which is where the lane's JA4 diverged from real Chrome and where Akamai on analog.com keys. Matching the version makes the UA rewrite truthful and the ClientHello native-152. The box fetches 152 on the next pup_prewarm / ext open (~150 MB); the identity brand-list shim still runs because CfT omits the Google Chrome brand regardless of version."+ "changelog": "A Chrome-for-Testing version bump now actually fetches the new build. detect_cft falls back to any cached CfT so an offline box still drives, but ensure_background short-circuited on that fallback, so 148 stayed cached and the pinned 152 was never downloaded. ensure_background now gates on the PINNED build: present = ready; missing = download it in the background while a cached fallback drives meanwhile, so a box upgrades on its own after a bump." }