I know that rosetta_scripts XML protocols can be run in PyRosetta, and I think there is also a specfic PyRosetta version of fastDesign. But I'm wondering to what extent the underlying functions used in fastDesign (e.g. modifying constraint strengths, modifying vdw repulsion terms) can be written in PyRosetta directly such that some customization would be possible?
In particular I'd like to get out intermediate structures during the design (like one structure every 1000 MC steps let's say). My current naive idea would be to break down each cycle of fastDesign into say ~100 steps, where the packer is run for 100x fewer steps than normal, a structure is output, and then the packer continues. The same approach might apply to the minimizer, then the constraints and vdw-repulsions would be updated, and the next cycle would begin.
I've used PyRosetta only for scoring and manually forcing certain rotamers, so I don't have a good idea of whether what I want to do is even possible at the moment.