I gave build123d a try about a year ago. I really wanted it to work, but it has a lot of issues, mainly in documentation. I'm going off memory here, and it's been a while, so maybe some of these have been fixed. One of the biggest issues is one of the fundamental classes (I want to say "Part") is not documented at all. And it's essentially the most important class. I tried enumerating all of the methods on the class, but didn't make much progress. Fillets were promising, but it seems once you've got a complex edge from a few operations it quits working, or at least did for my part. You're supposed to be able to do something like b=Box(10,10,10), then access the width as b.width, but all of those properties were always zero.
OpenSCAD supposedly supports Python now (https://pythonscad.org/), but I was not able to get it to work at all. I've fallen back to just OpenSCAD, even though it has limitations, at least I'm familiar with them. I'm mostly just waiting for improvements to anything that'll make it better than OpenSCAD.