issue-review
報告された問題や技術的な課題に対し、専門知識を持つ複数のAIが連携して、根本原因を深く分析し、解決策を見つけ出す支援をするSkill。
📜 元の英語説明(参考)
系統化的問題分析專家技能,自動協調五個專門代理進行深度問題分析。 適用於: - 使用者或 PM 報告的線上問題 - 開發團隊反映的技術問題 - 測試發現的 bug - 生產環境告警和異常
🇯🇵 日本人クリエイター向け解説
報告された問題や技術的な課題に対し、専門知識を持つ複数のAIが連携して、根本原因を深く分析し、解決策を見つけ出す支援をするSkill。
※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。
下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o issue-review.zip https://jpskill.com/download/18614.zip && unzip -o issue-review.zip && rm issue-review.zip
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/18614.zip -OutFile "$d\issue-review.zip"; Expand-Archive "$d\issue-review.zip" -DestinationPath $d -Force; ri "$d\issue-review.zip"
完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。
💾 手動でダウンロードしたい(コマンドが難しい人向け)
- 1. 下の青いボタンを押して
issue-review.zipをダウンロード - 2. ZIPファイルをダブルクリックで解凍 →
issue-reviewフォルダができる - 3. そのフォルダを
C:\Users\あなたの名前\.claude\skills\(Win)または~/.claude/skills/(Mac)へ移動 - 4. Claude Code を再起動
⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。
🎯 このSkillでできること
下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。
📦 インストール方法 (3ステップ)
- 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
- 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
- 3. 展開してできたフォルダを、ホームフォルダの
.claude/skills/に置く- · macOS / Linux:
~/.claude/skills/ - · Windows:
%USERPROFILE%\.claude\skills\
- · macOS / Linux:
Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。
詳しい使い方ガイドを見る →- 最終更新
- 2026-05-18
- 取得日時
- 2026-05-18
- 同梱ファイル
- 1
📖 Skill本文(日本語訳)
※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。
Issue Review - 系統化問題分析
あなたは Issue Review モードに入り、系統的な問題分析ワークフローを実行し、5つの専門エージェントを連携させます。
五つのエージェント協調アーキテクチャ
┌────────────────────┐
│ problem-analyzer │
│ (問題分析) │
└─────────┬──────────┘
│
┌────────────┼────────────┐
↓ ↓ ↓
┌──────────────┐ ┌──────────┐ ┌──────────────┐
│diff-analyzer │ │codebase- │ │log-analyzer │
│ (条件トリガー) │ │investigator│ │ (条件トリガー) │
│ 最近の変更? │ │ (必ず実行) │ │ ログがある? │
└──────────────┘ └──────────┘ └──────────────┘
│ │ │
└────────────┼────────────┘
↓
┌────────────────────┐
│ root-cause-finder │
│ (仮説検証) │
└────────────────────┘
エージェントの役割
| エージェント | 色 | モデル | 役割 |
|---|---|---|---|
| problem-analyzer | 🟡 黄色 | Sonnet | 問題情報の抽出、分類、初期仮説 |
| codebase-investigator | 🔵 青色 | Sonnet | コードの特定、フローの追跡、原因のスコアリング |
| root-cause-finder | 🟣 紫色 | Opus | 仮説検証、因果関係、根本原因の確認 |
| diff-analyzer | 🟢 緑色 | Sonnet | Git履歴の分析、変更の追跡 |
| log-analyzer | 🟠 オレンジ色 | Sonnet | ログの解析、エラーパターンの識別 |
完全なワークフロー
ステップ 1:問題の説明を収集する
ユーザーが問題の説明を提供している場合は、直接ステップ 2 に進みます。
ユーザーがまだ提供していない場合は、以下を尋ねてください。
分析する問題について説明してください:
- 問題の現象は何ですか?
- どのような環境で発生していますか?
- エラーメッセージはありますか?
- 再現方法は?
- 最近発生し始めたものですか?
ステップ 2:problem-analyzer を起動する
問題の説明を受け取ったら、Task ツールを使用して problem-analyzer エージェントをすぐに起動します。
problem-analyzer エージェントを使用して、以下のタスクを実行します:
問題の説明を分析します:
[ユーザーが提供した問題の説明]
要求:
1. まず、`references/common-patterns.md` に一致する既知の問題パターンがあるかどうかを確認します。
2. すべての既知の情報(現象、環境、再現手順、エラーメッセージ)を抽出します。
3. 情報のギャップを特定します。
4. 問題の種類と重大度を分類します。
5. 3〜5個の初期仮説を、可能性の高い順に提案します。
6. **重要**:以下の条件を判断します。
- [ ] 条件 A:問題が「最近発生した」または「アップデート後に発生した」
- [ ] 条件 B:問題の説明にログ、エラーメッセージ、スタックトレースが含まれている
7. 構造化された問題分析レポートを出力します。
フェーズ完了後:
- ユーザーに「✅ フェーズ 1 完了:問題分析」を報告します。
- 主要な仮説と条件判断の結果を表示します。
- 条件に基づいて次のステップを決定します。
ステップ 2.5:補助エージェントを起動する(条件トリガー)
problem-analyzer の条件判断に基づいて:
条件 A がトリガー:diff-analyzer を起動する
diff-analyzer エージェントを使用して、以下のタスクを実行します:
Git履歴を分析して、問題を引き起こした可能性のある変更を見つけます。
問題が最初に報告された時間:[問題分析レポートから抽出]
関連ファイル/モジュール:[調査の方向性から抽出]
要求:
1. 最近1〜2週間の関連するコミットを確認します。
2. 疑わしい変更(コアロジックの変更、構成の変更、依存関係の更新)を特定します。
3. 変更のタイムラインを作成します。
4. 高リスクのコミットをマークします。
条件 B がトリガー:log-analyzer を起動する
log-analyzer エージェントを使用して、以下のタスクを実行します:
ログとエラーメッセージを分析します。
ログ/エラーの内容:
[問題の説明から抽出]
要求:
1. エラーの種類とスタックトレースを解析します。
2. エラーパターンと頻度を識別します。
3. 時間分布を分析します。
4. エラーの発生源と関連性を見つけます。
両方の条件がトリガーされた場合:Task ツールを使用して、2つのエージェントを並行して起動します。
フェーズ完了後:ユーザーに「✅ フェーズ 1.5 完了:補助調査」を報告し、主要な発見を表示します。
ステップ 3:codebase-investigator を起動する
すべての前のフェーズの出力を codebase-investigator に渡します。
codebase-investigator エージェントを使用して、以下のタスクを実行します:
問題分析の結果に基づいてコードベースを調査します:
[problem-analyzer の分析レポート]
補助分析の結果(ある場合):
[diff-analyzer の発見]
[log-analyzer の発見]
要求:
1. 関連するコードのエントリポイントを特定します。
2. 実行フローを追跡します。
3. 5〜7個の考えられる原因を識別し、動的な重み付けスコアリング(0〜100)を使用します。
4. 補助エージェントの発見を統合します。
5. コードの位置とスニペットを提供します。
6. 可能性の高い順に出力します。
フェーズ完了後:ユーザーに「✅ フェーズ 2 完了:コード調査」を報告し、考えられる原因のリストを表示します。
ステップ 4:root-cause-finder を起動する(反復)
最も可能性の高い仮説から検証を開始します。
root-cause-finder エージェントを使用して、以下のタスクを実行します:
仮説を検証します:[仮説の説明]
場所:[コードの位置]
可能性スコア:[XX/100]
補助分析の参照(ある場合):
[diff-analyzer の疑わしいコミット]
[log-analyzer のエラーパターン]
要求:
1. 関連するコードを完全に読みます。
2. 実行ロジックを推論します。
3. 証拠を収集します(支持/反駁)。
4. 補助分析の発見を統合します。
5. 因果関係を確立します。
6. 判断:確認/部分確認/排除
反復ロジック:
- ✅ 確認:反復を停止し、ステップ 5 に進みます。
- ❓ 部分確認:記録し、次の仮説の検証を続行します。
- ❌ 排除:次の仮説の検証を続行します。
- 最大3つの仮説を検証します。
フェーズ完了後:ユーザーに「✅ フェーズ 3 完了:根本原因の特定」を報告します。
ステップ 5:最終レポートを生成する
構造化された分析レポートを生成します。
# 🎯 Issue Review 分析レポート
## 実行サマリー
| 項目 | 内容 |
|------|------|
| 問題 | [一言で説明] |
| Root Cause | [根本原因] |
| 位置 | `file:line` |
| 信頼度 | XX% |
| 優先度 | P0/P1/P2 |
| 使用エージェント | [実際に使用されたエージェントのリスト] |
## 分析プロセス
### フェーズ 1:問題分析(problem-analyzer)
[主要な発見と初期仮説]
### フェーズ 1.5:補助調査(実行された場合)
#### Git 履歴分析(diff-analyzer)
[疑わしいコミットと変更のタイムライン]
#### ログ分析(log-analyzer)
[エラーパターンと時間分布]
### フェーズ 2:コード調査(codebase-investigator)
[コードマップと考えられる原因のリスト]
### フェーズ 3:根本原因の検証(root-cause-finder)
[検証プロセスと結論]
## 根本原因
### 問題の位置
**ファイル**:`path/to/file.ext`
**行番号**:XX-YY
**関数**:`functionName()`
### 問題の説明
[問題の本質を詳細に説明]
### 完全な因果関係
[根本原因] ↓ 導致 [中間影響] ↓ 導致 [直接原因] ↓ 表現為 [表面症狀]
### コード分析
```[language]
// 問題のあるコード
[code snippet]
修復の提案
推奨される修復
// 修復後のコード
[fixed code]
修復の説明
[修復の理由と予想される効果を説明]
検証方法
- コードレビュー:[検証手順]
- テスト検証:[テスト方法]
- 監視確認:[監視指標]
その他の発見
二次的な問題
- [問題 1] - 優先度: P2
- [問題 2] - 優先度: P3
技術的負債
- [負債 1]
- [負債 2]
分析完了時間:[timestamp] 使用エージェント:problem-analyzer → [補助エージェント] → codebase-investigator → root-cause-finder
---
## エラー処理
### エージェントの実行失敗
エージェントの実行が失敗した場合、または不完全な結果が返された場合:
1. **もう一度試す**(より明確な指示を使用)
2. **ダウングレード処理**:
- diff-analyzer/log-analyzer が失敗 → スキップして、メインフローを続行します。
- codebase-investigator が失敗 → problem-analyzer の仮説を使用して直接検証します。
- root-cause-finder が失敗 → codebase-investigator の分析結果を出力します。
3. **ユーザーに通知**:どのフェーズで問題が発生したかを説明します。
### 確定的な Root Cause が見つからない
すべての仮説を確認できない場合:
1. 「部分的に確認された」仮説を集計します。
2. 必要な追加情報を説明します。
3. 現在の分析に基づいて一時的な提案を提供します。
### 複数の Root Causes
複数の確認された原因が見つかった場合:
1. 各 Root Cause を個別に説明します。
2. それらの関係(独立/共同作用)を分析します。
3. それぞれの修復提案と優先度を提供します。
### 情報不足
問題の説明が短すぎる場合は、以下を尋ねてください。
- ブラウザの開発者ツールのネットワーク/コンソールのスクリーンショット
- サーバーログ
- 詳細な再現手順
- 最近発生し始めたものかどうか
---
## 利用可能なコマンド
このスキルに加えて、以下も使用できます。
| コマンド | 用途 |
|------|------|
| `/analyze-issue [問題の説明]` | 完全な5つのエージェント分析フローをすばやく開始します。 |
| `/quick-analyze [問題の説明]` | 簡単な診断(明確なエラーメッセージがある場合に適しています)。 |
---
## 分析を開始する
**分析する問題の説明を提供してください**。すぐに系統的な分析プロセスを開始します。
すでに上記で問題の説明を提供している場合は、直接分析を開始します。 📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開
Issue Review - 系統化問題分析
你已進入 Issue Review 模式,將執行系統化的問題分析工作流程,協調五個專門代理。
五代理協作架構
┌────────────────────┐
│ problem-analyzer │
│ (問題分析) │
└─────────┬──────────┘
│
┌────────────┼────────────┐
↓ ↓ ↓
┌──────────────┐ ┌──────────┐ ┌──────────────┐
│diff-analyzer │ │codebase- │ │log-analyzer │
│ (條件觸發) │ │investigator│ │ (條件觸發) │
│ 最近變更? │ │ (必定執行) │ │ 有日誌? │
└──────────────┘ └──────────┘ └──────────────┘
│ │ │
└────────────┼────────────┘
↓
┌────────────────────┐
│ root-cause-finder │
│ (假設驗證) │
└────────────────────┘
代理角色
| 代理 | 顏色 | 模型 | 角色 |
|---|---|---|---|
| problem-analyzer | 🟡 黃色 | Sonnet | 問題資訊提取、分類、初步假設 |
| codebase-investigator | 🔵 藍色 | Sonnet | 程式碼定位、流程追蹤、原因評分 |
| root-cause-finder | 🟣 紫色 | Opus | 假設驗證、因果鏈、根本原因確認 |
| diff-analyzer | 🟢 綠色 | Sonnet | Git 歷史分析、變更追蹤 |
| log-analyzer | 🟠 橙色 | Sonnet | 日誌解析、錯誤模式識別 |
完整工作流程
步驟 1:收集問題描述
如果用戶已提供問題描述,直接進入步驟 2。
如果用戶尚未提供,請詢問:
請描述您要分析的問題:
- 問題現象是什麼?
- 發生在什麼環境?
- 有錯誤訊息嗎?
- 如何重現?
- 是最近才開始發生的嗎?
步驟 2:啟動 problem-analyzer
收到問題描述後,立即使用 Task 工具啟動 problem-analyzer 代理:
使用 problem-analyzer 代理執行以下任務:
分析問題描述:
[用戶提供的問題描述]
要求:
1. 先檢查 `references/common-patterns.md` 是否有匹配的已知問題模式
2. 提取所有已知資訊(現象、環境、重現步驟、錯誤訊息)
3. 識別資訊缺口
4. 分類問題類型和嚴重程度
5. 提出 3-5 個初步假設,按可能性排序
6. **重要**:判斷以下條件
- [ ] 條件 A:問題「最近才發生」或「更新後出現」
- [ ] 條件 B:問題描述包含日誌、錯誤訊息、堆疊追蹤
7. 輸出結構化的問題分析報告
階段完成後:
- 向用戶報告「✅ 階段 1 完成:問題分析」
- 展示關鍵假設和條件判斷結果
- 根據條件決定下一步
步驟 2.5:啟動輔助代理(條件觸發)
根據 problem-analyzer 的條件判斷:
條件 A 觸發:啟動 diff-analyzer
使用 diff-analyzer 代理執行以下任務:
分析 Git 歷史,找出可能引入問題的變更
問題首次報告時間:[從問題分析報告提取]
相關檔案/模組:[從調查方向提取]
要求:
1. 查看最近 1-2 週的相關提交
2. 識別可疑變更(核心邏輯修改、配置變更、依賴更新)
3. 建立變更時間線
4. 標記高風險提交
條件 B 觸發:啟動 log-analyzer
使用 log-analyzer 代理執行以下任務:
分析日誌和錯誤訊息
日誌/錯誤內容:
[從問題描述提取]
要求:
1. 解析錯誤類型和堆疊追蹤
2. 識別錯誤模式和頻率
3. 分析時間分佈
4. 找出錯誤源頭和關聯性
如果兩個條件都觸發:使用 Task 工具並行啟動兩個代理。
階段完成後:向用戶報告「✅ 階段 1.5 完成:輔助調查」並展示關鍵發現。
步驟 3:啟動 codebase-investigator
將所有前置階段的輸出傳遞給 codebase-investigator:
使用 codebase-investigator 代理執行以下任務:
基於問題分析結果調查程式碼庫:
[problem-analyzer 的分析報告]
輔助分析結果(如果有):
[diff-analyzer 的發現]
[log-analyzer 的發現]
要求:
1. 定位相關程式碼進入點
2. 追蹤執行流程
3. 識別 5-7 個可能原因並使用動態權重評分 (0-100)
4. 整合輔助代理的發現
5. 提供程式碼位置和片段
6. 按可能性排序輸出
階段完成後:向用戶報告「✅ 階段 2 完成:程式碼調查」並展示可能原因列表。
步驟 4:啟動 root-cause-finder(迭代)
從最高可能性假設開始驗證:
使用 root-cause-finder 代理執行以下任務:
驗證假設:[假設描述]
位置:[程式碼位置]
可能性評分:[XX/100]
輔助分析參考(如果有):
[diff-analyzer 的可疑提交]
[log-analyzer 的錯誤模式]
要求:
1. 完整閱讀相關程式碼
2. 推演執行邏輯
3. 收集證據(支持/反駁)
4. 整合輔助分析的發現
5. 建立因果鏈
6. 判斷:確認/部分確認/排除
迭代邏輯:
- ✅ 確認:停止迭代,進入步驟 5
- ❓ 部分確認:記錄,繼續驗證下一假設
- ❌ 排除:繼續驗證下一假設
- 最多驗證 3 個假設
階段完成後:向用戶報告「✅ 階段 3 完成:根本原因定位」
步驟 5:生成最終報告
生成結構化的分析報告:
# 🎯 Issue Review 分析報告
## 執行摘要
| 項目 | 內容 |
|------|------|
| 問題 | [一句話描述] |
| Root Cause | [根本原因] |
| 位置 | `file:line` |
| 信心度 | XX% |
| 優先級 | P0/P1/P2 |
| 使用代理 | [實際使用的代理列表] |
## 分析過程
### 階段 1:問題分析(problem-analyzer)
[關鍵發現和初步假設]
### 階段 1.5:輔助調查(如果執行)
#### Git 歷史分析(diff-analyzer)
[可疑提交和變更時間線]
#### 日誌分析(log-analyzer)
[錯誤模式和時間分佈]
### 階段 2:程式碼調查(codebase-investigator)
[程式碼地圖和可能原因列表]
### 階段 3:根本原因驗證(root-cause-finder)
[驗證過程和結論]
## 根本原因
### 問題位置
**檔案**:`path/to/file.ext`
**行號**:XX-YY
**函式**:`functionName()`
### 問題描述
[詳細說明問題的本質]
### 完整因果鏈
[根本原因] ↓ 導致 [中間影響] ↓ 導致 [直接原因] ↓ 表現為 [表面症狀]
### 程式碼分析
```[language]
// 問題程式碼
[code snippet]
修復建議
推薦修復
// 修復後程式碼
[fixed code]
修復說明
[解釋修復的原因和預期效果]
驗證方法
- 程式碼審查:[驗證步驟]
- 測試驗證:[測試方法]
- 監控確認:[監控指標]
其他發現
次要問題
- [問題 1] - 優先級: P2
- [問題 2] - 優先級: P3
技術債務
- [債務 1]
- [債務 2]
分析完成時間:[timestamp] 使用代理:problem-analyzer → [輔助代理] → codebase-investigator → root-cause-finder
---
## 錯誤處理
### 代理執行失敗
如果某個代理執行失敗或返回不完整結果:
1. **重試一次**(使用更明確的指示)
2. **降級處理**:
- diff-analyzer/log-analyzer 失敗 → 跳過,繼續主流程
- codebase-investigator 失敗 → 使用 problem-analyzer 的假設直接驗證
- root-cause-finder 失敗 → 輸出 codebase-investigator 的分析結果
3. **告知用戶**:說明哪個階段遇到問題
### 找不到確定的 Root Cause
如果所有假設都無法確認:
1. 彙總「部分確認」的假設
2. 說明需要的額外資訊
3. 提供基於當前分析的臨時建議
### 多個 Root Causes
如果發現多個確認的原因:
1. 分別說明每個 Root Cause
2. 分析它們的關係(獨立/共同作用)
3. 提供各自的修復建議和優先級
### 資訊不足
如果問題描述過於簡短,請詢問:
- 瀏覽器開發者工具的網路/主控台截圖
- 伺服器日誌
- 詳細的重現步驟
- 是否是最近才開始發生
---
## 可用命令
除了此技能,你還可以使用:
| 命令 | 用途 |
|------|------|
| `/analyze-issue [問題描述]` | 快速啟動完整五代理分析流程 |
| `/quick-analyze [問題描述]` | 快速診斷(適用於有明確錯誤訊息) |
---
## 開始分析
**請提供您要分析的問題描述**,我將立即啟動系統化的分析流程。
如果您已經在上方提供了問題描述,我將直接開始分析。