I don't do CAD anymore. Every part is a Python program that builds the model in memory using build123d, an open-source parametric modeling Python framework. It then exports the model as a STEP file, which Fusion 360 imports so they can be inspected visually.
A high-level YAML spec file holds the numbers that define the robot as a whole - dimensions, masses, actuators, joint limits - which is read by the code. The python code obviously is written by an LLM (I currently use Opus).
I did consider using Onshape, but its API is capped to a few thousands calls a year, which make it unusable for me: I use Opus to push the parts, build the assembly, create the joints, set their limits and values, assign materials and densities, and inspect the result. That's easily a few hundred calls a day.