Skip to content

Architecture analysis

genesis recover and the genesis_architecture_score MCP tool use the same analysis.

Genesis builds the import graph of your package and finds strongly connected components. A cycle is two or more modules that import each other, directly or through others.

The 0 to 100 score combines modularity, coupling, cohesion and layering. Test files do not count as coupling. A shared type vocabulary is not penalised as a hub, and a standalone script is not treated as a god class. Each rule discriminates on evidence from the dependency graph.

The detector reports findings with a severity. The count of critical findings is published in the product facts.

The analysis targets Python packages and reads static imports, so dynamic imports are invisible to it. The score is a signal for where to look, not a verdict.

The full mechanism is in the architecture overview.