mcpField
P
pre-modification-check

pre-modification-check

github.com/repowise-dev测试与质量8.0k65 次安装今天更新
代码仓库

关于 pre-modification-check

Repowise 的代码修改风险检查技能,用于编辑索引代码库中的文件前评估影响。它展示热点、依赖方、所有权、测试缺口和安全信号,帮助开发者判断变更范围。

主要功能

  1. 01文件热点与风险评估
  2. 02依赖方与影响范围
  3. 03共同变更文件识别
  4. 04所有权与维护者单点信号
  5. 05测试缺口与安全指标

适用场景

  1. 01编辑文件前检查风险
  2. 02评估 API 变更的影响
  3. 03规划涉及关联文件的重构

MCP 相关

使用 Repowise 的 get_risk 和 get_context MCP 工具评估目标文件,并在修改前获取上下文;较大规模重构也可参考 get_health。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/repowise-dev/repowise --skill pre-modification-check

安装后在 Claude Code 中输入/pre-modification-check确认已加载。

详细介绍

使用 Repowise 进行修改前检查

修改 Repowise 已建立索引的代码库中的文件之前,请先评估影响。

编辑文件之前

调用 get_risk(targets=["path/to/file.py"])。每个文件都会返回 hotspot_score、trend、risk_type、impact_surface(前 3 项)、 dependents_count、co_change_partners、primary_owner、 test_gap 和 security_signals。请查看以下信息:

  • 缺陷修复历史(defect_profile)——仅在有统计到的修复记录的文件中提供:过去 6 个月的 fix_count、last_fix_days_ago、表示近期修复压力持续存在的 bug_magnet 标志,以及 top_symbols(每个符号的计数是近似值,请理解为“主要集中在这里”)。反复需要修复的文件,是下次编辑会造成问题的最强单一信号;优先说明这一点。
  • 热点状态(hotspot_score、trend)——高变更频率且复杂?需要格外谨慎。
  • 依赖方(dependents_count、impact_surface)——影响范围有多大?
  • 协同变更伙伴——会与此文件一同变更的文件(通常没有导入关系);你可能也需要更新它们。
  • 所有权/巴士系数——由谁负责维护?是否只有一位作者维护?
  • 测试缺口和安全信号——修改前标出未经测试或涉及安全敏感内容的文件。

修改多个文件时

在一次调用中批量检查所有目标:get_risk(targets=["file1.py", "file2.py", "module/"])。

何时提醒用户

如果 get_risk 显示:

  • defect_profile 中的 bug_magnet 已启用——明确说明此文件近期反复被修复
  • 热点分数高于第 90 百分位——说明这是一个频繁变更、高风险的文件
  • 依赖方超过 10 个——列出主要依赖方;此处的 API 变更会破坏调用方
  • 巴士系数为 1——说明只有一人维护这段代码
  • 风险类型为 "bug-prone" 或 "high-coupling"——修改前明确指出

重构或移动代码之前

先调用 get_context(targets=["file.py"]),了解完整上下文:有哪些代码使用此文件、有哪些决策约束此文件,以及采用当前结构的原因。这可以避免意外违反架构决策。

对于大型重构,还要调用 get_health(targets=["file.py"])——标记出的发现项(复杂度、深层嵌套、低内聚性、重复代码)会告诉你需要改进的内容,并提供修改前后的评分。

错误处理

如果 get_risk 返回工具错误,MCP 服务可能尚未运行。继续进行修改,但请注明无法进行风险评估。

评论

支持 Markdown