← Commit history
package.json+1−1
@@ -1,6 +1,6 @@ {   "slug": "kicad-bridge",-  "version": "1.0.153",+  "version": "1.0.154",   "type": "app",   "description": "Skills for your container so your AI knows how to drive the KiCad bridge, and how to contribute a fix back (kicad-bridge-contributing). The bridge runtime itself is the release zip; Adom Bridge loads that.",   "tags": [
page.json+1−1
@@ -4,7 +4,7 @@   "slug": "kicad-bridge",   "title": "KiCad - the KiCad Bridge",   "brief": "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.",-  "version": "1.0.153",+  "version": "1.0.154",   "tags": [     "kicad",     "pcb",
skills/kicad-autorouting/SKILL.md+2−1
@@ -1,6 +1,7 @@ --- name: kicad-autorouting-description: How to route a KiCad board through the Adom KiCad Bridge, and how to choose between the two engines the bridge offers: AI routing (the AI plans each trace and commits it through kicad_route_net as a native undo step with a DRC check; recommended) and Freerouting (a deterministic autorouter, installed on demand into the bridge cache, about 141 MB, uninstallable on its own). Covers asking the user which engine they want, the AI routing recipe, kicad_autoroute, kicad_freerouting status install uninstall, what Freerouting bundles (its own Java runtime, nothing installed on the PC), and verification. Trigger words: autoroute, autorouter, route the board, route this pcb, freerouting, install freerouting, uninstall freerouting, ai routing, route_net, routing engine, which router, traces, unrouted nets.+description: >-+  How to route a KiCad board through the Adom KiCad Bridge, and how to choose between the two engines the bridge offers: AI routing (the AI plans each trace and commits it through kicad_route_net as a native undo step with a DRC check; recommended) and Freerouting (a deterministic autorouter, installed on demand into the bridge cache, about 141 MB, uninstallable on its own). Covers asking the user which engine they want, the AI routing recipe, kicad_autoroute, kicad_freerouting status install uninstall, what Freerouting bundles (its own Java runtime, nothing installed on the PC), and verification. Trigger words: autoroute, autorouter, route the board, route this pcb, freerouting, install freerouting, uninstall freerouting, ai routing, route_net, routing engine, which router, traces, unrouted nets. ---  # Routing a board: two engines, the user chooses
skills/kicad-board-model/SKILL.md+2−1
@@ -1,6 +1,7 @@ --- name: kicad-board-model-description: Read a KiCad board the way every Adom EDA bridge reads one (the EDA Bridge Standard board model): kicad_routing_state {model:"standard"} gives tracks, arcs, vias, pads with sizes, parts, pours, the outline with its arcs, unconnected counted from the copper and a revision that only moves with copper, parts or the outline, in mm with y up, the same shape altium_routing_state and fusion_routing_state answer. Its companions are kicad_layer_stack (stack-up, copper and dielectric thickness, Dk), kicad_pour_state (copper actually poured), kicad_bodies (3D body boxes and part heights from the model files) and kicad_netlist (nets as Ref.Pin, pin electrical types, expect comparison). Works live from the PCB editor or from the .kicad_pcb file without KiCad running. Trigger words: board summary, list nets, list designators, component pins, component data, layers in use, board model, read the whole board, board as data, standard board model, eda bridge standard, routing_state standard, stack-up, layer stack, dielectric thickness, Dk, copper weight, poured copper, filled area, 3d bodies, part heights, tallest part, component height, netlist, pin types, compare the netlist, check the nets, same as altium, cross-tool, frame standard, y up.+description: >-+  Read a KiCad board the way every Adom EDA bridge reads one (the EDA Bridge Standard board model): kicad_routing_state {model:"standard"} gives tracks, arcs, vias, pads with sizes, parts, pours, the outline with its arcs, unconnected counted from the copper and a revision that only moves with copper, parts or the outline, in mm with y up, the same shape altium_routing_state and fusion_routing_state answer. Its companions are kicad_layer_stack (stack-up, copper and dielectric thickness, Dk), kicad_pour_state (copper actually poured), kicad_bodies (3D body boxes and part heights from the model files) and kicad_netlist (nets as Ref.Pin, pin electrical types, expect comparison). Works live from the PCB editor or from the .kicad_pcb file without KiCad running. Trigger words: board summary, list nets, list designators, component pins, component data, layers in use, board model, read the whole board, board as data, standard board model, eda bridge standard, routing_state standard, stack-up, layer stack, dielectric thickness, Dk, copper weight, poured copper, filled area, 3d bodies, part heights, tallest part, component height, netlist, pin types, compare the netlist, check the nets, same as altium, cross-tool, frame standard, y up. ---  # The board model: one shape for every EDA tool
skills/kicad-bridge-test/SKILL.md+2−1
@@ -1,7 +1,8 @@ --- name: kicad-bridge-test user-invocable: false-description: DEVELOPER-only skill (user-invocable:false). The standard end-to-end verb test for the KiCad bridge - one runner that exercises EVERY kicad_* verb in the live catalog (118 as of 1.0.37) against a real Windows box with real sample files (the rp2040 tour pack), the way an actual user's AI drives them. Coverage-enforced: a new verb without a test turns the run red. Run it daily pre-release, after every runtime publish, and after any Adom Bridge (ab) core update. Trigger words - test the kicad bridge, verb test, daily test, test all verbs, regression test kicad, verb coverage, run_verb_tests, pre-release check, are any verbs failing.+description: >-+  DEVELOPER-only skill (user-invocable:false). The standard end-to-end verb test for the KiCad bridge - one runner that exercises EVERY kicad_* verb in the live catalog (118 as of 1.0.37) against a real Windows box with real sample files (the rp2040 tour pack), the way an actual user's AI drives them. Coverage-enforced: a new verb without a test turns the run red. Run it daily pre-release, after every runtime publish, and after any Adom Bridge (ab) core update. Trigger words - test the kicad bridge, verb test, daily test, test all verbs, regression test kicad, verb coverage, run_verb_tests, pre-release check, are any verbs failing. ---  # kicad-bridge-test
skills/kicad-copper-pours/SKILL.md+2−1
@@ -1,6 +1,7 @@ --- name: kicad-copper-pours-description: After a board is 100 percent routed, the next step every AI on the KiCad Bridge takes before calling it done: copper pours. Which nets get a pour and why (current, heat, and copper retention, because the 3rd party fab's ablation process mills copper away, so every square millimetre kept is copper not removed), which nets never get one (switching nodes, crystal and clock, high-impedance analog, current-sense Kelvin paths, anything whose capacitance or impedance the pour would change, and anything that would make a ground loop), how to set priorities so small pours win inside big ones, thermal versus solid connections, 2-layer versus 4-layer strategy, the offline gate (tools/add_pours.py then KiCad's DRC), landing pours live with kicad_add_zone, measuring what stayed with kicad_zone_state, and the second loop: moving a trace or a part so a pour can carry the current or spread the heat. Trigger words: copper pour, pours, zone, zones, ground pour, power pour, polygon pour, copper fill, fill zones, ablation, copper ablation, retain copper, maximize copper, heatsink copper, thermal copper, current carrying, kicad_add_zone, kicad_zone_state, add a zone, pour the ground, pour VBAT, 3rd party fab copper.+description: >-+  After a board is 100 percent routed, the next step every AI on the KiCad Bridge takes before calling it done: copper pours. Which nets get a pour and why (current, heat, and copper retention, because the 3rd party fab's ablation process mills copper away, so every square millimetre kept is copper not removed), which nets never get one (switching nodes, crystal and clock, high-impedance analog, current-sense Kelvin paths, anything whose capacitance or impedance the pour would change, and anything that would make a ground loop), how to set priorities so small pours win inside big ones, thermal versus solid connections, 2-layer versus 4-layer strategy, the offline gate (tools/add_pours.py then KiCad's DRC), landing pours live with kicad_add_zone, measuring what stayed with kicad_zone_state, and the second loop: moving a trace or a part so a pour can carry the current or spread the heat. Trigger words: copper pour, pours, zone, zones, ground pour, power pour, polygon pour, copper fill, fill zones, ablation, copper ablation, retain copper, maximize copper, heatsink copper, thermal copper, current carrying, kicad_add_zone, kicad_zone_state, add a zone, pour the ground, pour VBAT, 3rd party fab copper. ---  # Copper pours: the step after 100 percent routed
skills/kicad-place-route-loop/SKILL.md+2−1
@@ -1,6 +1,7 @@ --- name: kicad-place-route-loop-description: How an AI gets a KiCad board to 100 percent routed through the Adom KiCad Bridge, the way a human does it: place for routability, route, and when routing cannot close, go back and move the parts that block it, then route again, to the bitter end. A board with unconnected items is a failed take, never a result. Covers the placement rules that make routing possible (escape bands around fine-pitch ICs, passives at the pin they serve, crystal and its capacitors at the oscillator pins, test points and indicators out of the escape lanes), the routing order (planes and stubs first, shortest nets first, power wide), the levers to pull when connections fail (route the failed nets first, smaller vias where the rules allow, rip-up, then placement changes), the offline DRC gate before anything touches the live board, the live landing through kicad_move_footprint and kicad_route_net, and how to report the true wall clock from the human's prompt to the finished board. Trigger words: 100% routed, fully routed, unconnected items, unrouted nets, ratsnest left, routing failed, cannot route, go back to placement, move parts to route, place and route, placement for routing, escape routing, fine pitch escape, route to completion, finish the routing, place the board, route the board, kicad_move_footprint, kicad_route_net, placement loop, routing loop.+description: >-+  How an AI gets a KiCad board to 100 percent routed through the Adom KiCad Bridge, the way a human does it: place for routability, route, and when routing cannot close, go back and move the parts that block it, then route again, to the bitter end. A board with unconnected items is a failed take, never a result. Covers the placement rules that make routing possible (escape bands around fine-pitch ICs, passives at the pin they serve, crystal and its capacitors at the oscillator pins, test points and indicators out of the escape lanes), the routing order (planes and stubs first, shortest nets first, power wide), the levers to pull when connections fail (route the failed nets first, smaller vias where the rules allow, rip-up, then placement changes), the offline DRC gate before anything touches the live board, the live landing through kicad_move_footprint and kicad_route_net, and how to report the true wall clock from the human's prompt to the finished board. Trigger words: 100% routed, fully routed, unconnected items, unrouted nets, ratsnest left, routing failed, cannot route, go back to placement, move parts to route, place and route, placement for routing, escape routing, fine pitch escape, route to completion, finish the routing, place the board, route the board, kicad_move_footprint, kicad_route_net, placement loop, routing loop. ---  # Place, route, go back, route again: 100 percent or it is not done