---
按照 Sentry 工程实践进行代码审查。用于审查拉取请求、检查代码变更或提供代码质量反馈。涵盖安全性、性能、测试和设计审查。
Best use case
--- is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
按照 Sentry 工程实践进行代码审查。用于审查拉取请求、检查代码变更或提供代码质量反馈。涵盖安全性、性能、测试和设计审查。
Teams using --- should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/unnamed/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How --- Compares
| Feature / Agent | --- | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
按照 Sentry 工程实践进行代码审查。用于审查拉取请求、检查代码变更或提供代码质量反馈。涵盖安全性、性能、测试和设计审查。
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Sentry 代码审查
审查 Sentry 项目代码时请遵循以下指南。
## 审查清单
### 识别问题
在代码变更中寻找以下问题:
- **运行时错误**:潜在的异常、空指针问题、越界访问
- **性能**:无界的 O(n²) 操作、N+1 查询、不必要的内存分配
- **副作用**:影响其他组件的意外行为变更
- **向后兼容性**:没有迁移路径的破坏性 API 变更
- **ORM 查询**:复杂的 Django ORM 可能导致意外的查询性能
- **安全漏洞**:注入、XSS、访问控制缺陷、密钥泄露
### 设计评估
- 组件交互是否逻辑合理?
- 变更是否与现有项目架构一致?
- 是否与当前需求或目标存在冲突?
### 测试覆盖
每个 PR 都应有适当的测试覆盖:
- 业务逻辑的功能测试
- 组件交互的集成测试
- 关键用户路径的端到端测试
验证测试是否覆盖了实际需求和边界情况。避免在测试代码中使用过多的分支或循环。
### 长期影响
当变更涉及以下内容时,标记为需要高级工程师审查:
- 数据库 Schema 修改
- API 契约变更
- 新框架或库的引入
- 性能关键代码路径
- 安全敏感功能
## 反馈指南
### 语气
- 保持礼貌和同理心
- 提供可操作的建议,而非模糊的批评
- 不确定时用疑问句表达:"你是否考虑过...?"
### 批准
- 仅剩轻微问题时即可批准
- 不要因为代码风格偏好而阻止 PR
- 记住:目标是降低风险,而非追求完美代码
## 需要标记的常见模式
### Python/Django
```python
# 错误示例:N+1 查询
for user in users:
print(user.profile.name) # 每个用户单独查询
# 正确示例:预取关联数据
users = User.objects.prefetch_related('profile')
```
### TypeScript/React
```typescript
// 错误示例:useEffect 中缺少依赖
useEffect(() => {
fetchData(userId);
}, []); // userId 不在依赖中
// 正确示例:包含所有依赖
useEffect(() => {
fetchData(userId);
}, [userId]);
```
### 安全
```python
# 错误示例:SQL 注入风险
cursor.execute(f"SELECT * FROM users WHERE id = {user_id}")
# 正确示例:参数化查询
cursor.execute("SELECT * FROM users WHERE id = %s", [user_id])
```
## 参考资料
- [Sentry 代码审查指南](https://develop.sentry.dev/engineering-practices/code-review/)Related Skills
bgo
Automates the complete Blender build-go workflow, from building and packaging your extension/add-on to removing old versions, installing, enabling, and launching Blender for quick testing and iteration.
upgrading-expo
Upgrade Expo SDK versions
upgrade-stripe
Guide for upgrading Stripe API versions and SDKs
upgrade-integration
Integrate Carnegie Learning's UpGrade A/B testing platform into LMS and EdTech applications. Guides setup of decision points, experiment conditions, LTI/xAPI integration, and outcome logging. Use when asked to add A/B testing, experiments, or feature flags to educational software.
[Updated] Sweep Through Your Contacts with Speed and Skill
This Article Describes [Updated] Sweep Through Your Contacts with Speed and Skill
update-codeql-query-dataflow-csharp
Upgrade C# CodeQL queries from legacy (v1) language-specific dataflow API to modern (v2) shared dataflow API while ensuring query result equivalence through test-driven development. Use this skill when modernizing C# dataflow queries to use the unified dataflow library.
unsafe-checker
CRITICAL: Use for unsafe Rust code review and FFI. Triggers on: unsafe, raw pointer, FFI, extern, transmute, *mut, *const, union, #[repr(C)], libc, std::ffi, MaybeUninit, NonNull, SAFETY comment, soundness, undefined behavior, UB, safe wrapper, memory layout, bindgen, cbindgen, CString, CStr, 安全抽象, 裸指针, 外部函数接口, 内存布局, 不安全代码, FFI 绑定, 未定义行为
unreal-engine-cpp-pro
Expert guide for Unreal Engine 5.x C++ development, covering UObject hygiene, performance patterns, and best practices.
universal-axiom-permutations
Understanding and working with emergent permutations in The Universal Axiom intelligence framework - how the multiplicative formula generates novel insights through dynamic variable interactions
unity-unitask
UniTask library expert specializing in allocation-free async/await patterns, coroutine migration, and Unity-optimized asynchronous programming. Masters UniTask performance optimizations, cancellation handling, and memory-efficient async operations. Use PROACTIVELY for UniTask implementation, async optimization, or coroutine replacement.
unity-ecs-patterns
Master Unity ECS (Entity Component System) with DOTS, Jobs, and Burst for high-performance game development. Use when building data-oriented games, optimizing performance, or working with large ent...
unity-developer
Build Unity games with optimized C# scripts, efficient rendering, and proper asset management. Masters Unity 6 LTS, URP/HDRP pipelines, and cross-platform deployment. Handles gameplay systems, UI implementation, and platform optimization. Use PROACTIVELY for Unity performance issues, game mechanics, or cross-platform builds.