sentry-pr-code-review について
GitHubのプルリクエストコメントでSeer by Sentryが指摘した問題を確認し、修正するワークフロースキルです。gh CLIでコメントを探し、現行コードで指摘を検証して修正し、対応結果を報告します。
主な機能
- 01gh CLIによるSeerコメントの取得
- 02Seer指摘があるオープンPRの検索
- 03問題の詳細と修正案の解析
- 04現行コードに基づく指摘の検証
- 05解決・保留項目の要約
活用シーン
- 01プルリクエストのSeerフィードバック確認
- 02未解決のSeerコメントがあるオープンPRの検索
- 03報告されたコード問題の確認と修正
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ getsentry/ sentry-for-ai --skill sentry-pr-code-reviewインストール後、Claude Code で/sentry-pr-code-reviewを入力して読み込まれたか確認します。
詳細
Sentry コードレビュー
GitHub PR のコメントで Seer(Sentry 提供)が指摘した問題を確認し、修正します。
このスキルを使用する場合
- ユーザーが PR 上の「Sentry のコメントを確認」または「Sentry の問題を修正」と依頼した場合
- ユーザーが PR の URL/番号を共有し、Sentry または Seer のフィードバックに言及した場合
- ユーザーが「Sentry のレビューに対応」または「Sentry の指摘を解決」と依頼した場合
- ユーザーが未解決の Sentry コメントがある PR を探したい場合
前提条件
ghCLI がインストールされ、認証済みであること- リポジトリに Seer by Sentry GitHub App がインストールされていること
重要: 以下で解析するコメント形式は、Seer の現在の出力に基づいています。これは API の契約ではなく、変更される可能性があります。実際のコメント構造を必ず確認してください。
フェーズ 1:Seer のコメントを取得する
gh api repos/{owner}/{repo}/pulls/{PR_NUMBER}/comments --paginate \
--jq '.[] | select(.user.login == "seer-by-sentry[bot]") | {file: .path, line: .line, body: .body}'
ボットのログイン名は seer-by-sentry[bot] です — sentry[bot] や sentry-io[bot] ではありません。
PR 番号が指定されていない場合は、Seer のコメントがある最近の PR を探します。
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
フェーズ 2:各コメントを解析する
Markdown 本文から以下を抽出します。
- バグの説明:
**Bug:**で始まる行 - 深刻度/信頼度:
<sub>Severity: X | Confidence: X.XX</sub>内 - 分析:
<summary>🔍 <b>Detailed Analysis</b></summary>ブロック内 - 修正案:
<summary>💡 <b>Suggested Fix</b></summary>ブロック内 - AI プロンプト:
<summary>🤖 <b>Prompt for AI Agent</b></summary>ブロック内
フェーズ 3:確認して修正する
各問題について:
- 指定された行のファイルを読みます
- 現在のコードにも問題が残っていることを確認します(後続のコミットですでに修正されていないか確認してください)
- 周辺のコードを確認し、実際の問題か誤検知かを判断します
- 修正を実装します(提案された修正を出発点にするか、独自の修正を記述します)
- エッジケースとリグレッションのリスクを検討します
フェーズ 4:結果をまとめて報告する
## 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 レビューのトリガー
| トリガー | タイミング |
|---|---|
| PR を「Ready for Review」に設定 | エラー予測を自動実行 |
| PR がレビュー可能な状態でコミットをプッシュ | 予測を再実行 |
@sentry review コメント | レビューと提案を完全に手動実行 |
| Draft PR | スキップ — レビュー可能な状態になるまでレビューされません |
トラブルシューティング
| 問題 | 解決策 |
|---|---|
| Seer のコメントが見つからない | Seer GitHub App がリポジトリにインストールされていることを確認してください |
| ボット名が一致しない | ログイン名は seer-by-sentry[bot] です。sentry[bot] ではありません |
| 新しい PR にコメントが表示されない | PR を「Ready for Review」にする必要があります(ドラフトでは不可) |
gh api が一部の結果しか返さない | --paginate フラグが含まれていることを確認してください |
よくある問題の種類
| カテゴリ | 例 |
|---|---|
| 型安全性 | null チェックの不足、安全でない型アサーション |
| エラー処理 | エラーの握りつぶし、境界処理の不足 |
| バリデーション | 許容範囲が広すぎる入力、サニタイズの不足 |
| 設定 | 環境変数の不足、誤ったパス |
コメント
Markdown 対応