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
desktop_list_monitors misses secondary monitors and reports inconsistent units (blocks pup multi-monitor placement)
What
desktop_list_monitors reports only ONE monitor on a machine that has two. Chrome running on the same box sees both.
Repro (ADOMGPU, AD 1.9.116, 2026-07-15)
adom-desktop --target ADOMGPU desktop_list_monitors {}returns a single entry:Primary 1920x1080 at 0,0.- Ground truth from Chrome on the same box:
screen.isExtended === true, and moving a window right of x=1440 lands it on a second display reportingavailLeft=1440, width=1844, height=1152(probe method: place a window at x=1500 and read itsscreenobject). - So the real layout is: monitor 1 = 1440x900 logical at 0,0 (note: ALSO disagrees with the 1920x1080 AD reports for the primary), monitor 2 = 1844x1152 logical at 1440,0.
Two sub-bugs
- The second monitor is missing from the list entirely (enumeration likely stops at the primary, or queries a stale/session-scoped display set on this RDP-attached VM).
- The primary's reported size (1920x1080) matches neither the logical size Chrome sees (1440x900) nor an obvious physical size — units/DPI handling looks inconsistent. Related:
desktop_set_window_boundsdocuments physical px; whichever unit list_monitors uses, the two verbs should agree so a caller can feed one into the other.
Why pup cares
pup 1.8.69 added multi-monitor window placement (open pup windows on a chosen monitor). It currently has to discover the monitor map empirically (move a probe window, read screen.availLeft/width back) because list_monitors is wrong. With a correct desktop_list_monitors (all monitors, logical+physical bounds, primary flag, per-monitor scale), pup deletes the probe.
Ask
- Enumerate ALL monitors (EnumDisplayMonitors), not just the primary.
- Per monitor: logical bounds, physical bounds, work area, scale factor, primary flag, index/name.
- Make the units explicit in the response and consistent with desktop_set_window_bounds.