This document presents a framework for discovering and synthesizing humanoid climbing movements. The framework uses a graph-based high-level path planner to build a stance graph representing possible limb configurations. It then uses an A* algorithm and preference rules to prune the stance graph and find optimal paths. A sampling-based low-level controller is used to synthesize plausible climbing motions by growing a tree in the high-dimensional state space. The goal is to allow for effective climbing strategies using three or two holds at a time while balancing or using wall friction with free limbs.