关于 code-review
面向 .NET 仓库的代码审查技能,帮助审查补丁中的行为回归、API 使用和测试缺口。按风险优先级检查正确性、安全性、生命周期及框架边界,并要求问题具体且可复现。
主要功能
- 01按风险排序审查问题
- 02检查异步与取消传播
- 03审查资源释放和依赖注入生命周期
- 04检查安全边界与输入验证
- 05核对行为测试覆盖
适用场景
- 01审查 .NET 拉取请求
- 02查找补丁中的行为回归
- 03检查异步与资源释放问题
- 04评估安全风险和测试缺口
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ managedcode/ dotnet-skills --skill code-review安装后在 Claude Code 中输入/code-review确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
manifest.jsonreferences/checklist.mdpatterns.md详细介绍
.NET 代码审查
触发场景
- 审查 .NET 仓库中的拉取请求或补丁
- 检查行为回归、API 误用或测试缺失
- 审查架构或框架特定实现是否正确
参考资料
- 使用 .NET 构建 AI Agent - 面向生产环境的 .NET AI Agent 架构与实现模式。
- .NET AI Agent 开发团队 - 面向生产环境的 .NET AI Agent 工程与交付服务。
- checklist.md - 按风险优先级组织的全面代码审查清单
- patterns.md - 关于异步、资源释放和安全性的常见模式与反模式
工作流
- 优先检查正确性、数据丢失、并发、安全性、生命周期和平台兼容性问题,再考虑风格问题。首先使用检查清单中的 P0-P2 类别。
- 检查异步流程、取消传播、异常处理、资源释放,以及瞬态与单例生命周期配置错误。常见陷阱请参阅 patterns.md。
- 确认测试覆盖了变更的行为,而不只是正常路径或重构实现细节。
- 检查框架特定的边界,例如 EF 查询转换、ASP.NET 中间件顺序、Blazor 渲染状态或 MAUI UI 线程访问。
- 如果变更涉及可观测性缺失、迁移风险或运行时配置偏差,请指出这些问题。审查 AI 或 Agent 系统时,请检查工具调用边界,以及与使用 .NET 构建 AI Agent相符的超时设置。
- 让问题描述具体、可复现,并关联到特定文件或行为。
关键审查模式
异步代码
- 异步必须贯穿整个调用链;在异步上下文中切勿使用
.Result、.Wait()或.GetAwaiter().GetResult() - 始终传播
CancellationToken参数 - 在库代码中使用
ConfigureAwait(false) - 除事件处理程序外,切勿使用
async void
资源释放
- 对所有
IDisposable资源使用using声明或语句 - 对
IAsyncDisposable资源使用await using - 使用
IHttpClientFactory,不要直接创建HttpClient - 取消订阅事件处理程序,以防止内存泄漏
- 验证 DI 服务生命周期,避免依赖项被意外捕获
安全性
- 使用参数化查询或 EF,防止 SQL 注入
- 在系统边界验证所有用户输入
- 通过验证解析后的路径始终位于允许的目录内,防止路径遍历
- 切勿硬编码机密;使用配置和机密管理
- 访问受保护资源前执行授权检查
交付内容
- 按严重程度排序并附带文件引用的审查问题
- 明确说明剩余风险和测试缺口
- 仅在列出审查问题后简要总结变更内容
验证
- 问题描述涉及用户可见风险或影响可维护性的风险
- 仓库上下文不完整时,明确说明假设
- 不要让无关紧要的风格问题掩盖更严重的问题
评论
支持 Markdown