Skip to main content

enola

Architectural regression testing for AI-assisted development.

Catch structural regressions that builds and tests cannot see: new dependency cycles, violated layer boundaries, undeclared service dependencies, and changes that spread beyond their intended scope.

Enola maps your codebase before a change and compares it with the structure afterward. The result is about this change, not every problem already in the repository, and only the rules you choose can fail the build.

  • Exact, local measurement. Parsed source and graph algorithms. No model, no embeddings, no upload, no account, no license check.
  • One graph across the repository. 23 languages and formats, detected automatically and combined into one baseline and verdict.
  • One loop everywhere. Your coding agent reads the graph before it edits and receives the verdict afterward. The same check runs from the CLI or in CI.

Install

pip install enola-cli

The command is enola. This package ships a prebuilt binary, so there is no Python dependency at run time and nothing is importable from Python.

Try it read-only

enola --explain /path/to/your/repo

No baseline, config file or MCP client, and nothing is written to disk. Enola prints the architecture it measured (patterns, cycles, layer violations, hotspots, blast radius and structural outliers) and exits.

Documentation

Full documentation, including the CLI reference and architecture internals, lives at https://github.com/enola-labs/enola.

Metadata

Release files for enola-cli 0.4.26

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for enola-cli 0.4.26
File
enola_cli-0.4.26-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
enola_cli-0.4.26-py3-none-musllinux_1_2_x86_64.whl Python 3 none Linux musl 1.2+ x86-64 Details
enola_cli-0.4.26-py3-none-musllinux_1_2_aarch64.whl Python 3 none Linux musl 1.2+ ARM64 Details
enola_cli-0.4.26-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl Python 3 none Linux glibc 2.17+ x86-64 Details
enola_cli-0.4.26-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64 Details
enola_cli-0.4.26-py3-none-macosx_12_0_x86_64.whl Python 3 none macOS 12.0+ x86-64 Details
enola_cli-0.4.26-py3-none-macosx_12_0_arm64.whl Python 3 none macOS 12.0+ ARM64 Details

Total release size: 78.4 MB

Release files / enola_cli-0.4.26-py3-none-win_amd64.whl

Download URL enola_cli-0.4.26-py3-none-win_amd64.whl
Size 11.7 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
f977c42610c4444b23cdd4f757010147d6b1242fb76d3075b6a17701cee39295
BLAKE2b-256 checksum
How to use checksums
3b06629d0e8da1316174dd3fa2b4fe932f09c64cadae75ffcc5ac1f96bd845c3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / enola_cli-0.4.26-py3-none-musllinux_1_2_x86_64.whl

Download URL enola_cli-0.4.26-py3-none-musllinux_1_2_x86_64.whl
Size 11.5 MB
Tags Linux musl 1.2+ x86-64 Python 3
SHA-256 checksum
How to use checksums
0a3733c79d088d79d606e4450fa00f9acca300cad68bc4aeee33ab1c518917e9
BLAKE2b-256 checksum
How to use checksums
c103f4ef594b13d7a2610e744b387f183f5fe35ba01181080b2cea62832cc215
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / enola_cli-0.4.26-py3-none-musllinux_1_2_aarch64.whl

Download URL enola_cli-0.4.26-py3-none-musllinux_1_2_aarch64.whl
Size 10.6 MB
Tags Linux musl 1.2+ ARM64 Python 3
SHA-256 checksum
How to use checksums
0eafb8acbc3daf5a014bd57e1f53c7a9b74c525256e0c21091ad7247fa80d170
BLAKE2b-256 checksum
How to use checksums
eb31d2b4f726d9cf47cffb747e0e7d4f0255b9d61cf592972dc87277e2ec050b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / enola_cli-0.4.26-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL enola_cli-0.4.26-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 11.5 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
4bbfdb43e339a4b2519e9c1b75ed39814ab3a0df566227f39860670ed47e789c
BLAKE2b-256 checksum
How to use checksums
02beb82395acaaff6b62fd3835d2d9c1d400a11f27fed0a566b37ea69b267727
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / enola_cli-0.4.26-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL enola_cli-0.4.26-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 10.6 MB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
ad8716463dab46b193d46302249ecdb88e2a1a3dfdf4aad187c63d6d01cdcb29
BLAKE2b-256 checksum
How to use checksums
b0d8d885986d8f305da291d41392f07481f0172b3047533ca318c3859b4e7e86
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / enola_cli-0.4.26-py3-none-macosx_12_0_x86_64.whl

Download URL enola_cli-0.4.26-py3-none-macosx_12_0_x86_64.whl
Size 11.5 MB
Tags Python 3 macOS 12.0+ x86-64
SHA-256 checksum
How to use checksums
114c864b3752a02307b6e4925a202f456f04902b71dde270cb4cc2c1b29c03c4
BLAKE2b-256 checksum
How to use checksums
9b89ff9e02cbb361078f3e55242fb95efb421e427be3a6db7b8ac337b6c16491
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release files / enola_cli-0.4.26-py3-none-macosx_12_0_arm64.whl

Download URL enola_cli-0.4.26-py3-none-macosx_12_0_arm64.whl
Size 11.0 MB
Tags Python 3 macOS 12.0+ ARM64
SHA-256 checksum
How to use checksums
f006e5300960462fdf8c26dd0cdc5466e561a4cf6f446ce9e80da09d3380a91a
BLAKE2b-256 checksum
How to use checksums
1683f9ed3a13b7e45620999b325230f3e149f9b2faf2707fc50bff5c0d18c416
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.

Transparency log

Release history Release notifications | RSS feed

0.4.29

7 release files

0.4.28

7 release files

This release

0.4.26 This release

7 release files

0.4.25

7 release files

0.4.24

7 release files

0.4.23

7 release files

0.4.22

7 release files

0.4.21

7 release files

0.4.20

5 release files

0.4.19

5 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page