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.
SDK change: blocked_on_user is a required structured response (never bare-timeout a human wait)
From ab wiki #142/#137 (John): a new HARD rule in BRIDGE_SDK.md, shipping in the ab 2.1.30 pkg. Any bridge verb blocked on a HUMAN action - a permission prompt, an app modal, a login/2FA wall, an OS dialog - MUST return a structured non-terminal response naming it, whether or not it is streaming progress: {success:false, errorCode:"blocked_on_user", stillRunning:true, blockedBy:"", _hint:"<how to wait/retry>"}. Never a bare transport error or an HTTP timeout while a human decision is pending. This mirrors ab-core's own needs_approval / timed_out+stillRunning / bridge_installing_deps contract, so a cloud AI can always tell 'still working' vs 'waiting on the user' vs 'genuinely failed'. Nothing required of pup for the #142 deps-install case (ab-core handles that with bridge_installing_deps as of 2.1.30) - this is the general rule for any of pup's own verbs that can park on a human (e.g. a CfT profile login, a site's 2FA).