Fenolite
Headless, agent-first PCB design automation in Python: an AI coding agent generates, verifies, compares, converts and exports PCB projects without a GUI, with every writing tool a dry run until the agent confirms the plan.
What it does and how it connects
Fenolite is PCB automation in Python, for engineers and AI agents. It creates PCB projects from code, inspects KiCad and Altium files, and reviews designs in a browser, through a Python library or a CLI with structured JSON results, explicit write plans and conversion loss reports. It installs no other package and needs Python 3.11 or newer.
For AI agents, the same commands return structured JSON, typed errors, evidence labels and file receipts. A write can be previewed with --dry-run, then confirmed using its --plan identifier. The package includes an agent guide and board-design practice pages, and agents can inspect parts, query nets and geometry, build, route, check and export using the same CLI as an engineer. Version 0.6 adds an MCP server.
The browser viewer opens KiCad or Altium projects, boards, schematics or libraries to explore layers, highlight nets, measure geometry and navigate between documents, and exports a standalone HTML page for review. Python scripts build KiCad 9 and 10 PCB and schematic projects, the agent loop uses KiCad ERC and DRC checks and the board engineering analyses, and conversion supports KiCad and Altium. Altium writes, computed Altium pours and conversions are experimental, and the direct router is a demonstration router.
Alternatives
Compare side by side- dsh-kicad
A DeepSeek Harness plugin for AI-driven PCB design in KiCad, rather than a Python library and CLI for headless PCB automation.
- kicad-mcp (blwfish)
A community MCP server letting agents drive KiCad PCB workflows, rather than a Python PCB automation library with a browser viewer.
- atopile
A code-first electronics toolchain compiling declarative hardware modules into KiCad layouts, rather than a Python library that builds and reviews PCB projects.
- tscircuit
An open-source toolchain for designing boards with TypeScript and React, rather than a Python PCB automation library.
Recurring errors it addresses
Error Index entries this tool is built to reduce or work around.
- KiCad ERC is clean (0 violations, 66 of 66 hierarchy checks pass), but Altium compiles the same imported design with 33 to 43 errors and 154 to 156 warnings and leaves 19 endpoints on multi-pin nets unassigned. The equivalence gate between the two tools is still not run.Error Index
- Raw LLM-driven KiCad agents cannot be trusted to generate board and schematic files directly, because the file formats contain implicit relationships the model does not understand. The safe architecture is: the model proposes intent, deterministic tools execute, and a verification engine produces evidence.Error Index
- KiCAD-MCP-Server's export_gerber returns success: true and lists all 24 layers as exported, but writes no .gbr files: PlotLayer draws into a plot file that was never opened with OpenPlotfile, returns False unchecked, and only the drill files (from a separate kicad-cli call) land in the folder. An agent reading the response would report the fab package ready when the folder is empty.Error Index
Sources
Not verified
- Pricing: none stated on the repo; the package is free open source.
- No independent user voice found: recent activity is maintainer pull requests only.
Last verified November 6, 2026. Listings are informational. The evidence score measures public, verifiable evidence and is not an endorsement or a compatibility claim.