In deep geothermal reservoirs, faults and fractures play a major role, serving as regulators of fluid flow and heat transfer while also providing feed zones for production wells. To accurately model the operation of geothermal fields, it is necessary to explicitly consider objects of varying spatial scales, from the reservoir scale itself, to that of faults and fractures, down to the scale of the injection and production wells.Our main objective in developing the ComPASS geothermal flow simulator, was to take into account all of these geometric constraints in a flow and heat transfer numerical model using generic unstructured meshes. In its current state, the code provides a parallel implementation of a spatio-temporal discretization of the non-linear equations driving compositional multi-phase thermal flows in porous fractured media on unstructured meshes. It allows an explicit discretization of faults and fractures as 2D hybrid objects, embedded in a 3D matrix. Similarly, wells are modeled as one dimensional graphs discretized by edges of the 3D mesh which allows arbitrary multi-branch wells. The resulting approach is particularly flexible and robust in terms of modeling.Its practical interest is demonstrated by two case studies in high-energy geothermal contexts.