# cad-agent

> Your one stop shop for agentic CAD. Mapping the best free resources, demonstrating their capabilities, and filling the gaps. Made for AI and people.

cad-agent is an open-source toolkit and knowledge base for AI agents that design hardware: CAD models, assemblies,
simulation and print releases. It maps the best free tools, demonstrates them on real projects and fills the gaps with
tested tools of its own. Every page on this site has a Markdown twin at the same path with a .md extension.

- Source: https://github.com/Valpatel/cad-agent (MIT). Install: `pip install -e .` in a checkout; agent skills: `cad-agent agents install`.
- Machine-readable catalogue: https://cad-agent.valpatel.com/catalog.json (schema cad-agent-catalog/2; 180 entries, each with an id, kind,
  areas, maturity, a one-line `what`, our `notes`, a cover picture, a demo link and related ids; tools also have `doc`,
  the page that documents the command, and `markdown`, its twin). Every schema-1 field keeps its schema-1 value: `summary`
  is still our notes first for outside projects, a tool's `url` is still https://cad-agent.valpatel.com/docs/toolkit, and a field that was null
  is still null. Each file says what its fields mean in `fields`.
- Find your way in two small fetches: https://cad-agent.valpatel.com/catalog/index.json lists the domains and areas of hardware design
  (docs/areas.yaml) with counts, maturity and links; https://cad-agent.valpatel.com/catalog/<area>.json (e.g. catalog/compliant-mechanisms.json)
  lists every tool, page, lesson, skill, demo and outside project in that area. Outside entries not yet placed in an area:
  https://cad-agent.valpatel.com/catalog/unplaced.json. The page takes the same filters as URL parameters, e.g.
  https://cad-agent.valpatel.com/catalog?kind=tools&area=compliant-mechanisms&sort=stars.
- Full text of every page in one file: https://cad-agent.valpatel.com/llms-full.txt
- Built from commit f766bf2694e3e66e1ac84c901be1091bdb9863da.

## Start here

- [README](https://cad-agent.valpatel.com/README.md): what cad-agent is and how it grows
- [Tools](https://cad-agent.valpatel.com/docs/toolkit.md): every command, the project contract and the Python API
- [Agent workflow](https://cad-agent.valpatel.com/docs/agent-workflow.md): skills, subagents, work claims and crash-safe work
- [Common issues](https://cad-agent.valpatel.com/docs/common-issues.md): recurring CAD mistakes and the checks that catch them
- [Landscape](https://cad-agent.valpatel.com/research/landscape.md): the agentic-CAD tools we track, verified

## Docs

- [Contributing](https://cad-agent.valpatel.com/CONTRIBUTING.md): Several projects build on cad-agent at the same time (the J501 enclosure, Gyropup, the AGX Thor CAN boards, and others), often with AI agents working in parallel.
- [cad-agent](https://cad-agent.valpatel.com/README.md): A workshop where AI agents get better at CAD by learning from everyone else. While we design real hardware, our agents keep hunting the web for the best published techniques (open-source repos, design
- [Third-party notices](https://cad-agent.valpatel.com/THIRD_PARTY_NOTICES.md): Code under vendor/ is copied from the projects below at the pinned commit. Each directory keeps its upstream LICENSE/NOTICE files; those terms apply to that code. Our changes are listed as patches in 
- [Agent workflow: skills, subagents and work that survives a crash](https://cad-agent.valpatel.com/docs/agent-workflow.md): cad-agent projects are mostly built by AI agents (Claude Code, Codex) working with a person. The way that work is done (where it is recorded, how it is reviewed, where heavy runs go) is part of cad-ag
- [Animated figures from real CAD](https://cad-agent.valpatel.com/docs/animated-figures.md): The README's hero is not drawn by hand. tools/readmeanim.py makes it from a real project's files:
- [Common issues in CAD design reviews](https://cad-agent.valpatel.com/docs/common-issues.md): These mistakes recur in printed parts and assemblies. The list comes from real projects, and each entry links the lesson that recorded it. Every review walks this list, whoever wrote the design and ho
- [Snap fits and compliant features](https://cad-agent.valpatel.com/docs/compliant.md): cadagent.mechanical.compliant sizes and checks snap-fit joints so an agent does not re-derive the equations, guess a permissible strain or forget layer lines. It is the calculator half of the complian
- [Design process plan: dossier, integrity gates and section-by-section review](https://cad-agent.valpatel.com/docs/design-process-plan.md): Status: plan, 2026-10-27. Research behind it: research/design-workflows.md (cited below as DW §n). Nothing here is implemented yet; tasks T1–T20 at the end are sized for one implementer each.
- [The design dossier](https://cad-agent.valpatel.com/docs/dossier.md): The dossier records a design the way a design review needs it: requirements, the sections the design is broken into, a spec card for every part, the interfaces between parts and sections, the decision
- [Explore and compare designs (cadagent.simulation.explore)](https://cad-agent.valpatel.com/docs/explore.md): For any product built from bought and made parts (an enclosure, a robot, a board, a jig): pick parts from a catalogue for each slot of a design, evaluate every design with the project's own model, and
- [Airflow and fans](https://cad-agent.valpatel.com/docs/fans.md): A fan does not deliver the airflow printed on its box. It delivers what its pressure-flow curve gives where that curve meets the enclosure's own curve, the pressure the air needs to get through vents,
- [Viewing original CAD files](https://cad-agent.valpatel.com/docs/file-viewer.md): The standalone webkit/file-viewer.html opens original STL, STEP/STP and core 3MF files. It parses the requested file itself; it never substitutes a similarly named STL or an assembly manifest. The dow
- [Engineering formulas](https://cad-agent.valpatel.com/docs/formulas.md): cadagent.formulas holds the closed-form equations that 3D-printed mechanisms keep needing: beams and snap arms, torsion bars, springs, screws, four-bar and five-bar linkages, wall conduction and fan o
- [Integrity gates (cadagent.review.gates)](https://cad-agent.valpatel.com/docs/gates.md): Assembly-level checks computed from the CAD model, each written as one verdict file. They answer what per-part checks cannot: is this part touching the one it should be fastened to, is the ball inside
- [Linkages](https://cad-agent.valpatel.com/docs/linkages.md): A four-bar is the simplest closed linkage: an input crank a, a coupler b, an output rocker c and the ground d between the two fixed pivots. cadagent.formulas solves where it goes from the four lengths
- [PCB and assembly review workflow](https://cad-agent.valpatel.com/docs/pcb.md): cad-agent supports electronics and mechanical evidence in the same local project site. KiCad remains the electrical source of truth; cad-agent consumes its native reports and displays the files.
- [Rendered joint motion validation](https://cad-agent.valpatel.com/docs/rendered-motion.md): The maintained trace protocol ships with the cad-motion-validation skill, including when the workflow installer copies the skill to a different machine.
- [The section review packet](https://cad-agent.valpatel.com/docs/review-packet.md): A fixed set of captioned renders of one dossier section, with the measurements that come first: the gate verdicts and findings for the section, their witness points, the content hash of every part sho
- [Screw bosses for printed parts](https://cad-agent.valpatel.com/docs/screw-bosses.md): A thread-forming screw, such as an EJOT DELTA PT, makes its own thread in a plain hole in a plastic boss.
- [README and diagram style guide](https://cad-agent.valpatel.com/docs/style-guide.md): Every folder in this repo explains itself in a README.md, so a person or an agent landing anywhere can tell what the folder is for, how its pieces connect, and where to go next. This page says how tho
- [Rigid subassembly insertion](https://cad-agent.valpatel.com/docs/subassembly-insertion.md): A preassembled module needs two separately checked sequences: its internal bench assembly and its insertion into the parent.
- [Supply chain and resource safety](https://cad-agent.valpatel.com/docs/supply-chain.md): cad-agent depends on Python and npm packages, vendors other people's code into vendor/ and the web kit, and sends readers to hundreds of outside projects from its catalogue and pages.
- [Tools: the cad-agent command and Python package](https://cad-agent.valpatel.com/docs/toolkit.md): cad-agent is a toolkit for agents doing hardware design, in the six domains of the topic tree: mechanical design, manufacturing, thermal, simulation and validation, electrical design, and practice (ho
- [Vision and structure](https://cad-agent.valpatel.com/docs/vision.md): cad-agent grows into a well-ordered map of hardware design. It covers mechanisms and enclosures, manufacturing processes, thermal design, simulation, and electrical work from harnesses to test systems
- [Curved-solid volume precision](https://cad-agent.valpatel.com/docs/volume-precision.md): Tracking: issue #70. This investigation concerns numerical volume measurement in the generic relation gate. It does not qualify hardware fit or weaken collision/volume-conservation tolerances.
- [Mermaid diagrams in published documents](https://cad-agent.valpatel.com/docs/web-diagrams.md): webkit/diagrams.js exports renderDiagrams(root=document), observeDiagrams(root=document.body) and drawDiagram(source, options). The observer renders existing and subsequently inserted pre > code.langu
- [Shared parts browser and build tracking](https://cad-agent.valpatel.com/docs/web-parts.md): Shared modules for issue 62. The table/tracker implementation is available on the feature branch; the original-file viewer is being implemented alongside it.

## Skills

- [cad-motion-validation](https://cad-agent.valpatel.com/skills/cad-motion-validation/SKILL.md): Use when implementing or reviewing articulated CAD viewers and robot simulations, especially parts orbiting away from shafts, mismatched units or frames, nested joints, and stationary housings that ro
- [cad-pr-review](https://cad-agent.valpatel.com/skills/cad-pr-review/SKILL.md): Use when a pull request in a cad-agent or product repo is ready for review, or when asked to review one. The author gets an independent review from a separate agent (the cad-pr-reviewer subagent, or a
- [cad-remote-runs](https://cad-agent.valpatel.com/skills/cad-remote-runs/SKILL.md): Use before starting any CAD/FEA/CFD/topology run or full pipeline that takes more than a few minutes or several GB of memory. Run it on a compute host instead of the workstation the agents share, deta
- [cad-supply-chain](https://cad-agent.valpatel.com/skills/cad-supply-chain/SKILL.md): Use before adding or updating a dependency, a vendored file or project, or a catalogue entry or link, before recommending a tool, skill or plugin to someone, and when the weekly supply-chain issue cha
- [cad-work-tracking](https://cad-agent.valpatel.com/skills/cad-work-tracking/SKILL.md): Use at the start of any multi-step change in a cad-agent or product repo, and every ~30 minutes while working. Keeps work recoverable when the session ends (tokens run out, the host crashes or is refo
- [design-process](https://cad-agent.valpatel.com/skills/design-process/SKILL.md): Use when building or changing a mechanical design with cad-agent (an enclosure, a robot, a mechanism, any assembly). Work section by section: frame each section with its requirements and interfaces be
- [mcmaster-parts](https://cad-agent.valpatel.com/skills/mcmaster-parts/SKILL.md): Use for any bought hardware in a CAD design (bearings, screws, nuts, washers, heat-set inserts, dowel and shoulder pins, standoffs and spacers, rod ends, threaded rod, grommets). Always choose a real 

## Subagents

- [cad-pr-reviewer](https://cad-agent.valpatel.com/agents/cad-pr-reviewer.md): Independent reviewer for a pull request in a cad-agent or CAD product repo (code, CAD geometry, simulation evidence, docs). Give it the PR URL and a checkout of the branch; it reads the diff, verifies
- [cad-resume](https://cad-agent.valpatel.com/agents/cad-resume.md): Rebuilds the state of interrupted work from GitHub and the local and remote checkouts after a session ended (tokens ran out, crash, new computer) and reports what is done, what is in flight and the ne

## Lessons (pitfalls)

- [Lessons from the J501 enclosure session](https://cad-agent.valpatel.com/lessons/README.md): Lessons for an AI hardware-design agent, mined from one Claude Code session: the J501 AGX enclosure design session (session d8e464a0-f4a5-4edd-9190-6fd66a0508b0, 2026-10-24 to 2026-10-25).
- [Lessons — electronics](https://cad-agent.valpatel.com/lessons/electronics/README.md): PCB evidence, the board in its enclosure, and release packaging. From a second project, a CAN breakout board and housing (2026-10-26); its Source lines name that project's incident notes.
- [PCB evidence, enclosure readback and release packaging](https://cad-agent.valpatel.com/lessons/electronics/pcb-evidence-and-review.md): Distilled from the incident notes of a second project: a two- and four-port CAN breakout PCB with a printed housing, designed with KiCad 10 and cad-agent on 2026-10-26 (repository mvalancy/pcb-agx-tho
- [Lessons — mechanical](https://cad-agent.valpatel.com/lessons/mechanical/README.md): Printed parts: strength, printability, fasteners and the enclosure's own features.
- [Mechanical design rules](https://cad-agent.valpatel.com/lessons/mechanical/design-rules.md): These rules come from printed-enclosure work (FDM, Bambu P1S bed) around a real carrier board.
- [Enclosure features](https://cad-agent.valpatel.com/lessons/mechanical/enclosure-features.md): Put antenna bulkheads in the part that never comes off; Give recessed buttons a pin hole and a guide sleeve that clears installation; Build storage trays from the drive specs and make them stack in an
- [Fasteners and assembly access](https://cad-agent.valpatel.com/lessons/mechanical/fasteners-and-assembly-access.md): Bought hardware (screws, nuts, washers, inserts, pins, bearings, standoffs, rod ends) is chosen and placed with skills/mcmaster-parts: a real McMaster-Carr part number, its STEP model normalised into 
- [Lessons — process](https://cad-agent.valpatel.com/lessons/process/README.md): How the agent works with its sources, the user and a long session.
- [Agent process](https://cad-agent.valpatel.com/lessons/process/agent-process.md): Fold mid-turn messages into the current work and report on each; Give short status during long work, and say what is stale; Ask before outward or irreversible actions; Check whether it already exists 
- [User intent and requirements](https://cad-agent.valpatel.com/lessons/process/user-intent-and-requirements.md): The requirements arrived in pieces, often as short mid-turn messages, and were refined by later corrections. What worked: capture each one in the user's own words, turn it into a named feature or chec
- [Verify from source](https://cad-agent.valpatel.com/lessons/process/verify-from-source.md): Board facts that the design depends on (connector side, voltages, designators, threads, which button is which) must come from a primary source: the schematic, datasheet photos or the vendor's 3D model
- [Lessons — review](https://cad-agent.valpatel.com/lessons/review/README.md): Evidence that holds up, and what reviewers need to see.
- [Original-file previews](https://cad-agent.valpatel.com/lessons/review/original-file-viewer.md): Parse the requested original and preserve its identity during recovery; Verify bundled parser behavior rather than assuming a newer API; Check the distributed wheel, including dependency notices.
- [Review site UX](https://cad-agent.valpatel.com/lessons/review/review-site-ux.md): The user reviewed the work almost entirely through a locally served preview page. Each request below came from something they could not see or could not act on.
- [Verification and evidence](https://cad-agent.valpatel.com/lessons/review/verification-and-evidence.md): Collision-check everything and investigate every hit; Classify false positives explicitly; don't silence them; Check motions, not just final positions; Never claim what was not tested, and make the ch
- [Lessons — simulation](https://cad-agent.valpatel.com/lessons/simulation/README.md): Bought parts, material, load and thermal checks, the meshes under them, and the compute they share.
- [Meshes: a peak is only as good as the mesh under it](https://cad-agent.valpatel.com/lessons/simulation/meshes.md): These lessons come from Gyropup's hip frame and front link (Valpatel/gyropup#29), studied in October 2026 with cadagent.simulation.fea.
- [Simulation, material and airflow](https://cad-agent.valpatel.com/lessons/simulation/simulation-and-material.md): Identify the exact bought part before sizing anything around it; Judge material savings on slicer grams, not CAD volume; A thinner shell must be re-checked under load, and the check must catch it; The
- [Lessons — wiring](https://cad-agent.valpatel.com/lessons/wiring/README.md): Connectors, cables and the routes between them.
- [Cables, connectors and routing](https://cad-agent.valpatel.com/lessons/wiring/cables-connectors-and-routing.md): Model every mating connector, place it on the measured axis, and derive the window from it (standard practice); Route cables from the connector's real mating direction; Model plug bodies and a straigh

## Research

- [Agent toolkits for mechanical CAD, DFM/DFA and FEA: refresh since 2026-10-24 (checked 2026-10-31)](https://cad-agent.valpatel.com/research/agent-toolkits-2026-10.md): For Valpatel/cad-agent #96 (landscape refresh) and #94 (compliant-mechanism engineer). Extends research/landscape.md (2026-10-24); it does not repeat the KiCad or benchmark sections.
- [Compliant mechanisms and single-part joints: references, equations, allowables, process effects (2026-10-31)](https://cad-agent.valpatel.com/research/compliant-mechanisms.md): For Valpatel/cad-agent #94 (compliant-mechanism engineer), #95 (calculators), #97 (pitfalls), #99 (process profiles). Extends research/landscape.md (2026-10-24) and research/simulation-tools.md (2026-
- [Design workflows for CAD agents: what works, with evidence (verified 2026-10-27)](https://cad-agent.valpatel.com/research/design-workflows.md): Scope: how the best agentic CAD systems, professional mechanical-design practice and model-integrity verification can be turned into a process that a CAD agent executes. landscape.md covers tool featu
- [FOSS large-deflection + contact FEA, orientation, sheet metal and DFM checklists (2026-10-31)](https://cad-agent.valpatel.com/research/fea-and-process-tools.md): For Valpatel/cad-agent #96 (items 3–5), #94 (FEA step), #97 (pitfall catalogue), #99 (process profiles). Extends research/simulation-tools.md (2026-10-26), which covers topology optimisation, CFD/CHT,
- [Agentic hardware-design landscape (verified 2026-10-24)](https://cad-agent.valpatel.com/research/landscape.md): Scope: public tools that let frontier-model agents (Claude Code first; Codex, Cursor, Gemini) design 3D-printed, sheet-metal, laser-cut, CNC and molded parts, enclosures around real PCBs, and KiCad bo
- [Manufacturing-process profiles: design rules by process, and the experts behind them (2026-10-31)](https://cad-agent.valpatel.com/research/process-profiles.md): For Valpatel/cad-agent #99 (process profiles), #118 (cite every rule by name), #97 (pitfall checks) and #95 (calculators).
- [Supply-chain and resource report](https://cad-agent.valpatel.com/research/security-report.md): What cad-agent depends on, vendors and links to, checked on 2026-11-01 at revision 88ff87ffc253 (online checks). Findings: 1 critical, 24 low, 9 info. Generated by tools/resourceaudit.py;
- [FOSS simulation and optimisation survey for cad-agent (J501 / AGX Orin enclosure)](https://cad-agent.valpatel.com/research/simulation-tools.md): Survey date: 2026-10-26. Licences were checked against each repo's LICENSE/COPYING file (GitHub API or GitLab API) unless marked otherwise. "Last commit" means the newest commit on the default branch 

## Commands

- `cad-agent build`: Run the configured build steps in order
- `cad-agent export-3mf`: Write a bed-centred 3MF per part STL, and every part on build plates in one Bambu Studio project 3MF; verify both
- `cad-agent holes`: Check every hole of every part (exports/<part>.step) is clear of material: ribs or bosses added after the holes
- `cad-agent check`: Collect check results; exit 1 if any fail
- `cad-agent report`: Write results JSON + standalone HTML report
- `cad-agent package`: Zip the review package with a sha256 manifest
- `cad-agent release`: Write the print release: a browsable page of the parts (thumbnails, print settings) with CAD files and source, and a zip
- `cad-agent serve`: Serve the project over http (Bambu Studio links)
- `cad-agent site`: Build the project site (progress, designs, decisions, docs)
- `cad-agent view`: Export every part in assembly position for the 3D viewer
- `cad-agent slice`: Slice each part's 3MF (Bambu Studio CLI): grams and print time
- `cad-agent webkit`: Copy the web kit (3D stage, viewer, HUD) into the project
- `cad-agent pcb-check`: Bind KiCad ERC/DRC evidence to current PCB sources
- `cad-agent all`: build, export-3mf, holes, gates and the dossier lint (when configured), check + report, package
- `cad-agent motion-trace`: Validate rendered joint pivots against independent CAD landmarks
- `cad-agent snapfit`: Size and check snap fits declared in a YAML/JSON file (docs/compliant.md)
- `cad-agent agents`: Install the agent workflow kit (skills and subagents) for Claude Code and Codex, or list what is installed (docs/agent-workflow.md)
- `cad-agent mcmaster`: Download McMaster-Carr STEP + product data per part number and normalise it (one page at a time; skills/mcmaster-parts/SKILL.md)
- `cad-agent catalogue`: Check the part catalogue and the designs against it (cad: explore:, docs/explore.md)
- `cad-agent compare`: Evaluate the designs and rank them: comparison JSON, HTML page, site design cards
- `cad-agent optimise`: Search slots and parameters for the best trade-offs (cad: explore: search:)
- `cad-agent dossier`: Lint the design dossier and write each item's status (exports/dossier-status.json)
- `cad-agent gates`: Run the integrity gates on the dossier geometry: exports/gates/<gate>.json + .md
- `cad-agent review-packet`: Render each dossier section's review packet: exports/review/<section>/ + manifest.json
- `cad-agent review-section`: Reviewer pass: write a section's reviewer bundle, or --submit a reviewer record

## On the home page

### What the code computes

- [Stress in a printed leg link](https://cad-agent.valpatel.com/docs/toolkit): Gyropup's wheel link in a turn, 52,134 quadratic tetrahedra, PA6-CF along the layers (humid). Safety factor 3.15 against a target of 2.0. (`cadagent.simulation.fea`, on Gyropup · MIT)
- [A rib that refills a counterbore](https://cad-agent.valpatel.com/docs/common-issues): Two build orders of the same part. A rib added after the holes were cut fills both; the hole check finds it. (`cad-agent holes`, on a test fixture, drawn in 2D; tests hold its numbers to the real check)
- [A port window sized from the mating plug](https://cad-agent.valpatel.com/docs/common-issues): An RJ45 plug pushed in. Through a window sized from the jack's box its latch hits the wall; through one derived from the plug it clears by 0.5 mm. (`cadagent.mechanical.connectors`, on a test fixture in this repo)
- [Topology optimisation](https://cad-agent.valpatel.com/docs/toolkit): An enclosure floor with its mounting posts under load. Only the material that carries load is kept. (`cadagent.simulation.topopt`, on a printed enclosure)
- [When a moving arm first hits the frame](https://cad-agent.valpatel.com/docs/gates): A seeded fault, the test bench's arm range raised to 60 degrees. Swept in 12 poses, then bisected, contact starts between 44.89 and 44.91 degrees. (`cad-agent gates`, on a test fixture, drawn in 2D; tests hold its numbers to the real check)
- [A render straight from the CAD](https://gyropup.com): Gyropup's five-bar leg standing, 300 mm from hip to axle, on two RS-04 actuators. (`cadagent.publish.render`, on Gyropup · MIT)
- [A ribbed lid under a 300 N press](https://cad-agent.valpatel.com/docs/toolkit): Stress as a fraction of the material's strength, so the colour reads as margin, not megapascals. (`cadagent.simulation.fea`, on a printed enclosure)
- [A module that slides in as one piece](https://cad-agent.valpatel.com/docs/subassembly-insertion): A carrier and its board checked on their own bench, then inserted into the parent as one rigid body and withdrawn again. (`cad-agent gates`, on a test fixture in this repo)
- [Searching designs by cost and mass](https://cad-agent.valpatel.com/docs/explore): Sixty seeded trials as they arrive. Four are feasible, and trials 1 and 47 form the Pareto front. (`cad-agent optimise`, on a worked example)
- [A snap fit computed from the guide](https://cad-agent.valpatel.com/docs/compliant): The Covestro guide's Example I, recomputed and drawn to scale. Root strain 2.00 percent, as the guide gives. (`cad-agent snapfit`, on a worked example)
- [One rule, many sources](https://cad-agent.valpatel.com/research/process-profiles): The same sheet-metal rule from different sources, evaluated at 1.5 mm, beside one shop's real tooling. (`tools/process_profile_figures.py`, on published sources)

### Where cad-agent fits

Other people's tools make the model (we build on them or are trialling them):

- text-to-cad (MIT, in trial): build123d models, STEP and 3MF, drawings, DfAM checks, print handoff
- build123d and CadQuery: The code-CAD kernels (both on OCP); our own tools and projects are CadQuery
- KiCad MCP servers: Schematics and boards; kicad-mcp-pro and kicad-happy are vendored, pinned and in trial

cad-agent checks, simulates, explains and measures around it (maturity: idea → surveyed → tooling → validated → proven, from docs/areas.yaml):

- [Assembly gates and evidence](https://cad-agent.valpatel.com/docs/gates) (tooling): Every pair of parts checked for interference, then walls, fastener stacks, motion ranges and assembly order; connector windows from the board's STEP; a review site and package
- [Simulation](https://cad-agent.valpatel.com/research/fea-and-process-tools) (tooling): FEA, CFD, topology optimisation and motion, each with its assumptions stated
- [Electrical review around real boards](https://cad-agent.valpatel.com/docs/pcb) (tooling): KiCad ERC and DRC evidence bound to the sources it checked
- [Cited rules and calculators](https://cad-agent.valpatel.com/docs/compliant) (tooling): Snap fits from the Covestro and DuPont guides, tested against their worked examples, and lessons from real builds
- [A verified catalogue](https://cad-agent.valpatel.com/research/landscape) (surveyed): Which outside tool to use for a job, text-to-cad included, with licences and dates checked
- [Standard evals](https://github.com/Valpatel/cad-agent/issues/142) (idea): The same jobs run by models and harnesses with and without the toolkit
