Skip to main content

Dev Archaeologist: excavate dead code, technical debt, and forgotten artifacts in software projects.

Project description

Dev Archaeologist

Dev Archaeologist logo

Software archaeology and repository intelligence from MagnexisMagnexis logo

Python 3.12+ MIT License CLI Magnexis Build sdist Release zip Release manifest Version

Dev Archaeologist is a Magnexis-built Python CLI for excavating hidden technical debt, structural decay, and forgotten implementation artifacts in software repositories.

It treats every codebase like an archaeological dig site and helps you answer questions like:

  • What code is ancient and likely abandoned?
  • Where is the repository accumulating risk?
  • Which files are structural weak points?
  • What can be safely removed, refactored, or archived?
  • How is the project evolving over time?

Project Overview

The tool scans a repository and turns the results into a rich, terminal-first excavation report.

It can surface:

  • dead code
  • ancient files
  • TODO, FIXME, HACK, BUG, TEMP, and XXX markers
  • duplicated logic
  • unused assets and empty directories
  • suspicious backup-style filenames
  • oversized, complex "monster" files
  • dependency hotspots and fragile chains
  • architectural drift and release readiness issues
  • remediation suggestions with estimated effort

The design goals are:

  • strong terminal UX
  • modular analyzers
  • readable artifact reports
  • release-friendly packaging
  • future plugin support

Magnexis Brand

Dev Archaeologist is presented as part of the Magnexis tooling line.

Brand cues used in this repository:

  • the archaeological emblem in the project logo
  • the Magnexis name treatment in the README header
  • the Magnexis mark used as a small brand seal
  • a dedicated brand badge in the top badge row
  • consistent earth-toned release and CLI styling

Installation

Install from PyPI:

pip install devarch

Install with optional extras:

pip install devarch[extended]
pip install devarch[release]
pip install devarch[test]

The release extra is useful if you want to build local distributions.

Quick Start

Run a full excavation over the current directory:

devarch scan .

List every available command:

devarch help

Generate a markdown report:

devarch export markdown

Generate a PDF report:

devarch report pdf

Release Artifacts

Dev Archaeologist includes a repeatable release build flow for local packaging and CI artifact generation.

Build the release bundle locally:

pip install .[release]
python scripts/build_release.py

This produces the following artifacts in dist/:

  • devarch-0.2.0-py3-none-any.whl for the Python wheel
  • devarch-0.2.0.tar.gz for the source distribution
  • devarch-0.2.0-release.zip for the bundled release archive
  • release-manifest.json for artifact metadata
  • SHA256SUMS.txt for checksum verification

Command Reference

Core excavation

devarch scan .
devarch help
devarch ancient .
devarch dead-code .
devarch todos .
devarch duplicates .
devarch monsters .
devarch ruins .
devarch suspicious .
devarch inspect src/app.py
devarch trace auth
devarch evidence auth
devarch bugmark src/app.py --line 128
devarch errorcode "ModuleNotFoundError: No module named 'rich'"

Repository intelligence

devarch dependencies .
devarch genealogy .
devarch civilizations .
devarch debt .
devarch timeline .
devarch personality .
devarch forecast .
devarch explore .
devarch investigate .
devarch weaknesses .
devarch quake .
devarch architecture .
devarch contributors .
devarch mutations .
devarch map .
devarch survival .
devarch notes .

Forensic helpers

devarch investigate .
devarch inspect src/app.py
devarch trace auth
devarch evidence auth
devarch bugmark src/app.py --line 128
devarch errorcode "ModuleNotFoundError: No module named 'rich'"

Recovery and maintenance

devarch plan .
devarch delete-check src/legacy_auth.py
devarch refactor .
devarch routes .
devarch configs .
devarch migrations .
devarch deps .
devarch drift .
devarch pr-report .
devarch status .
devarch baseline .
devarch regressions .
devarch budget .
devarch release-check .
devarch ownership .
devarch dependency-health .
devarch cleanup .
devarch standards .
devarch history .
devarch recommend .
devarch prescribe .
devarch repair-plan .

Reporting

devarch export json
devarch export markdown
devarch export html
devarch report markdown
devarch report html
devarch report pdf

Output Philosophy

Each finding is designed to be actionable instead of just descriptive.

Typical output includes:

  • problem
  • evidence
  • impact
  • confidence
  • recommended fix
  • estimated effort
  • risk level

That makes the tool useful not just for audits, but also for cleanup planning, code review, and release preparation.

Plugin Architecture

Dev Archaeologist exposes a lightweight plugin registry via the devarch.plugins entry-point group so future extensions can hook into the excavation pipeline.

Planned extension areas include:

  • devarch-plugin-security
  • devarch-plugin-ai
  • devarch-plugin-performance

Development

Project layout:

devarch/
├── analyzers/
├── cli/
├── reports/
├── scanner/
├── utils/
└── tests/

Useful commands:

python -m pytest -q
python -m compileall devarch
python scripts/build_release.py

Repository Maintenance

The maintenance engine supports:

  • baseline snapshots
  • regression detection
  • debt budgets
  • release readiness checks
  • ownership analysis
  • dependency health monitoring
  • cleanup recommendations
  • standards checks
  • health history
  • remediation prescriptions

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

devarch-0.2.1.tar.gz (1.8 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

devarch-0.2.1-py3-none-any.whl (63.5 kB view details)

Uploaded Python 3

File details

Details for the file devarch-0.2.1.tar.gz.

File metadata

  • Download URL: devarch-0.2.1.tar.gz
  • Upload date:
  • Size: 1.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for devarch-0.2.1.tar.gz
Algorithm Hash digest
SHA256 778b8bb6cbbc7774953c18ddd98ced5c77ee30aaef2427556145e95e525c4e51
MD5 0a04a06d55f80a8931fa89bb28269970
BLAKE2b-256 2b5dd0c507c615b41718b2086de8d5efcde40739ac129b7722f8c03177ad0668

See more details on using hashes here.

File details

Details for the file devarch-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: devarch-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 63.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for devarch-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 35f0910c49bdf2bae68c3a5320e23af034fd47322ffaa0c1e8825bef0d5bf0b9
MD5 4a9a3766c504ef4dd66b0a203aa9ea89
BLAKE2b-256 63f0d8a97aea5385467bdc1a53efe13d5a9b10e8355514fe0abfd4e053021c37

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page