Using triggers to grab an edge while jumping
Grabbing an edge while jumping is a common feature, especially in platform games. It is easily done in Unity with a small amount of scripting. This recipe covers a simple edge grab functionality.
Getting ready
You need three new animations for our character: EdgeGrab, EdgeGrabLoop, and EdgeGrabClimb. The first one is a transition from the InAir animation to the EdgeGrabLoop animation. It should have minimum movement in the root node if possible. The second one is a looped animation of hanging on the cliff's edge. The last one is an animation that uses root motion to climb the cliff's edge and ends with an Idle pose. See the following screenshot for reference:

Frames of the EdgeGrabClimb animation using root motion to climb over the cliff's edge
EdgeGrab and EdgeGrabLoop animations should have all Bake Into Pose options selected in Import Settings. EdgeGrabLoop should also have the Loop Time option selected. You can also use the provided example Unity...