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.20

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

Total release size: 54.7 MB

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

Download URL enola_cli-0.4.20-py3-none-win_amd64.whl
Size 11.4 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
0ad18647534840bb45e69a79b12fc9afbe0ffb3272360fb02bda12c3e8324c5f
BLAKE2b-256 checksum
How to use checksums
446b0c89a6fedf3b3d35c2efcd7edb7de4db1c2274b1bfc8b55635873a0b7b48
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 15, 2026.

Transparency log

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

Download URL enola_cli-0.4.20-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 11.2 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
4014e9cc3efaf0199b6d614ab8c61f05044f4e6775d351820780741b0fb97726
BLAKE2b-256 checksum
How to use checksums
4760b8c9558d3162dafa5f8a6fe1e143da2a5af757391fcf782109bd1ca75a5a
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 15, 2026.

Transparency log

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

Download URL enola_cli-0.4.20-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 10.3 MB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
b1376b1a22af07ee8c2422daf8dc4077f824ab6f4c519c6ce0d8aa1215074116
BLAKE2b-256 checksum
How to use checksums
017e15f490b4f8b245cb4db65b5944c6e28cd6dc588300a45f441e9d536c3086
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 15, 2026.

Transparency log

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

Download URL enola_cli-0.4.20-py3-none-macosx_12_0_x86_64.whl
Size 11.2 MB
Tags Python 3 macOS 12.0+ x86-64
SHA-256 checksum
How to use checksums
cfa7d0ffbd7f01ef5bff950efbe131aa44772c750ffdcf585b6c64207bc259f9
BLAKE2b-256 checksum
How to use checksums
729744f97c1c4b5f12cf650806bf0b8e6f452625425daaaa48086f207d45615f
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 15, 2026.

Transparency log

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

Download URL enola_cli-0.4.20-py3-none-macosx_12_0_arm64.whl
Size 10.7 MB
Tags Python 3 macOS 12.0+ ARM64
SHA-256 checksum
How to use checksums
fb3ac6c4935fdb53fd2aacd59385f81c1e828176c097e61d9edd89df17c6c334
BLAKE2b-256 checksum
How to use checksums
c07976e05f59dddc2883e5cec1eb2eccc6ebe9254fb8ac3760fcdeb4cdb0fd87
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 15, 2026.

Transparency log

Release history Release notifications | RSS feed

0.4.24

7 release files

0.4.23

7 release files

0.4.22

7 release files

0.4.21

7 release files

This release

0.4.20 This release

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