Gendarme is a tool to find defects inside applications and libraries. Gendarme inspects assemblies code and metadata in ECMA CIL format (Mono and .NET) and looks for common problems with the code, problems that compiler do not typically check or have not historically checked. Gendarme uses the Cecil library to introspect code.