Altium - the Altium Bridge
Public Made by Adomby adom
Adom Bridge for Altium Designer: a resident DelphiScript agent gives the AI eval, the 1,100-command process launcher, all 8 EDA surfaces with screenshots, compile/ERC, DRC, OutJob outputs, native SchLib/PcbLib authoring with STEP 3D bodies, and dialog handling by PID.
Document verbs steal the foreground (open/close/place_on_sch/install_library/agent restart); a background panel-tab verb
Measured on ConfRoomROG (ADDevelop, altium-bridge 0.2.15/0.2.16, 2026-09-19) while John was typing in Hydrogen on the same box: every few calls Altium jumped in front of his window and took the keyboard. His words: "why do you always have to force altium to the foreground when you're tweaking these symbols ... it really disrupts my ability to type in the ah app".
The capture verbs behave (show_symbol / show_footprint / show_3d_chip / show_schematic / show_3d_board restore INTO the background and hand focus straight back; shot.rs). The steps that raise the window are the document ones:
altium_open_document,altium_close_documentaltium_place_on_sch(CreateNewDocumentFromDocumentKind + Client.ShowDocument)altium_install_library(opens the library)altium_agent_stop/altium_agent_start(script execution activates the main window)altium_run_commandwith Sch:Zoom / PCB:Zoom
Ask: the same etiquette as the capture verbs on every verb that opens, creates or activates a document: record desktop_get_foreground before, do the work, and if Altium's hwnd took the foreground, hand it back (desktop_set_foreground on the recorded hwnd) before replying. A windowEtiquette field on each reply so the AI can see whether the user's window was disturbed. Until then the AI hint should say: batch the document work, and stop touching Altium the moment the proofs are in.
Related wish from the same session: the "ganged-up view" John likes (symbol on canvas + 3D chip in the Editor panel preview + the footprint preview in the SCH Library panel). There is no server process that activates a docked panel TAB (Client:CustomizeResources Action=Show|ObjectKind=Panel|ID=TSchLibPanel only makes sure the panel exists); a panel {id, action: show|focus} verb (UIA on the dock tab, background, no foreground steal) would make that view a one-liner.