关于 techdebt
用于检查当前分支中的技术债、重复代码和不必要复杂度的技能。它指导 Agent 结合上下文审阅变更,报告文件与行号,并在进行保持行为不变的重构前征求同意。
主要功能
- 01基于合并基点比较分支变更
- 02结合上下文阅读修改过的源文件
- 03查找重复逻辑与无用代码
- 04报告文件及行号
- 05重构前征求同意
适用场景
- 01合并前审查分支
- 02定位变更文件中的冗余逻辑
- 03评估清理是否能保持现有行为
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ datadog/ dd-trace-java --skill techdebt安装后在 Claude Code 中输入/techdebt确认已加载。
详细介绍
技术债清理技能
分析当前分支上的更改,找出并修复技术债、代码重复和不必要的复杂性。
说明
第 1 步:获取分支更改
找到合并基点(此分支从 master 分出的提交),并与之比较:
# Find upstream (DataDog org repo)
UPSTREAM=$(git remote -v | grep -E 'DataDog/[^/]+(.git)?\s' | head -1 | awk '{print $1}')
if [ -z "$UPSTREAM" ]; then
echo "No DataDog upstream found, using origin"
UPSTREAM="origin"
fi
# Find the merge-base (commit where this branch diverged from master)
MERGE_BASE=$(git merge-base HEAD ${UPSTREAM}/master)
echo "Comparing changes introduced on this branch since diverging from master using base commit: $MERGE_BASE"
git diff $MERGE_BASE --stat
git diff $MERGE_BASE --name-status
如果没有更改,告知用户并停止。
如果有更改,阅读差异以及修改过的源文件的完整内容(不包括测试文件),以了解上下文。
第 2 步:分析问题
检查以下问题:
代码重复
- 应提取到共享函数中的相似代码块
- 只有细微差异的复制粘贴逻辑
不必要的复杂性
- 过度设计的解决方案(仅使用一次的抽象)
- 过多的间接层或层级
- 不再需要的向后兼容垫片
冗余代码
- 无效代码路径
- 对不可能情况进行过度防御性检查
第 3 步:报告并修复
简要汇总发现的问题,并注明文件名和行号。
然后询问用户是否希望你修复这些问题。修复时:
- 每次只进行一项逻辑更改
- 不要更改行为,只进行重构
- 跳过琐碎或风格方面的问题
评论
支持 Markdown