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
plan: IPC client verified on Windows against KiCad 10.0.5
1 file changed
+2−1
docs/rust-port-plan.md+2−1@@ -9,6 +9,7 @@ Written 2026-09-11 from a full audit of the 0.9.350 source, the Adom Bridge (ab) | 2026-09-11 | Phase 0 shipped to insiders as 0.9.351: dialog pre-emption seeding, dead PowerShell and unused modules removed. Gate on ConfRoomROG: 71 pass, 1 fail (the known idle-box foreground grant on `kicad_launch`), 15 skip. | | 2026-09-11 | Phase 1 started. Rust workspace under `rust/` on this page: `kicad-platform` (Windows, macOS, Linux implementations behind one trait), `kicad-core`, `kicad-bridge`. 13 headless verbs (describe, status, readiness with alternatives, list_versions, diagnostics, run_drc, run_erc, the five exports, uninstall). Windows exe is 598 KB with no runtime; smoke-tested on ConfRoomROG: KiCad 10.0.5 found, DRC on a real board in 2.5 s, SVG and Gerber exports. macOS and Linux targets type-check. | | 2026-09-11 | The four ab-core asks filed as [adom/adom-bridge#184](https://wiki.adom.inc/adom/adom-bridge/issues/184). |+| 2026-09-11 | Phase 2 de-risked before it starts: `kicad-ipc-rs` 0.5.1 (blocking feature) cross-builds for Windows from the container with mingw and cmake, and a probe on ConfRoomROG connected to the running PCB editor and returned KiCad 10.0.5, the open board and its nets in 8 ms. One build note for the record: on the gnu target nng needs `advapi32` appended to the link line (`cargo:rustc-link-arg=-ladvapi32` from a build script), or the IPC listener fails to link. | ## The goal in one sentence @@ -214,7 +215,7 @@ Crate choices, checked 2026-09-11: | Need | Crate | State | |---|---|---| | KiCad IPC | `kicad-ipc-rs` 0.5.1 (MIT, prost 0.14, nng 1.0.1, 59 of 59 KiCad 10.0.1 commands, used by Konnect) or the official `kicad-api-rs` 0.1.0 (GPL-3, undocumented) | Use kicad-ipc-rs, vendor if needed. Windows is not on its CI, so we test it |-| nng transport | `nng` 1.0.1 (`nng-sys` builds NNG 1.4 from source, static) | Needs CMake and a C compiler at build time only |+| nng transport | `nng` 1.0.1 (`nng-sys` builds NNG 1.4 from source, static) | Needs CMake and a C compiler at build time only. Verified from the container with mingw-w64; append `-ladvapi32` on the gnu target | | UIA | `uiautomation` 0.24.1 (2026-05) | Mature | | Win32 | `windows` crate | Mature | | Capture | none. ab does it | |