app
KiCad - the KiCad Bridge
Public Made by Adomby adom
Reference implementation of the KiCad bridge: multi-instance Python server, forward path via kicad-cli, reverse path via in-process plugin. Most complex of the three bundled bridges.
← Commit history
v0.9.126: find_menu_command returns (id,label) - 0.9.125 passed the tuple into PostMessageW (ctypes ArgumentError killed the demo job at beat 1)
6 files changed
+11−9
BRIDGE_VERSION+1−1@@ -1 +1 @@-0.9.125+0.9.126
adom-bridge-kicad-manifest.json+5−5@@ -1,15 +1,15 @@ { "manifest_version": 1, "name": "kicad",- "version": "0.9.125",- "url": "https://wiki.adom.inc/download/adom/kicad-bridge/0.9.125/adom-bridge-kicad-v0.9.125.zip",- "sha256": "0a449a7ea1bea4fc5d6e443e9e74c64e8bb73c0040a405ce035ca7320f040d87",- "size": 412630,+ "version": "0.9.126",+ "url": "https://wiki.adom.inc/download/adom/kicad-bridge/0.9.126/adom-bridge-kicad-v0.9.126.zip",+ "sha256": "396e82de127b5688602fa4537318599e14ee185f6b191371943a4604982caf6c",+ "size": 412683, "verbPrefixes": [ "kicad_" ], "healthEndpoint": "/status",- "released_at": "2026-08-16T18:05:23Z",+ "released_at": "2026-08-16T18:07:07Z", "hero": "https://wiki.adom.inc/blob/app/kicad-bridge/kicad-hero.png", "languages": [ "Python",
adom-bridge-kicad-v0.9.126.zipadded⋯ 1 unchanged line ⋯
bridge.json+1−1@@ -2,7 +2,7 @@ "manifest_version": 1, "name": "kicad", "displayName": "KiCad EDA",- "version": "0.9.125",+ "version": "0.9.126", "description": "Reverse bridge for KiCad \u2014 board/schematic introspection, lint via kicad-cli, plugin install, multi-instance probe, in-process DRC.", "homepage": "https://wiki.adom.inc/adom/adom-bridge", "author": "Adom Inc.",
handlers/open_footprint_editor.py+2−1@@ -527,7 +527,8 @@ def handle_open_footprint_editor(kicad_info: dict, args: dict) -> dict: if (w.get("title") or "").startswith("KiCad") or "KiCad" == (w.get("title") or "").strip()[:5]), None) if _pm:- _pm_fp_id = win_menu.find_menu_command(_pm["hwnd"], "footprint editor")+ _fid, _flabel = win_menu.find_menu_command(_pm["hwnd"], "footprint editor")+ _pm_fp_id = int(_fid) if _fid else None except Exception: _pm_fp_id = None if not fp_hwnd:
handlers/open_symbol_editor.py+2−1@@ -514,7 +514,8 @@ def handle_open_symbol_editor(kicad_info: dict, args: dict) -> dict: cmd_id = None try: from handlers import win_menu- cmd_id = win_menu.find_menu_command(kicad_hwnd, "symbol editor")+ _cid, _label = win_menu.find_menu_command(kicad_hwnd, "symbol editor")+ cmd_id = int(_cid) if _cid else None except Exception: cmd_id = None if cmd_id: