SuperAPI AI 工具集

tech-debt-analyzer

编程与开发

查看项目

更新于 10-14 10:04

技能介绍

用途

技术债分析器(Tech Debt Analyzer)用于在 JavaScript/TypeScript 代码库中系统性地识别、分析、记录和追踪技术债。它面向需要评估代码质量、建立技术债登记表、制定债务修复计划或预防新债产生的开发场景。

主要能力

自动化分析:提供两个 Python 脚本。detect_code_smells.py 用于检测代码异味,包括超过 500 行的大文件、圈复杂度高于 10 或长度超过 50 行的复杂函数、TODO/FIXME/HACK/XXX/BUG 等债务标记、遗留的 console 调试语句、TypeScript 中的 any 弱类型、参数超过 5 个的函数、嵌套超过 4 层的代码以及魔法数字。analyze_dependencies.py 用于分析 package.json,识别已废弃包(如 request、tslint)、重复功能(如多个 HTTP 客户端)、版本约束问题(过松或过严)等。

人工评审补充:自动化分析之外,还提供人工审查的关注维度,覆盖架构债、测试债、文档债、性能债和安全债。

分类与评估:参考 references/debt_categories.md,将债务分为九类:代码质量、架构、测试、文档、依赖、性能、安全、基础设施、设计。严重程度分为 Critical、High、Medium、Low 四级,并配有影响/工作量优先级矩阵。

文档模板:提供技术债登记表模板(assets/DEBT_REGISTER_TEMPLATE.md)和架构决策记录模板(assets/ADR_TEMPLATE.md),支持登记债务条目、追踪状态、记录决策上下文与后果。

预防策略:包含代码审查清单、自动化 lint 与检查配置建议(如复杂度、函数行数、参数数量、嵌套深度限制)、以及按周/月/季度安排的维护节奏。

使用方式

运行代码异味检测:python3 scripts/detect_code_smells.py src --output markdown

运行依赖分析:python3 scripts/analyze_dependencies.py package.json

随后按工作流进行人工评审、分类评估、文档记录、优先级排序和修复跟踪。示例工作流为:第一周运行自动化分析并人工审查关键区域;第一至二周基于模板创建技术债登记表并录入发现;第二周团队评审并分配 sprint 容量;第三至六周修复并更新登记表、为重大重构创建 ADR;每月进行趋势分析。

适用场景

  • 评估 JavaScript/TypeScript 代码库的技术债状况
  • 建立和维护技术债登记表
  • 为技术债修复制定优先级和计划
  • 记录架构决策以避免未来债务
  • 实施技术债预防和定期维护机制

限制

该技能的分析脚本目前针对 JavaScript/TypeScript 代码库和 package.json 依赖文件,其他语言和包管理生态暂未提供支持。安全相关的依赖漏洞检测需要额外的 audit 数据,脚本本身不直接提供。人工评审部分依赖团队判断。具体价格、平台兼容性等商业信息暂未提供。