GPT-6 Astra + KiCad: does it actually work?
Short answer: yes, it can drive KiCad on your desktop — and that is a smaller claim than it sounds. Here is what genuinely works, where it gets slow, and when it is the wrong tool for the job.
The thing to hold onto while reading demos: when a model clicks Auto-Route in KiCad, KiCad routes the board. The model supplied the intent and the clicks. That is a real capability, but it is tool use — not a model that has learned to lay out copper.
What genuinely works
- Opening a project and navigating the UI
- Astra can drive a desktop KiCad window: open a project, move between the schematic and board editors, find menu items. This is real computer use and it genuinely works.
- Placing parts and pressing the buttons
- It can add components, position them, and trigger KiCad's own Auto-Route and DRC. Note what is happening though — KiCad's router does the routing. The model presses the button.
- Reading what is on screen and reacting
- It can look at a DRC error list, interpret it, and try something else. Recovering from its own mistakes mid-task is the thing this generation of models is markedly better at.
- Exporting the files at the end
- Once a board exists, driving the plot dialog to produce Gerbers is straightforward clicking, and it handles that.
Where it falls down
- A GUI is the slowest way to drive an engine
- Every action costs a screenshot, a decision and a click. KiCad's own scripting interface can do the same work in milliseconds without a model in the loop. If your goal is automation rather than a demo, the API was always the faster path.
- The routing does not get better
- This is the part most people get wrong. When Astra presses Auto-Route, KiCad's router performs exactly the same search it would if you had clicked. A stronger language model does not reduce the number of grid cells a router evaluates, because none of that work is language.
- Token cost scales with clicking, not with difficulty
- A long GUI session burns tokens on screenshots and navigation — overhead that has nothing to do with how hard the board is. A tricky four-layer board and a trivial two-layer one cost roughly the same to click through.
- It is not reproducible
- Run the same request twice and the model may click a different path, land on different placement, and produce a different board. For hardware you usually want the same input to give the same output.
Common questions
- Can GPT-6 Astra use KiCad?
- Yes, in the computer-use sense: it can operate a KiCad window on your desktop, place parts, run the built-in autorouter and export files, the way a person clicking would. What it is not doing is routing the board itself — KiCad's engines do that work, and they behave identically whether a model or a person triggered them.
- Does that mean GPT-6 Astra can design a PCB in KiCad?
- It can produce a board by operating KiCad, which is a real capability. But the design quality comes from KiCad's router and rule checker plus the intent the model supplies, not from the model generating copper. That distinction matters when you are deciding what to trust and what to review.
- Is it worth setting up for real work?
- For exploring what computer use can do, it is genuinely interesting. For production work it is usually the slow path: you are paying tokens to click a GUI that already has a scripting interface, and the routing result is whatever KiCad would have produced anyway. If you want the AI to actually help, put it where judgement lives — parts and intent — and let a deterministic engine handle geometry.
- What is the faster alternative?
- A tool where the request goes straight to the engines instead of through a GUI. Describe the board, let a model choose parts and interpret intent, and have a purpose-built router and rule checker produce and verify the copper — no screenshots, no clicking, and the same result every run.
If the appeal was “describe a board and get one” rather than watching a model click through a GUI, that is the shorter path: the request goes straight to the engines, and the routing is the same every run.