github-issue-dedupe について
github-issue-dedupeは、キーワード、エラー、症状を使って重複の可能性があるGitHub issueを探すスキルです。候補を比較し、確度が高い場合に限って対象issueにコメントします。
主な機能
- 01キーワードやエラーによるissue検索
- 02症状と根本原因の比較
- 03gh issue viewで候補を確認
- 04確度の高い一致のみコメント
活用シーン
- 01新しいissueが重複かどうかの確認
- 02同じエラーメッセージを持つ報告の検索
- 03類似していても別のバグへの重複コメントの回避
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ warpdotdev/ oz-skills --skill github-issue-dedupeインストール後、Claude Code で/github-issue-dedupeを入力して読み込まれたか確認します。
同梱ファイルREADME.md
詳細
GitHub の重複 Issue 検出
複数の検索戦略を使って、GitHub の重複 Issue を見つけます。手動で実行することも、GitHub Actions で自動化することもできます。
ワークフロー
1. Issue のコンテキストを収集する
対象の Issue から主要な情報を抽出します:
- Issue 番号とタイトル
- 本文全体
- エラーメッセージまたはスタックトレース
- キーワードと技術用語
- 症状または動作の説明
2. 検索戦略
複数の戦略を使って関連 Issue を検索するには、gh を使用します:
- タイトルと本文からキーワードを検索する
- 類似するエラーメッセージを検索する
- 類似する症状を探す
3. 候補を確認する
重複の可能性がある各 Issue について:
gh issue view <number>で Issue 全体を表示する- 次の点を比較します:
- 根本原因(同じ根本的な問題か?)
- 症状(同じ動作か?)
- エラーメッセージ(完全一致、または非常によく似ているか?)
- 影響を受けるコンポーネント(同じコード領域か?)
確信度が高いことを示す要素:
- エラーメッセージが完全に一致する
- 再現手順が同じ
- 説明は異なるが根本原因が同じ
- 一方の Issue がもう一方を参照している
確信度が低い(重複ではない)場合:
- 症状は似ているが原因が異なる
- 関連はあるが、互いに独立したバグ
- 同じコンポーネントだが動作が異なる
4. 調査結果を報告する
重複が見つかった場合:
対象の Issue にコメントを投稿します:
gh issue comment <number> --body "This is potentially a duplicate of #123 and #456."
形式のルール:
- 重複が 1 件:「これは #123 と重複している可能性があります。」
- 重複が 2 件:「これは #123 および #456 と重複している可能性があります。」
- 重複が 3 件以上:「これは #123、#456、および #789 と重複している可能性があります。」
確信度が高い場合(90% 以上)のみコメントします。 不確かな場合は何もしません。
例
例 1:明らかな重複
対象の Issue #150:
Title: "Dropdown menu stays open on mobile Safari"
Body: Clicking menu items doesn't close dropdown on iOS
検索プロセス:
gh issue list --search "dropdown mobile safari"
gh issue list --search "menu doesn't close"
gh issue view 87 # Found similar issue
Issue #87:
Title: "Mobile menu not closing after selection"
Body: On iOS Safari, menu stays open after clicking items
判定: 重複
- 症状が同じ(メニューが開いたままになる)
- プラットフォームが同じ(iOS Safari)
- 根本原因が同じ
例 2:類似しているが重複ではない
対象の Issue #200:
Title: "Form validation error on submit"
Error: "Cannot read property 'value' of null"
検索プロセス:
gh issue list --search "form validation"
gh issue list --search "Cannot read property value null"
gh issue view 175
Issue #175:
Title: "Form submission fails"
Error: "Cannot read property 'email' of undefined"
判定: 重複ではない
- エラーメッセージが異なる
- null 参照の対象が異なる(値とメールアドレス)
- 関連する領域だが、別のバグ
例 3:複数の重複
対象の Issue #300:
Title: "Build fails with 'module not found' error"
Error: Error: Cannot find module './config'
検索結果:
- Issue #250:同じエラー、同じモジュール
- Issue #280:同じエラー、同じモジュール
- Issue #290:異なるモジュールのエラー(重複ではない)
対応:
gh issue comment 300 --body "This is potentially a duplicate of #250 and #280."
コメント
Markdown 対応