复杂度趋势跟踪器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/complexity-trend-tracker-agent
技能介绍
解决什么问题
Python 项目的复杂度往往会缓慢累积:新分支、嵌套条件、过长函数混在一起,单次 review 很难看出趋势。团队想在迭代中观察「复杂度是在上升还是被控制住」,需要把指标按时间串起来,并定位到具体模块和变更。
它如何工作
这个技能围绕两条常用度量展开:
- 循环复杂度:用
lizardCLI 统计函数/方法中的路径数量,适合快速看到控制流是否膨胀。 - 认知复杂度:用
radon评估代码理解成本,更贴近阅读与维护时的负担。
输出形式是每周复杂度报告:把一段时间内的复杂度指标按周组织成趋势视图,而不是只看某一次 snapshot。随后按模块集成 git 变更归属——在拿到仓库变更记录后,把复杂度增量关联到发生改动的模块/文件,帮助判断「这一周的复杂度变化来自哪些提交」。
适用边界与注意点
- 适合持续跟踪与回归对比;如果项目没有稳定的模块边界或历史基线,趋势的可解释性会下降。
- 工具对代码结构敏感:重构、抽取函数、调整控制流都会影响指标,趋势波动不等于一定有问题,仍需结合 code review 判断。
lizard的说明提到它覆盖 C/C++(不需要所有头文件或 Java import),但本技能的工作流明确面向 Python 分析。- 环境要求来自上游:Python 需要 3.8 或更高版本(更早版本未经验证);依赖需正确安装后命令才能运行。
使用场景
- 项目迭代中,需按周统计Python代码的循环与认知复杂度,识别复杂度持续上升的模块
- 审查多模块变更时,想将本周复杂度增量关联到具体git提交,定位导致复杂度波动的改动
- 团队维护大型Python项目,需定期生成复杂度趋势报告,评估重构效果
- 代码评审时,需查看不同模块的复杂度变化趋势,辅助判断是否合并高风险改动
适合人员
- Python后端开发者:需持续监控代码复杂度,避免因业务迭代导致模块可维护性下降
- 技术负责人:希望通过周期复杂度趋势,评估团队重构投入的有效性
- 代码审查者:需要在评审时快速定位复杂度异常波动的模块及关联变更
- 架构师:负责制定代码质量规范,需跟踪全局复杂度分布及长期变化趋势