The CGMF code implements the Hauser-Feshbach statistical nuclear reaction model to follow the de-excitation of fission fragments by successive emissions of prompt neutrons and $gamma$ rays. The Monte Carlo technique is used to facilitate the analysis of complex distributions and correlations among the prompt fission observables. Starting from initial configurations for the fission fragments in mass, charge, kinetic energy, excitation energy, spin, and parity, $Y(A,Z,KE,U,J,pi)$, CGMF samples neutron and $gamma$-ray probability distributions at each stage of the decay process, conserving energy, spin and parity. Nuclear structure and reaction input data from the RIPL library are used to describe fission fragment properties and decay probabilities. Characteristics of prompt fission neutrons, prompt fission gamma rays, and independent fission yields can be studied consistently. Correlations in energy, angle and multiplicity among the emitted neutrons and $gamma$ rays can be easily analyzed as a function of the emitting fragments.