If what you care about is a sliding collision, not skin width specifically,
you could look at approaches like this - using a swept collision check to find an obstacle, then projecting the velocity along the collision plane and sweeping again, iteratively, until you run out of motion.