Adom Bridge
Public Made by Adomby adom
Adom Bridge unleashes your AI onto your full PC: full power, full safety. The AI breaks out of the container it runs in and onto your real machine, managing and running your entire laptop as you: launch apps, move files, drive any window, control KiCad, Fusion 360 or your real signed-in browser. Works with any AI, cloud or local (Claude Desktop, Claude Code, Codex), no Hydrogen required. Bridge and its bridges are an operating system for AI, with managed Node and Python runtimes, and a human-onl
Taskbar overlay: composite the bridge mark ONTO Chrome/Edge's profile avatar, don't replace it
Problem
desktop_taskbar {overlay:{badge:"adom"|icon}} uses ITaskbarList3::SetOverlayIcon, which has exactly ONE overlay slot per taskbar button and always renders in the lower-right corner (no position arg). Chrome/Edge already put the profile avatar in that slot. So when a driving bridge (native-browser / pup) sets its overlay, it EVICTS the profile avatar — and the user can no longer tell which profile (personal vs work) the window belongs to.
Real report (John, 2026-07-14): the "Adom is driving" badge sat on top of the Chrome profile face on both work and personal profiles, obscuring which was which. A progress-bar substitute was rejected (reads as "loading", not "an AI is controlling this browser").
Ask
When a bridge requests overlay:{badge:"adom"} on a window that carries an app-drawn overlay (Chrome/Edge profile avatars), AD should composite: render a 16-32px icon = the profile avatar + a small Adom mark in a corner, and set THAT as the overlay. Preserve "which profile" AND show "Adom is driving it."
Why this must live in AD, not the bridge
Windows has no GetOverlayIcon, so the current overlay (the avatar) cannot be read back to composite against. AD is the only layer that can derive the avatar independently:
hwnd -> PID(AD already maps this)- PID -> the Chrome/Edge process command line ->
--profile-directory=<Profile X> <UserData>\<Profile X>\Google Profile Picture.png(Google-signed-in), else the profile's built-in avatar, else a generic person glyph- composite the bridge mark (bottom-right, ~40% size) onto it; cache per (profileDir, mark); set as the overlay
Bridges keep calling the same overlay:{badge:"adom"} unchanged - AD does the compositing transparently. Add an opt-out composite:false for bridges that want the raw badge.
Fallback
If the avatar can't be resolved (non-Chrome window, no profile picture), fall back to today's behavior (set the plain Adom overlay). Never error.
Acceptance
- Driving a Chrome/Edge window shows the profile avatar WITH a small Adom corner mark; the user can still tell personal vs work at a glance.
- Clearing (
overlay:{badge:"none"}) restores the plain profile avatar. - Per-profile correct (each profile's taskbar button shows its own avatar + the Adom mark).
- No error when the avatar is unavailable.
Filed by the native-browser (adom-browser-extension) bridge maintainer. This is the blocker for a clean "Adom is driving" trust-tell that doesn't obscure the Chrome/Edge profile.