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+1−1@@ -1,6 +1,6 @@ { "slug": "pup-bridge",- "version": "2.0.322",+ "version": "2.0.323", "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": [
page.json+1−1@@ -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.322",+ "version": "2.0.323", "tags": [ "skills", "pup",
tools/pup-dashboard+12−2@@ -269,7 +269,7 @@ h1 .dot{display:inline-block;width:11px;height:11px;border-radius:50%;margin-rig .hint{color:#00b8b1;margin-top:6px;font-size:13px} button{background:#00b8b1;color:#04262a;border:0;border-radius:7px;padding:9px 15px;font:600 14px inherit;cursor:pointer} button:disabled{opacity:.5;cursor:default}-.demo{margin-top:22px;padding:15px;border:1px solid #30363d;border-radius:9px;background:#161b22}+.demo{margin-top:22px;padding:15px;border:1px solid #30363d;border-radius:9px;background:#161b22}.transport{margin-top:12px;padding:12px;border:1px solid #30363d;border-radius:9px;background:#0d1117}.tstep{font:13px ui-monospace,monospace;color:#c9d1d9;margin-bottom:8px}.tstep #tstepn{color:#00b8b1;font-weight:600}.tstep #tstate{color:#8b949e;margin-left:8px}.tbtns{display:flex;gap:8px;margin-bottom:10px}.tbtn{background:#21262d;color:#e6edf3;border:1px solid #30363d;border-radius:7px;padding:6px 14px;font-size:16px;line-height:1;cursor:pointer}.tbtn:hover{border-color:#00b8b1;color:#00b8b1}.tbtn:active{transform:translateY(1px)}.tbtn.tstop{border-color:rgba(248,81,73,.5);color:#f85149}.tbtn.tstop:hover{background:rgba(248,81,73,.1)}.tbar{height:6px;background:#21262d;border-radius:3px;overflow:hidden}.tfill{height:100%;width:0;background:#00b8b1;transition:width .3s ease} .say{margin:0 0 14px;padding:13px 14px;border:1px solid #30363d;border-left:3px solid #00b8b1;border-radius:9px;background:#161b22} .chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px} .chip{display:inline-flex;align-items:center;gap:6px;border:1px solid #30363d;border-radius:999px;padding:5px 6px 5px 12px;background:#0d1117;color:#e6edf3;font:500 13.5px "Familjen Grotesk",system-ui,sans-serif}@@ -292,8 +292,18 @@ pre{white-space:pre-wrap;background:#0d1117;border:1px solid #30363d;border-radi <div id="leds"></div> <div class="demo"> <div class="lbl">See what pup can do</div>- <div class="det">Runs a short self-demo on your desktop: opens a window in the background, screenshots it, records a clip, and reports every light above.</div>+ <div class="det">A guided, narrated tour on your desktop (spoken and captioned): background window, taskbar tile and progress bar, screenshot, annotation, jump list. It plays on whichever desktop you are actively using, and you can pause, skip, or stop it any time.</div> <p><button id="demo">Run the demo</button></p>+ <div id="transport" class="transport" hidden>+ <div class="tstep"><span id="tstepn">1/11</span> <span id="tsteptitle">Intro</span> <span id="tstate"></span></div>+ <div class="tbtns">+ <button class="tbtn" id="tprev" title="previous step">⏮</button>+ <button class="tbtn" id="tplay" title="pause / resume">⏸</button>+ <button class="tbtn" id="tnext" title="next step">⏭</button>+ <button class="tbtn tstop" id="tstop" title="stop the demo">⏹</button>+ </div>+ <div class="tbar"><div id="tfill" class="tfill"></div></div>+ </div> <pre id="out" hidden></pre> </div> </div>