En bref
La skill relit un changement selon les pratiques d’ingénierie Sentry : sécurité, performance, tests et conception, typiquement à l’occasion d’une pull request. Elle cherche des erreurs à l’exécution, des complexités ou N+1, des effets de bord, des ruptures d’API sans chemin de migration, des requêtes ORM coûteuses, et des failles (injection, XSS, accès, secrets). Elle interroge aussi la cohérence avec l’architecture et les exigences du projet. Le skill fournit une liste de contrôle, des consignes de retour, et des patrons à signaler (par exemple un N+1 à corriger par un prefetch, une concaténation SQL à remplacer par une requête paramétrée). Ce n’est pas la revue de performance Django exhaustive, ni la revue de sécurité à haute confiance exclusivement tournée vers l’exploitabilité, même si elle y recoupe.
Ce que ça fait
- Couvre erreurs runtime, performance, effets de bord, compatibilité, ORM et sécurité, dans l’esprit d’une revue Sentry.
- Appuie les retours sur des patrons concrets, avec des alternatives saines déjà documentées par le skill.
- Juge aussi l’alignement architectural, pas seulement le style.
- S’applique à un changement ou une PR, pas à la rédaction d’un SECURITY_MODEL.md.
Pour qui, et un exemple
Relecteurs de pull requests dans un projet qui suit, ou s’inspire, des pratiques Sentry.
Exemple de demande : On relit une PR Django : la skill signale un N+1 évident, une requête non paramétrée, et un changement d’API public sans note de migration, avec un ton de revue utile.
Quand on demande une revue de code, un avis sur une pull request ou un retour sur la qualité, selon les pratiques Sentry. Exemple rédigé par iadujour.fr à partir du SKILL.md, non testé.
Installer
npx skills add getsentry/skills ou, dans Claude Code, claude plugin marketplace add getsentry/skills puis claude plugin install sentry-skills@sentry-skills.
npx skills add getsentry/skillsclaude plugin marketplace add getsentry/skillsclaude plugin install sentry-skills@sentry-skillsFonctionne avec
- Claude Code
- Cursor
- Cline
- GitHub Copilot
Source : README : installation Claude Code, et skills.sh « Works with Claude Code, Cursor, Cline, GitHub Copilot, and other compatible agents ».
Niveau : Intermédiaire
Suppose un projet déjà en place chez l’éditeur et les outils décrits dans le SKILL.md.
À savoir
Extrait du SKILL.md
La description d’origine, celle que l’agent lit pour décider de charger la skill (en anglais) :
Perform code reviews following Sentry engineering practices. Use when reviewing pull requests, examining code changes, or providing feedback on code quality. Covers security, performance, testing, and design review.
Citée depuis le SKILL.md au commit 24361e7 .
Le SKILL.md compte 97 lignes et 13 sections principales :
- Review Checklist
- Identifying Problems
- Design Assessment
- Test Coverage
- Long-Term Impact
- Feedback Guidelines
- Tone
- Approval
- Common Patterns to Flag
- Python/Django
- TypeScript/React
- Security
- References
Licence : Apache 2.0
Vérifiée le 10 novembre 2026 sur : fichier LICENSE du dépôt .
La licence autorise la reprise : le texte intégral du SKILL.md est reproduit ci-dessous, sans modification, avec sa mention de licence.
Texte intégral du SKILL.md
Reproduit sans modification depuis getsentry/skills (commit 24361e7) , © Sentry, sous licence Apache 2.0 (fichier de licence d’origine ).
Afficher le SKILL.md original (97 lignes, en anglais)
---
name: code-review
description: Perform code reviews following Sentry engineering practices. Use when reviewing pull requests, examining code changes, or providing feedback on code quality. Covers security, performance, testing, and design review.
---
# Sentry Code Review
Follow these guidelines when reviewing code for Sentry projects.
## Review Checklist
### Identifying Problems
Look for these issues in code changes:
- **Runtime errors**: Potential exceptions, null pointer issues, out-of-bounds access
- **Performance**: Unbounded O(n²) operations, N+1 queries, unnecessary allocations
- **Side effects**: Unintended behavioral changes affecting other components
- **Backwards compatibility**: Breaking API changes without migration path
- **ORM queries**: Complex Django ORM with unexpected query performance
- **Security vulnerabilities**: Injection, XSS, access control gaps, secrets exposure
### Design Assessment
- Do component interactions make logical sense?
- Does the change align with existing project architecture?
- Are there conflicts with current requirements or goals?
### Test Coverage
Every PR should have appropriate test coverage:
- Functional tests for business logic
- Integration tests for component interactions
- End-to-end tests for critical user paths
Verify tests cover actual requirements and edge cases. Avoid excessive branching or looping in test code.
### Long-Term Impact
Flag for senior engineer review when changes involve:
- Database schema modifications
- API contract changes
- New framework or library adoption
- Performance-critical code paths
- Security-sensitive functionality
## Feedback Guidelines
### Tone
- Be polite and empathetic
- Provide actionable suggestions, not vague criticism
- Phrase as questions when uncertain: "Have you considered...?"
### Approval
- Approve when only minor issues remain
- Don't block PRs for stylistic preferences
- Remember: the goal is risk reduction, not perfect code
## Common Patterns to Flag
### Python/Django
```python
# Bad: N+1 query
for user in users:
print(user.profile.name) # Separate query per user
# Good: Prefetch related
users = User.objects.prefetch_related('profile')
```
### TypeScript/React
```typescript
// Bad: Missing dependency in useEffect
useEffect(() => {
fetchData(userId);
}, []); // userId not in deps
// Good: Include all dependencies
useEffect(() => {
fetchData(userId);
}, [userId]);
```
### Security
```python
# Bad: SQL injection risk
cursor.execute(f"SELECT * FROM users WHERE id = {user_id}")
# Good: Parameterized query
cursor.execute("SELECT * FROM users WHERE id = %s", [user_id])
```
## References
- [Sentry Code Review Guidelines](https://develop.sentry.dev/engineering-practices/code-review/)
Commentaires.
Un retour d’expérience, une question, une précision sur cette skill ? Les commentaires sont relus avant publication.
Commentaires publiés
Chargement des commentaires…
Laisser un commentaire
Charte de modération. Chaque commentaire est relu avant publication. Sont refusés : l’incitation à la haine, les propos injurieux ou discriminatoires, la publicité, le spam et les liens promotionnels, le hors-sujet et les données personnelles d’autrui.