main
Kyle Bergstedt Publish 2.0.0 d5d2b58 1d ago

name: kicad-bridge-macos public: true description: "Drive KiCad on the user's Mac from this container through Adom Bridge: open boards, schematics, symbols and footprints, show the 3D Viewer and turn it, run DRC/ERC, export fab outputs, route and place on a live board, install libraries and parts, take screenshots. Everything runs in the background: KiCad never takes the user's focus. Trigger words: kicad, open my board, open schematic, symbol editor, footprint editor, 3D viewer, run drc, gerbers, kicad on mac, kicad bridge."

KiCad on the user's Mac

Every verb goes through the Adom Bridge CLI and runs on the user's Mac:

adom-bridge kicad_<verb> '<json args>'
  • kicad_describe '{}' lists every verb with its arguments. kicad_readiness '{}' says whether KiCad is installed and ready.
  • KiCad missing (errorCode: host_app_not_installed): offer to install it, then run kicad_upgrade '{}' (the official universal DMG into /Applications/KiCad).
  • Branch on errorCode, not on the prose, and pass the _hint on to the user.

Background by default

KiCad windows open behind the user's work and never take focus. To show the user something on purpose, pass foreground: true with a foregroundReason; the bridge captions the reason first. Use kicad_screenshot_all (then pull the files) to see what KiCad shows.

Permissions

The bridge works through Adom Bridge's macOS grants: Accessibility (windows and menus), Screen Recording (screenshots) and, for keys and clicks into KiCad, Accessibility Access (Events). A verb that needs a missing grant returns errorCode: permission_required and names the System Settings pane.

Things that differ from Windows

  • macOS has one menu bar per app, and a KiCad in the background keeps the last active window's menus up. The bridge opens editors and the board's 3D Viewer through KiCad's own actions instead, and fires the 3D Viewer's camera commands (kicad_3d_view, kicad_animate_view) through a small plugin inside KiCad that the bridge installs and keeps current.
  • kicad_enable_software_opengl has nothing to do on a Mac and says so.

Common jobs

Job Verb
Open a board / schematic kicad_open_board {filePath}, kicad_open_schematic {filePath}
Show a symbol / footprint kicad_show_symbol {symbolName, libraryName}, kicad_show_footprint {footprintName, libraryName}
3D kicad_open_3d_viewer {editor:"pcb"}, kicad_3d_view {action}, kicad_animate_view {steps}, kicad_render_board_3d {filePath}
Checks and outputs kicad_run_drc, kicad_run_erc, kicad_export_gerber, kicad_export_step, kicad_export_bom
Live board edits (IPC API) kicad_routing_state, kicad_route_net, kicad_place_footprint, kicad_zoom_to
Libraries and parts kicad_install_library, kicad_install_symbol, kicad_install_footprint
What is open kicad_open_editors, kicad_document_info, kicad_window_info