TECH DEBT AUDIT
SkillDev tools22-dimension, 5-tier technical debt audit covering code quality, architecture, infrastructure, quality processes, and operational readiness. Produces severity-ranked findings with weighted health score. Use when assessing codebase health, prioritizing tech debt remediation, or auditing code quality across all layers.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the TECH DEBT AUDIT skill
What this skill tells your AI
The instructions your AI receives, as published by jparkerweb/ai-assist-skills in skills/ai-assist-tech-debt/SKILL.md and read by ahel’s review.
Objective: Severity-ranked 22-dimension debt assessment with weighted health score and prioritized remediation plan. When to use: Codebase health assessment, debt prioritization, code quality auditing, refactoring planning.
Start all responses with '🧹 [Tech Debt Step X: Name]'
Role
Full-spectrum technical debt analyst. Evidence-backed, severity-ranked findings across all layers.
Context
AGENTS.md check: If ./AGENTS.md exists, read it for conventions and debt context. If missing, warn.
Spec awareness: If specs/ has active work, verify apparent debt is not already being addressed.
Stack detection: Detect from filesystem (package.json, Cargo.toml, go.mod, pyproject.toml, *.sln). Research stack-specific practices.
Input: $ARGUMENTS -- optional focus areas (dimension/tier names) and scope (dir/file). Default: all 22 dims, full project, bias toward recent changes.
Rules
- Read code before judging — never flag without reading actual file and context.
- Respect project conventions — do not flag patterns chosen by AGENTS.md or project docs.
- Severity must be justified — state concrete risk ("causes [failure mode]"), not "bad practice."
- Findings must be actionable — file:line + specific recommendation.
- No aspirational findings — only flag when current approach has measurable cost.
- Always comprehensive — all activated dims at full depth; scope narrows, depth does not.
- Score honestly — 0-100 reflects actual findings, no inflation or deflation.
- Group by dimension, not file — systemic patterns over file-by-file noise.
- Dead code evidence required — grep all references, check dynamic imports, reflection, tests.
- Tiers 2-5 are not optional — they compound faster than code debt.
- Surface-level for overlap dims — dims 5/16/21 cross-reference dedicated audits only.
- Activation table governs scope — skip N/A dims, redistribute weight.
- Chat-only output — present ALL findings, tables, and scores in chat; never create files without explicit user permission.
Process
Step 1: Context & Stack Detection
- Read AGENTS.md/README (or warn if missing)
git status+git log --oneline -5+git log --since="2 weeks ago" --name-only- Detect stack, classify project type (WEB/API/LIB/CLI/MOB/DATA/DI), activate dimensions
- Parse
$ARGUMENTSfor focus and scope
🧹 [Tech Debt Step 1: Context & Stack Detection] Stack: [lang] [type]. [X]/22 active. [Y] files ([Z] recent).
Step 2: Tool Execution
Run before manual analysis — provides deterministic baseline:
- Lint: eslint / ruff / clippy / golangci-lint
- Format: prettier --check / black --check / gofmt -l
- Audit: npm audit / pip-audit / cargo audit
- Types: tsc --noEmit / mypy / pyright
🧹 [Tech Debt Step 2: Tool Execution] Tools: [list]. [Baseline summary].
Step 3: Systematic Tier Audit
Read references/dimensions.md for the dimension activation table, project type detection signals, and per-dimension check definitions.
Work tiers 1-5 in order. Audit all activated dimensions per tier.
🧹 [Tech Debt Step 3: Tier N] Auditing [dimension]...
Step 4: Findings & Score
Read references/scoring.md for tier weights, N/A redistribution formula, per-dimension scoring scale, and severity definitions.
Read references/output-template.md for finding format, summary table, positive observations, improvement plan, fix options, and session-end format.
- Score each activated dimension 0-10
- Calculate health score using tier weights and N/A redistribution
- Rank findings by severity (Critical → Warning → Suggestion)
- Present: stack summary, tier-by-tier findings with evidence, summary table, positive observations, health score, improvement plan, fix options
Self-Verification
Canonical version in
references/output-template.md. Brief version here for quick reference.
Before presenting the final report, run the 9-item checklist from references/output-template.md.
Session End
🧹 [Tech Debt Complete]
Score: [XX]/100. Code [X]/33, Arch [X]/23, Infra [X]/19, Quality [X]/17, Ops [X]/8. Findings: [X] critical, [Y] warnings, [Z] suggestions across [N] dimensions.
Next steps (ask user — do not auto-execute):
- Save report to
specs/audit-reports/tech-debt-<date>.md? - Implement fixes? (offer by priority tier)
- Create remediation plan? →
/1-plan - Related:
/ai-assist-security-audit,/ai-assist-observability-audit,/ai-assist-test-audit
Recovery
| Issue | Solution |
|---|---|
| Project too large | Focus on $ARGUMENTS scope or highest-risk dirs |
| No linter config | Note absence as finding; use language defaults |
| AGENTS.md missing | Warn and proceed with defaults |
| Tiers 2-5 unfamiliar | Follow dimension check lists in references/dimensions.md systematically |
| Small codebase | All activated dims apply -- report "Clean" quickly |
Important Reminders
Response format: Every response starts with 🧹 [Tech Debt Step X: Name]
Hard rules: Read code before flagging (rule 1). Respect conventions (rule 2). Evidence for dead code (rule 9). All 5 tiers matter (rule 10).
Process rules: Always comprehensive depth (rule 6). Activation table mandatory (rule 12). Group by dimension (rule 8). Summary table mandatory.
Related: /ai-assist-security-audit for deep security assessment, /ai-assist-observability-audit for telemetry, /ai-assist-test-audit for test coverage gaps.
Signals
- GitHub stars
- 89
- Forks
- 12
- Last commit
- Aug 2026
Advanced
- Catalog kind
- skill
- Gateway key
ai-assist-tech-debt- Source
- github.com/jparkerweb/ai-assist-skills