name: 技术债务分析器 description: 此技能应用于分析代码库中的技术债务、文档化代码质量问题、创建技术债务寄存器或评估代码可维护性。用于识别代码异味、架构问题、依赖问题、缺失文档、安全漏洞,并创建全面的技术债务文档。
技术债务分析器
系统性地识别、分析和文档化技术债务。
使用场景
使用场景:
- 分析代码质量问题
- 创建技术债务寄存器
- 评估代码可维护性
- 识别依赖问题
- 文档化安全漏洞
- 规划重构工作
不适用于:
- 编写新代码 → 使用
generic-feature-developer - 代码审查 → 使用
generic-code-reviewer - 编写测试 → 使用
test-specialist
快速分析命令
# 查找大文件(>500行)
find src -name "*.ts" -exec wc -l {} + | awk '$1 > 500' | sort -rn
# 查找TODO/FIXME标记
grep -rn "TODO\|FIXME\|HACK\|XXX" src/
# 检查生产代码中的console.log
grep -rn "console.log" src/ --include="*.ts" --include="*.tsx"
# 查找TypeScript 'any'用法
grep -rn ": any" src/ --include="*.ts" --include="*.tsx"
# 检查过时依赖
npm outdated
# 安全漏洞
npm audit
# 未使用导出(需要ts-unused-exports)
npx ts-unused-exports tsconfig.json
债务类别
| 类别 | 示例 |
|---|---|
| 代码质量 | 大文件、复杂函数、TODO/FIXME标记 |
| 架构 | 紧耦合、缺失抽象、循环依赖 |
| 测试 | 缺失覆盖率、脆弱测试、执行缓慢 |
| 文档 | 缺失README、过时文档、无ADRs |
| 依赖 | 过时包、安全漏洞 |
| 性能 | N+1查询、内存泄漏、大包 |
| 安全 | 缺失验证、暴露密钥、XSS/SQL注入 |
分析工作流
1. 自动化检测
需检查的代码异味:
- 大文件(>500行)
- 复杂函数(圈复杂度 >10)
- 债务标记(TODO、FIXME、HACK、XXX)
- 生产代码中的console语句
- TypeScript中的
any类型 - 长参数列表(>5参数)
- 深层嵌套(>4层)
依赖问题:
- 废弃包
- 重复功能
- 宽松版本约束
- 已知漏洞
2. 严重性评估
| 严重性 | 标准 | 行动 |
|---|---|---|
| 严重 | 安全漏洞、数据丢失风险 | 立即修复 |
| 高 | 性能问题、阻塞问题 | 当前冲刺 |
| 中 | 代码质量、缺失文档 | 本季度 |
| 低 | 轻微异味、优化 | 方便时 |
3. 优先级矩阵
| 影响/努力 | 低 | 中 | 高 |
|---|---|---|---|
| 高影响 | 优先执行 | 次优执行 | 计划执行 |
| 中影响 | 次优执行 | 计划执行 | 考虑 |
| 低影响 | 快速获胜 | 考虑 | 避免 |
债务寄存器格式
## DEBT-001: 描述
**类别:** 代码质量 | **严重性:** 高
**位置:** src/services/UserService.ts
**描述:** 问题的简要描述
**影响:**
- 业务:如何影响交付
- 技术:为何有问题
- 风险:可能出错的地方
**建议解决方案:** 如何处理
**努力:** 天数/小时估计
**目标:** 冲刺/季度
预防策略
自动化防护
{
"rules": {
"complexity": ["error", 10],
"max-lines-per-function": ["error", 50],
"max-params": ["error", 5],
"max-depth": ["error", 4]
}
}
维护计划
| 频率 | 任务 |
|---|---|
| 每周 | 审查TODO/FIXME、更新寄存器 |
| 每月 | 依赖更新、债务审查 |
| 每季度 | 全面分析、架构评审 |
自我批评检查清单
完成债务分析后:
- [ ] 所有自动化检查已运行
- [ ] 关键路径的审阅已完成
- [ ] 严重性评估合理
- [ ] 建议解决方案可操作
- [ ] 优先级矩阵应用一致
- [ ] 寄存器条目完整
另请参阅
- 代码审查标准 - 质量检查
- 项目
CLAUDE.md- 工作流规则