Rhino and Grasshopper already have tools for clash detection, but they're too limited to inspect an entire model at once. I built a small routine around the Clash component with a bounding-box filter to keep it fast even on complex models.