Identification and size characterization of surface pockets and occluded cavities are initial steps in protein structurebased ligand design. A new program, CAST, for automatically locating and measuring protein pockets and cavities, is based on precise computational geometry methods, including alpha shape and discrete flow theory. CAST identifies and measures pockets and pocket mouth openings, as well as cavities. The program specifies the atoms lining pockets, pocket openings, and buried cavities; the volume and area of pockets and cavities; and the area and circumference of mouth openings. CAST analysis of over 100 proteins has been carried out; proteins examined include a set of SI monomeric enzyme-ligand structures, several elastase-inhibitor complexes, the pockets and cavities in protein crystal structures and quantifying their size. The method is a computational geometry treatment of complex shapes, based on alpha shape and discrete flow theory, and a related suite of programs,