Check the module’s code, when nothing is detected I simply call gizmo in the position the raycast is intended to reach (origin + direction), when something is detected the raycast.position is used instead.
Not sure regarding gizmo as I haven’t used “WireframeHandleAdornments” myself (if OP says it’s not possible, i’m guessing it isn’t), but module wise it’d work the exact same way shepecasts work, it’d take the basepart and offset the “gizmo” in the intended direction (which can be done without gizmo making a clone of the part, but I prefer keeping it consistent so just use the available shapes and it’ll still somewhat help you visualize the shapecast).
With a recent update roblox made this may be coming soon, once the feature is available for use I’ll take a look at it and see if it could be implemented.
are circles not supposed to be drawn under renderstepped or whatever loop you use? in the same loop I draw an arrow and a circle, if I remove the circle it works fine but rendering the circle times out the script