Installs into .claude/skills of the current project.
Are you the author of Techdebt?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/brycewang-stanford-techdebt)
---
name: techdebt
description: Find and fix technical debt including duplicated code, dead code, outdated patterns, and code smells. Run at the end of sessions to clean up.
workflow_stage: engineering
compatibility:
- claude-code
- cursor
- codex
- gemini-cli
author: Awesome Econ AI Community
version: 1.0.0
disable-model-invocation: true
tags:
- refactoring
- code-quality
- maintenance
---
# Technical Debt Finder
Identify and fix technical debt in the codebase.
## What to Look For
### Code Duplication
- Functions with similar logic that could be consolidated
- Copy-pasted code blocks
- Repeated patterns that should be abstracted
### Dead Code
- Unused imports
- Unused functions or classes
- Commented-out code blocks
- Unreachable code paths
### Outdated Patterns
- Deprecated API usage
- Old-style string formatting (% or .format) vs f-strings
- Type hints using `typing.List` instead of `list`
- Missing type hints on public functions
### Code Smells
- Functions longer than 50 lines
- Too many parameters (more than 5)
- Deep nesting (more than 3 levels)
- Magic numbers without constants
- Overly complex conditionals
### Missing Best Practices
- Missing docstrings on public functions
- Missing error handling
- Hardcoded values that should be config
- Missing tests for critical paths
## Workflow
1. **Scan the Codebase**
- Look for patterns matching the issues above
- Prioritize by impact and ease of fix
2. **Report Findings**
- List issues by category
- Include file paths and line numbers
- Estimate severity (high/medium/low)
3. **Fix Issues**
- Start with high-severity, easy fixes
- Create atomic commits for each fix
- Run tests after each change
4. **Verify**
- Run linter: `ruff check .`
- Run tests: `pytest`
- Ensure no new issues introduced
## Arguments
Optionally specify a directory or file to focus on.
Usage:
- `/techdebt` - Scan entire project
- `/techdebt src/` - Scan specific directory
- `/techdebt src/utils.py` - Scan specific file
## Output
Provide a summary of:
- Issues found (by category)
- Issues fixed
- Remaining items for future sessions