Skip to main content

dermestes

Finds abstractions in Python code that have not earned their keep, and reports them as deletion candidates an agent can act on.

Status: phase 5. one-impl, const-param, pass-through and dead-code work. See docs/plans/CONSTITUTION.md.

Checks

Phase id Flags
1 one-impl ABC or Protocol with exactly one production implementation
2 const-param Parameter whose default is never overridden, or that receives the same literal, at every call site
3 pass-through Function whose body only forwards its arguments to another repo function, or a private one-line helper with one production call site
4 dead-code Function or method no production code mentions: only tests (test-only) or nothing (unused)

Usage

uvx dermestes@latest              # findings introduced by staged + unstaged changes vs HEAD
uvx dermestes@latest --base main  # findings introduced since main
uvx dermestes@latest --all        # full audit
uvx dermestes@latest guide        # agent-oriented instructions

Exit codes: 0 no findings (and no output), 1 findings, 2 usage or internal error.

For your CLAUDE.md

### `dermestes` — over-abstraction

- `dermestes` lists abstractions your change introduced that have a single
  user (an ABC with one implementation, a function with one caller).
- Each finding ends in a `suggest:` line. Apply it and run the tests, or keep
  it with `# dermestes: keep <reason>` in the definition's header.

Development

make review-quick   # fmt, clippy, tests
make review         # plus cargo-audit and cargo-deny
make wheel          # build a wheel via maturin
make docs           # build the mdBook site + llms.txt

License

MIT

Metadata

Release files for dermestes 0.1.1

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

Source distribution (sdist)

Source distribution for dermestes 0.1.1
File Size Uploaded
dermestes-0.1.1.tar.gz 909.9 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for dermestes 0.1.1
File Interpreter ABI Platform
dermestes-0.1.1-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
dermestes-0.1.1-py3-none-manylinux_2_28_x86_64.whl Python 3 none Linux glibc 2.28+ x86-64 Details
dermestes-0.1.1-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details

Total release size: 4.9 MB

Release files / dermestes-0.1.1.tar.gz

Download URL dermestes-0.1.1.tar.gz
Size 909.9 kB
Tags Source
SHA-256 checksum
How to use checksums
11a1eb774689ae716e8ddac5d232cf8fbe40bd56669f97b1f1dcf043b0c205bd
BLAKE2b-256 checksum
How to use checksums
1dea5ad370146cdd687908a1e8045bcb310aab8b3bdc970a6578d0de1933a2ea
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 Oct 15, 2026.

Transparency log

Release files / dermestes-0.1.1-py3-none-win_amd64.whl

Download URL dermestes-0.1.1-py3-none-win_amd64.whl
Size 1.3 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
337174ad65f5821bc05c5fe69cb61d5acf2d6f8bd2eb82f7c3ff4c92aef7ea81
BLAKE2b-256 checksum
How to use checksums
88b3a67c85d7e07390ad88a2fa47a93712866d4326614cc150e49f22972d58f4
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 Oct 15, 2026.

Transparency log

Release files / dermestes-0.1.1-py3-none-manylinux_2_28_x86_64.whl

Download URL dermestes-0.1.1-py3-none-manylinux_2_28_x86_64.whl
Size 1.5 MB
Tags Linux glibc 2.28+ x86-64 Python 3
SHA-256 checksum
How to use checksums
fb7be7b8a4e6a95216ab668dd7df31c07bd8f2d67d2a5fc1ce1c357821002893
BLAKE2b-256 checksum
How to use checksums
0d7a18934befa4b150895450b813455c784a34d52023ad6115066da9a7202fef
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 Oct 15, 2026.

Transparency log

Release files / dermestes-0.1.1-py3-none-macosx_11_0_arm64.whl

Download URL dermestes-0.1.1-py3-none-macosx_11_0_arm64.whl
Size 1.2 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
858b0e1ff9e4047998a6eb5583d5cdae8cad0aad0ff3a356f02310a9f280b4ba
BLAKE2b-256 checksum
How to use checksums
f18b178d8c6be7bbc579161cd10efe2426272f4da3ebfcb893b75d2ece5535c0
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 Oct 15, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.1 This release

4 release files

0.1.0

4 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