freerouting self-improving loop
A documented agent-driven experiment loop inside the freerouting repo where coding agents propose routing optimizer changes and score them against frozen baselines with gate checks.
What it does and how it connects
Freerouting is an advanced autorouter for all PCB programs that support the standard Specctra or Electra DSN interface. The self-improving loop is the experiment workflow inside the same repo: coding agents propose changes to the routing optimizer, and each candidate is scored against frozen baselines with gate checks before it is accepted.
The frozen baseline manifest in scripts/benchmark/baselines describes itself as the frozen baseline for autopilot accept and reject comparisons, regenerated when an experiment is accepted on autopilot or main. The release baseline is version 2.5.0. The benchmark harness around it includes scripts to build baselines, measure the noise floor, replay optimizer and router weights, run comparison benchmarks, and export reports.
The README also documents the project state: the maintainer reports over 332,000 active users in 28 days against 4 financial supporters and 40 dollars in donations, and limits time on the project to around 4 hours per week, prioritizing pull requests over issues and the core routing engine and DRC over integrations and GUI work. In-repo integration assets exist for KiCad, Autodesk Fusion, Target3001!, and EasyEDA, and the README documents tscircuit and pcb-rnd workflows.
Alternatives
Compare side by side- PCBench
A dataset of 164 KiCad boards with routing ground truth for measuring autorouter quality, rather than an experiment loop that scores optimizer changes.
- DeepPCB
A cloud routing service for an already placed board, rather than an experiment loop that scores optimizer changes.
- TraceMaker
Routes and places an existing KiCad .kicad_pcb file, rather than an experiment loop that scores optimizer changes.
- kicad-mcp (blwfish)
A community MCP server for KiCad workflows from description to manufacturing files, rather than an experiment loop that scores optimizer changes.
Recurring errors it addresses
Error Index entries this tool is built to reduce or work around.
- A KiCad MCP bridge normalizes DRC, connectivity, and geometry into its own output format, and that normalized output can silently disagree with the native KiCad engine. The maintainer had to build seeded false-PASS and false-FAIL tests because the bridge layer cannot be trusted as engineering truth on its own.Error Index
- KiCad lets a differential pair couple tighter than board clearance through a custom rule scoped to coupled pairs. This auto-router marks that rule unsupported and raises the pair gap to the net-class clearance instead; on thin dielectrics a 90 to 100 ohm pair needs a gap below board clearance, so the routed pair comes out at a different impedance than specified.Error Index
- An engineer running Claude Code against KiCad found the agent kept repeating a stale claim of 19 DRC violations that lived on in prose docs. MCP tool summaries cannot be treated as live numbers; only DRC message text and actual exports are authoritative.Error Index
Sources
Not verified
- The directory record cites a plan document at docs/research/self_improving_routing_loop_plan.md; that path returns 404 in the live repo, so the loop description here is grounded in the benchmark harness files instead.
- No independent user voice found for the loop itself: the repo README is about the autorouter.
- Pricing: none stated on the repo; the README states the project runs on donations and the maintainer funds AI coding agent costs out of pocket.
Last verified November 6, 2026. Listings are informational. The evidence score measures public, verifiable evidence and is not an endorsement or a compatibility claim.
