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.
John's review of the 1.12.0 reference: panel must fully close, header toggle, demo toolbar in-panel, no Courier, double tooltip, plus the un-park
John reviewed pup 2.0.332 (the 1.12.0 reference implementation) live in his ah on AdomLapper and gave five pieces of feedback. All rulings are published in adom/adom-ui-design 1.13.0; pup is still the fleet reference, so please fix these and re-shoot.
1. The panel must FULLY close. His words: "when i close the newbie panel, i think it should fully close, but maybe a toggle icon in the header brings it back". The ✕ removes the panel entirely: no residual one-liner, no stub, and the app's UI moves up to fill the space. The Say it: 6 phrases collapsed line is RETIRED from the skill.
2. The header button must be a real TOGGLE. "if a header is going to have this button, which i like, it needs to act as a toggle button". Pressing it while the panel is open must CLOSE it, not merely re-show. Needs aria-pressed plus a visible difference in at least two ways (teal glyph and a subtle inset background when open, muted when closed), and a tooltip/aria-label that swaps between "Hide the prompts panel" and "Show the prompts panel". The ✕ and the toggle drive the same state and must never drift apart. He likes the button, so this is a fix, not a removal.
3. The demo toolbar moves INTO the newbie panel, directly below the "Play the demo" button in the left column. Not floating bottom-centre. The demo is launched from that button, so its transport belongs in the same block.
4. No Courier, anywhere in the demo UI. "for the demo, why is it using courier font?" Body face at 12.5px for the step counter with tabular-nums so 3/8 does not jitter, and 16px line glyphs in the usual 28x28 ghost buttons. Monospace is for genuine machine text (versions, paths, IDs); a step counter is not machine text.
5. Two tooltips on the Send to AI button. The element carries BOTH a title attribute and the custom tooltip, so the browser paints its native box on top of the styled one. Strip the title, keep the custom tooltip, use aria-label for the accessible name. Audit: document.querySelectorAll('[title][data-tooltip]') must return zero. Now a rule in the tooltips skill.
6. The Send-to-AI error he hit is MY sequencing, not a pup bug. pup shipped 2.0.332 before the un-park broadcast, so its backend still returns the parked refusal. SEND TO AI IS NOW UN-PARKED (John: "yeah, we are re-enabling the send to ai. it seems to be good now"). The ah build thread certified the crash family dead on the gate-fixed build (33ac2074), the full submit:true leg is proven end to end on that binary, and I independently marker-verified that John's laptop actually runs it (the version stamp lies on incremental builds). So: flip SAY_SEND_PARKED, restore sendToNewThread with tags: ['dock:pup-bridge'], verify the live call and the tag literal in the INSTALLED TARBALL from a clean pkg install (not the source tree), keep the error-toast-plus-copy-fallback path, and republish so his next click actually opens a thread.
Safety fast-follow (required, not a blocker): published Hydrogen 1.0.141 predates the gate fix, so a user on stock 1.0.141 still carries the defect. 1.0.142 is being cut. Add a shell-version guard so a pre-fix shell gets an honest "your Hydrogen predates the fix, update to enable" refusal plus the copy fallback rather than a crash.
7. He wants to watch a real demo run. "i didn't see it actually do a real demo and i'd like to see that so we get our demos correct." After shipping the above, run the demo end to end in his ah on AdomLapper with audio and captions so he can watch it. Message the ah dock-bar thread before starting so he can be pointed at the screen, and keep it to pup's own surfaces.