Climbables are modified Grabbable objects that keep track of a position for the Character Controller to offset from. See the custom included CharacterController.cs to see how climbing works.
Climbing is accomplished by checking where the controller is this frame, and then offsetting the character position by that amount.
Multiple Climbing objects can be held at once (one in each hand). You can set a "BreakDistance" if you want to prevent the players hands from getting too far away from a hold.
Climbable objects can be moved using physics. This makes it easy to make ziplines, grappling hooks, and other objects that may want to move the player while being held.