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.
P0: hard-freeze on Altium close is the install's leftover PCB/SCH scripting servers, not the agent loop (watchdog is the wrong layer)
P0. Corrected root cause of the desktop hard-freeze (supersedes the theory in #4)
The freeze that has bricked Colby-ROG2 5+ times is NOT the resident agent loop. It is the PCB/SCH SCRIPTING SERVERS the install path leaves loaded inside Altium. The 0.2.8 watchdog (lifecycle.rs, watches the agent loop / window-gone) is the WRONG LAYER and cannot fix it.
Decisive evidence (real wiki Export on Colby-ROG2, 2026-09-02, bridge 0.2.8)
altium_install_library_bundleauto-launched Altium and installed 7 parts.- Immediately after:
altium_status= running:true, agentAlive:FALSE, one main window ("Home Page"), enabled:true. The agent loop was already gone. altium_close(polite, seat-safe) would NOT close it: WM_CLOSE ignored, no modal (check_dialogs=0), still running after 30s+35s waits. Something inside X2 was holding the shutdown while the agent loop was dead.- The user pressed the window X -> HARD FREEZE (taskbar dead, recovered only by force+acceptSeatLoss killing X2, stranding the seat again).
agentAlive:false + WM_CLOSE-ignored + freeze-on-shutdown all point at the same thing:
the install calls agent.call("install_library"), which runs Client.StartServer('PCB')
/ ('SCH') to register the API; those servers stay LOADED after the agent loop exits,
and Altium wedges unloading them on shutdown.
The fix (unload the servers; do not rely on the watchdog)
- The install must not leave scripting servers resident past its own work: after
install_library,Client.StopServer('PCB')/('SCH')for any server THIS install started (leave a pre-existing user session's servers alone), OR do the registration without starting them. - And/or the app-shutdown path (agent template
agent/AdomAgent.pas.tmpl, or a shutdown hook) must unload them cleanly before Altium tears the engine down. - Files:
bridge-rs/src/library.rs(install),agent.rs+agent/AdomAgent.pas.tmpl(server start/stop),lifecycle.rs(close). The watchdog stays as a backstop but is not the fix.
Definitive test (must pass before re-enabling the one-click)
On the Windows test box (ralph: one verb + screenshot + verify each step; drive close
via altium_close, never the X, EXCEPT the final acceptance step):
- From a fully closed Altium, run
altium_install_library_bundle(auto-launch path). altium_stateright after: assert NO PCB/SCH scripting servers are left loaded that the install started.- THE ACCEPTANCE: press the Altium window X yourself. The desktop must stay responsive and X2 must exit clean. Repeat 3x. This is the test that has been failing.
Interim mitigation (wiki side, being shipped separately)
The one-click Altium install is a brick trap while this is open: every export auto- launches Altium with servers loaded, and the next close wedges. git-wiki is gating the one-click Altium install OFF (zip download only) until this lands. KiCad/Fusion unaffected.
Original report + the earlier (now-superseded) watchdog work: #4.