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.

Release files for enola-cli 0.4.22

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.22
File
enola_cli-0.4.22-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
enola_cli-0.4.22-py3-none-musllinux_1_2_x86_64.whl Python 3 none Linux musl 1.2+ x86-64 Details
enola_cli-0.4.22-py3-none-musllinux_1_2_aarch64.whl Python 3 none Linux musl 1.2+ ARM64 Details
enola_cli-0.4.22-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.22-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64 Details
enola_cli-0.4.22-py3-none-macosx_12_0_x86_64.whl Python 3 none macOS 12.0+ x86-64 Details
enola_cli-0.4.22-py3-none-macosx_12_0_arm64.whl Python 3 none macOS 12.0+ ARM64 Details

Total release size: 77.6 MB

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

Download URL enola_cli-0.4.22-py3-none-win_amd64.whl
Size 11.6 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
2c3aa4b4916c42414291025f7ec9b682444945c78f0e75c74c33ff2a802eb354
BLAKE2b-256 checksum
How to use checksums
e7e5417ffa30f50bc2bea0c30a93ec9aae6d77a80cd70cb1432f6cd4399b44c7
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 22, 2026.

Transparency log

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

Download URL enola_cli-0.4.22-py3-none-musllinux_1_2_x86_64.whl
Size 11.4 MB
Tags Linux musl 1.2+ x86-64 Python 3
SHA-256 checksum
How to use checksums
745446769ea02e291d0e71509669a3f1da546279f5e5e6df47bc09855273d660
BLAKE2b-256 checksum
How to use checksums
874ee7db4b7339243e292cd5a959ef8546fa47e98c0df7bc4844ff9c1cf7bf33
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 22, 2026.

Transparency log

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

Download URL enola_cli-0.4.22-py3-none-musllinux_1_2_aarch64.whl
Size 10.5 MB
Tags Linux musl 1.2+ ARM64 Python 3
SHA-256 checksum
How to use checksums
88059365b73f6ddd63887fbe4dcccab899c4bdc4b0bcabeaca062c18b8b0824c
BLAKE2b-256 checksum
How to use checksums
7a01d48e2b6673e05fcabff923b9da10ff282e8a94a37d044b548f271eacd451
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 22, 2026.

Transparency log

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

Download URL enola_cli-0.4.22-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 11.4 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
0d37389938db11be0ed7557cccb03fcd4c41582e47391878e829f921f043f273
BLAKE2b-256 checksum
How to use checksums
f30dad393b6acc44b15c3adc806f87932d04fdbbd6e7b04cb0a25ca208df8e74
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 22, 2026.

Transparency log

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

Download URL enola_cli-0.4.22-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 10.5 MB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
4b4f203796c5cae1e48202a55395e10f7a4724cc9a5495ab2df701a57f5020ad
BLAKE2b-256 checksum
How to use checksums
56be75f8eb39985919bfa67d697e519df3bfa940a247283bd1a612fafb18763e
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 22, 2026.

Transparency log

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

Download URL enola_cli-0.4.22-py3-none-macosx_12_0_x86_64.whl
Size 11.4 MB
Tags Python 3 macOS 12.0+ x86-64
SHA-256 checksum
How to use checksums
51ed13d90f0603ba9daf4765283501692f05393f1041280779f720b05b15bbe2
BLAKE2b-256 checksum
How to use checksums
86fa7adc043cfdf3c27d16ff3d483060b9a044e99abad69e0cae117be5011615
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 22, 2026.

Transparency log

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

Download URL enola_cli-0.4.22-py3-none-macosx_12_0_arm64.whl
Size 10.9 MB
Tags Python 3 macOS 12.0+ ARM64
SHA-256 checksum
How to use checksums
eb9cdae7f5596c8dd97bfbfdd69cd829e221a05a78ed716890d6f15890fc58be
BLAKE2b-256 checksum
How to use checksums
df888c17c404f12ed306ee324c0c04e3ed6d9424439ca1b46b7f9a364196406f
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 22, 2026.

Transparency log

Release history Release notifications | RSS feed

0.4.24

7 release files

0.4.23

7 release files

This release

0.4.22 This release

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