Technical Debt Intelligence — connect code quality to business impact
Project description
DebtMap — Technical Debt Intelligence
Connect code quality to business impact. Only 7% of engineers use ANY tool for technical debt measurement. DebtMap is the tool for the other 93%.
What It Does
DebtMap scans your codebase and produces actionable intelligence:
- 7 analyzers: Complexity, coupling, duplication, dead code, test gaps, dependency age, documentation gaps
- Business impact scoring: Connects code issues to incidents, velocity, and dollar cost
- ROI prioritization: "Fix this module first — saves $X/month in engineering time"
- Trend tracking: Is your debt improving or degrading over time?
- Executive reports: Share with leadership in a format they understand
Install
pip install autoai-debtmap
For MCP server support:
pip install 'autoai-debtmap[mcp]'
CLI Usage
# Full scan
debtmap scan /path/to/repo
# Get prioritized fix list
debtmap prioritize /path/to/repo
# Generate executive report
debtmap report /path/to/repo
# Find worst hotspots
debtmap hotspots /path/to/repo
# Estimate $ cost of debt
debtmap cost /path/to/repo --hourly-rate 100 --team-size 8
# Track trends over time
debtmap trend /path/to/repo
Quick Start -- MCP Server
Add to your Claude Code or Cursor MCP config:
{
"mcpServers": {
"debtmap": {
"command": "uvx",
"args": ["autoai-debtmap-mcp"],
"description": "DebtMap — Scan your codebase for technical debt with ROI-ranked fix lists"
}
}
}
That's it. No signup. No API key. No data leaves your machine.
MCP Tools
| Tool | Description |
|---|---|
debt_scan |
Scan a codebase for technical debt |
debt_hotspots |
Find worst code hotspots |
debt_prioritize |
ROI-ranked fix list |
debt_cost |
Estimate $ cost of debt |
debt_trend |
Debt trend over time |
debt_report |
Executive-ready report |
debt_compare |
Compare branches/releases |
Analyzers
Cyclomatic Complexity
Parses Python AST to calculate real cyclomatic complexity. Counts if, elif, for, while, except, with, and, or, assert, ternary expressions, and comprehensions.
Module Coupling
Builds an import dependency graph and calculates afferent/efferent coupling and instability metrics. Detects circular dependencies.
Code Duplication
Uses content-hash fingerprinting with normalization (whitespace, string/number literals) to detect near-duplicate code blocks.
Dead Code Detection
Identifies unused functions, unused imports, and unreachable code after return/raise/break/continue statements.
Test Coverage Gaps
Cross-references source module public APIs with test files to find untested functions, classes, and methods.
Dependency Age
Parses requirements.txt and pyproject.toml, queries PyPI for latest versions, and classifies outdatedness severity.
Documentation Gaps
Finds public functions, classes, methods, and modules missing docstrings.
License
Apache 2.0
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file autoai_debtmap-0.1.0.tar.gz.
File metadata
- Download URL: autoai_debtmap-0.1.0.tar.gz
- Upload date:
- Size: 64.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d33573f00d33098f8df854397a63afc1611e4a330ce99ec8557f9c3bd66460c6
|
|
| MD5 |
e40cf4c5acfbc08e6bb2a9a870ed948a
|
|
| BLAKE2b-256 |
7aaf132d28f87d1b857a720460a8e8e761ea40bfcc2dde1ed3ee714d7d6221f6
|
File details
Details for the file autoai_debtmap-0.1.0-py3-none-any.whl.
File metadata
- Download URL: autoai_debtmap-0.1.0-py3-none-any.whl
- Upload date:
- Size: 51.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
79205a94897112304a164bb2feaa3b0ef8bfd733bd0a2cdf7b444f16ed223a0c
|
|
| MD5 |
5cce9d24e4cf3d0cc594939e721f9565
|
|
| BLAKE2b-256 |
9f2a7de55a5a527275c023766e32aec6481a4de35418f5c750649ead39f84a56
|