sentry-pr-code-review

bởi sentry

Xem xét các PR của dự án để kiểm tra các vấn đề được phát hiện trong quá trình đánh giá mã bởi Seer Bug Prediction. Sử dụng khi được yêu cầu xem xét hoặc sửa các vấn đề được Sentry xác định trong PR…

npx skills add https://github.com/getsentry/sentry-agent-skills --skill sentry-pr-code-review

Sentry Code Review

Review and fix issues identified by Seer (by Sentry) in GitHub PR comments.

Invoke This Skill When

  • User asks to "review Sentry comments" or "fix Sentry issues" on a PR
  • User shares a PR URL/number and mentions Sentry or Seer feedback
  • User asks to "address Sentry review" or "resolve Sentry findings"
  • User wants to find PRs with unresolved Sentry comments

Prerequisites

  • gh CLI installed and authenticated
  • Repository has the Seer by Sentry GitHub App installed

Important: The comment format parsed below is based on Seer's current output. This is not an API contract and may change. Always verify the actual comment structure.

Phase 1: Fetch Seer Comments

gh api repos/{owner}/{repo}/pulls/{PR_NUMBER}/comments --paginate \
  --jq '.[] | select(.user.login == "seer-by-sentry[bot]") | {file: .path, line: .line, body: .body}'

The bot login is seer-by-sentry[bot] — not sentry[bot] or sentry-io[bot].

If no PR number is given, find recent PRs with Seer comments:

gh pr list --state open --json number,title --limit 20 | \
  jq -r '.[].number' | while read pr; do
    count=$(gh api "repos/{owner}/{repo}/pulls/$pr/comments" --paginate \
      --jq '[.[] | select(.user.login == "seer-by-sentry[bot]")] | length')
    [ "$count" -gt 0 ] && echo "PR #$pr: $count Seer comments"
  done

Phase 2: Parse Each Comment

Extract from the markdown body:

  • Bug description: Line starting with **Bug:**
  • Severity/Confidence: In <sub>Severity: X | Confidence: X.XX</sub>
  • Analysis: Inside <summary>🔍 <b>Detailed Analysis</b></summary> block
  • Suggested Fix: Inside <summary>💡 <b>Suggested Fix</b></summary> block
  • AI Prompt: Inside <summary>🤖 <b>Prompt for AI Agent</b></summary> block

Phase 3: Verify & Fix

For each issue:

  1. Read the file at the specified line
  2. Confirm issue still exists in current code (not already fixed in a later commit)
  3. Review surrounding code to assess if it's an actual issue or false positive
  4. Implement fix (use suggested fix as starting point, or write your own)
  5. Consider edge cases and regression risk

Phase 4: Summarize and Report Results

## Seer Review: PR #[number]

### Resolved
| File:Line | Issue | Severity | Fix Applied |
|-----------|-------|----------|-------------|
| path:123  | desc  | HIGH     | what done   |

### Skipped (false positive or already fixed)
| File:Line | Issue | Reason |
|-----------|-------|--------|

**Summary:** X resolved, Y skipped

Seer Review Triggers

TriggerWhen
PR set to "Ready for Review"Automatic error prediction
Commit pushed while PR is readyRe-runs prediction
@sentry review commentManual trigger for full review + suggestions
Draft PRSkipped — no review until marked ready

Troubleshooting

IssueSolution
No Seer comments foundVerify the Seer GitHub App is installed on the repo
Bot name mismatchThe login is seer-by-sentry[bot], not sentry[bot]
Comments not appearing on new PRsPR must be "Ready for Review" (not draft)
gh api returns partial resultsEnsure --paginate flag is included

Common Issue Types

CategoryExamples
Type SafetyMissing null checks, unsafe type assertions
Error HandlingSwallowed errors, missing boundaries
ValidationPermissive inputs, missing sanitization
ConfigMissing env vars, incorrect paths

Thêm skills từ sentry

generate-frontend-forms
sentry
Hướng dẫn tạo biểu mẫu bằng hệ thống biểu mẫu mới của Sentry. Sử dụng khi triển khai biểu mẫu, trường biểu mẫu, xác thực hoặc chức năng tự động lưu.
official
sentry-snapshots-cocoa
sentry
Thiết lập đầy đủ Sentry Snapshots cho các dự án Apple/Cocoa. Sử dụng khi được yêu cầu "thiết lập SnapshotPreviews", "thiết lập kiểm thử snapshot Apple", "tải lên snapshot Apple lên…
official
architecture-review
sentry
Đánh giá sức khỏe mã nguồn ở cấp độ nhân viên. Phát hiện các module nguyên khối, lỗi âm thầm, khoảng trống an toàn kiểu dữ liệu, lỗ hổng độ phủ kiểm thử và các vấn đề về thân thiện với LLM.
official
linear-type-labeler
sentry
Phân loại các vấn đề Linear và áp dụng nhãn Loại từ hệ thống phân loại nhãn của không gian làm việc Sentry dựa trên nội dung tiêu đề và mô tả của từng vấn đề.
official
sentry-flutter-sdk
sentry
Thiết lập đầy đủ Sentry SDK cho Flutter và Dart. Sử dụng khi được yêu cầu "thêm Sentry vào Flutter", "cài đặt sentry_flutter", "thiết lập Sentry trong Dart", hoặc cấu hình lỗi…
official
sentry-svelte-sdk
sentry
Thiết lập đầy đủ Sentry SDK cho Svelte và SvelteKit. Sử dụng khi được yêu cầu "thêm Sentry vào Svelte", "thêm Sentry vào SvelteKit", "cài đặt @sentry/sveltekit", hoặc cấu hình…
official
vercel-react-best-practices
sentry
Hướng dẫn tối ưu hiệu suất React và Next.js từ Vercel Engineering. Kỹ năng này nên được sử dụng khi viết, xem xét hoặc tái cấu trúc mã React/Next.js…
official
sentry-tanstack-start-sdk
sentry
Thiết lập đầy đủ Sentry SDK cho TanStack Start React. Sử dụng khi được yêu cầu "thêm Sentry vào TanStack Start", "cài đặt @sentry/tanstackstart-react", hoặc cấu hình lỗi…
official