Closed general

Linux build of the KiCad Bridge, tested on the Grok computer and the gallia container, so adom-aiflow can finish boards on Linux

John Lauer · ·closed by Colby Knox

Ask (from John)

Please build a Linux version of the KiCad Bridge and test it on both Linux boxes below. The aim: adom-aiflow can finish a board end to end on a Linux machine that runs KiCad itself, with no Windows desktop in the loop.

Why this is needed now

On 2026-10-14/15 a Grok Bot agent designed a 12 V to 5 V / 1 A TPS54202 buck on its own Linux computer: KiCad 10 and adom-aiflow installed there, schematic, layout, ERC/DRC clean, Adom Fields solved, reworked into an Adom molecule. Write-up and clips: https://wiki.adom.inc/adom/grok-bridge/files/first-ai-pcb/README.md

adom-aiflow stopped before its sign-off. Its live stages call kicad_* verbs through Adom Bridge, and every kicad-bridge release so far (through 1.0.152) is a Windows build only:

  • land route, pour, land vias, land pours (native undo steps on the live board)
  • tour nets, tour 3d (IPC selection, zoom, 3D viewer)
  • models (kicad_model_check)
  • finish (live board validates at 0 unconnected)

The Grok computer already joined the mesh with the Linux Adom Bridge (AppImage, ab 2.1.176). It has KiCad 10 as a flatpak (org.kicad.KiCad, run under dbus-run-session; kicad and kicad-cli wrappers in ~/.local/bin, X display :3), and adom-aiflow and adom-fields. So the only missing piece is the bridge.

What looks portable

Per kicad-bridge-contributing, rust/crates/kicad-core is platform-neutral (IPC in ipc.rs, board parsing, DRC, zones, DSN, libraries), kicad-platform/src/win/ is the Windows-only part (windows, focus, menus, UIA, capture), and cargo build on Linux already compiles the neutral crates plus stubs. Everything aiflow needs for landing, pours, gate and finish goes through the IPC API. The window/UIA verbs can answer not_supported_on_platform at first, as kicad_readiness.platform already allows.

Test boxes (please test on both)

  1. The Grok computer: mesh target grok-bot-vm-155244935 (Linux, user box, 8 CPUs, no GPU, KiCad 10 flatpak). The test board is /workspace/grok-buck/kicad/grok-buck.kicad_pro (private copy on john/grok-buck). It is shared by every bot on that Grok account, so leave other /workspace folders alone.
  2. John's gallia container (john-galliaapril), which already runs kicad-bridge. Test it through the mesh.

Done means

  • bridge_install of a Linux build on both boxes. Then kicad_readiness reports ipcApi: true with KiCad 10 running (flatpak sandbox and API socket path included), and kicad_status sees the open board.
  • adom-aiflow on the Grok computer runs land route, pour, land pours, tour nets and finish on grok-buck against that box's own KiCad, and finish passes, with no Windows desktop involved.
  • Window verbs either work under X11/Xwayland or answer not_supported_on_platform with a hint (never a silent ok:true).

Gotchas seen on that box

  • KiCad there is a flatpak. The IPC socket lives inside the sandbox, so the bridge has to find it (or KiCad needs --filesystem / socket overrides).
  • The mesh sometimes answers target_not_found for grok-bot-vm-155244935 while targets lists it reachable:true (adom/adom-bridge#240). Retry before calling the box down.
  • The box's backgrounded Grok Bot UI can freeze, but that doesn't affect the bridge.

3 Replies

John Lauer ·

Progress on this is in #127 (same work, so one thread holds the details): kicad-bridge 1.0.56 for Linux is installed on the Grok computer through bridge_install. kicad_readiness reports ipcApi: true with the Flatpak KiCad 10.0.7. The live IPC verbs (kicad_open_board, kicad_routing_state, kicad_placement_state) work against a copy of grok-buck, and window verbs answer not_supported_on_platform.

Remaining for "done":

  • AI Flow end to end on grok-buck: waiting on a yes to turn on the IPC API switch for the Grok bot's own KiCad and restart it (see #127).
  • The gallia container (john-galliaapril): not tested yet. Next after the Grok computer.
  • ab bug: Linux installs drop the execute bit (adom/adom-bridge#242), worked around by hand for now.
John Lauer ·

AI Flow live-stage results on the Grok computer are in #127 (staging 1.0.57): start, route, gate, land route, pour, land pours (live preflight), measure, tour nets and verify-pours all run through the Linux bridge. finish refuses only on grok-buck design items (analyses, sourcing, calcs evidence, one heatsink via). Filed adom/adom-bridge#243 and adom/adom-aiflow#51 for the pieces outside the bridge. The gallia container test is still to do.

Colby Knox ·

kicad-lane: done. Every release since 1.0.58 carries the Linux build. As of 1.0.85 (insiders, 2026-10-29), the insiders manifest lists platforms: windows, linux: one zip with kicad-bridge (x86_64, glibc 2.39+) beside kicad-bridge.exe, and spawn.entrypoints picks the right one.

AI Flow's live stages ran on the Grok computer (see #127). The gallia container test never happened. If anyone runs bridge_install there and something fails, please open a new issue with the box, its KiCad and the verb.

Colby Knox closed this ·

Log in to reply.