Circuits are composable TypeScript
Boards can be split into named modules, imported, tested, reviewed, and changed with ordinary source-control habits.
Selected work / Fulmetry
You explain what the board should do. Fulmetry gives your coding agent the project structure and commands to write the TypeScript, choose parts, place and route the PCB, then run checks and simulations. You review the result and steer the next change.
01 / Why it exists
Software agents already work well with files, commands, tests, diffs, and structured errors. Circuit design often asks them to reason through visual editors, screenshots, and generated output whose confidence can exceed its electrical competence.
A plausible application can be patched after deployment. A plausible circuit board may instead arrive in a box, in quantity, looking extremely committed to the mistake. Fulmetry was built to bring the useful habits of software engineering into that gap.
02 / What it is
Fulmetry works through a repository. Any coding agent that can read and edit project files can use its commands, skills stored with the project, and structured diagnostics to do circuit work.
Boards can be split into named modules, imported, tested, reviewed, and changed with ordinary source-control habits.
Physical checks catch connectivity and fabrication problems. Named ngspice simulations test behaviour. Their results stay separate, so one pass cannot mask a failure elsewhere.
A local workspace provides schematic, PCB, 3D assembly, layer, measurement, check, simulation, and export views without uploading the project by default.
Fabrication, electrical, functional, standards, and sourcing results remain separate. Each status reports only the checks that produced it.
03 / The loop
The loop resembles a software project: edit the source, build it, inspect failures, and repeat.
Start with what it must do, its power, interfaces, parts, dimensions, layers, and manufacturing constraints. Ambiguity is cheaper before routing.
Codex, Claude Code, Cursor, and other coding agents work through the project files and commands they already understand.
Compile the board, run physical checks, execute named simulations, inspect structured results, and repair the reported fault.
After reviewing the checks and simulations, generate and verify the Gerber, drill, BOM, placement, and KiCad handoff files.
04 / Why I built it
I wanted to see whether a general coding agent could work on electronics through the interface it already understands best: a repository.
A circuit board can look plausible and still fail electrical or fabrication checks. Fulmetry gives the agent precise failures, gives the human an inspectable result, and keeps a successful export separate from a successful design.
Fulmetry records reproducibility, provenance, tool boundaries, and separate readiness states. These records make the design easier to review before fabrication, when mistakes are still inexpensive files.
05 / Current truth
The initial release targets Apple Silicon macOS and Bun 1.3.14 exactly. It is built on the tscircuit version pinned by Fulmetry and is an independent project, not an official tscircuit product. Support remains narrow while the verification boundaries are tested.
Fulmetry does not certify a board, replace qualified engineering review, or make arbitrary generated hardware safe. High voltage, RF, medical, automotive, aerospace, and other regulated work require an experienced electrical engineer.
Explore the project