winui-session-report について
GitHub Copilot CLI または Claude Code のセッションを分析し、診断レポートを作成するスキルです。セッションの利用状況やビルド、ツールの問題を確認でき、プライバシーに関する注意も含まれます。
主な機能
- 01Copilot CLI と Claude Code の自動判別
- 02ターン数、所要時間、トークン使用量の集計
- 03スキル、ビルド、コマンドエラーの確認
- 04ターン詳細付き Markdown レポートの作成
- 05セッション記録のプライバシーリスクの提示
活用シーン
- 01ビルド失敗や試行の繰り返しの調査
- 02スキル利用やサブエージェント作業の確認
- 03ツールの問題や行き詰まりパターンの特定
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ microsoft/ win-dev-skills --skill winui-session-reportインストール後、Claude Code で/winui-session-reportを入力して読み込まれたか確認します。
同梱ファイルAnalyze-Session.ps1
詳細
セッション分析レポート
このスキルに含まれる Analyze-Session.ps1 スクリプトを実行して、エージェントセッションの診断レポートを生成します。このスクリプトは環境変数とディスク上のファイル形式から、現在のセッションが GitHub Copilot CLI と Claude Code のどちらで生成されたかを自動的に検出し、適切なパーサーを呼び出します。どちらのハーネスも検出できない場合は、明確なエラーを表示してスクリプトを終了します。
重要
ユーザーがセッション分析またはレポートを明示的に依頼した場合に限り、このスキルを実行してください。明示的な依頼なしにこのスキルが読み込まれた場合、セッションデータを調査せず、レポートの内容を説明して確認を待ってください。
プライバシーと機密性 — このガイダンスをユーザーに伝えてください
Analyze-Session.ps1 は常に次の処理を行います。
- 生成された
session-report.mdの先頭(概要テーブルの直前)に「プライバシーと機密性」セクションを埋め込み、 - ファイルの書き込みが完了すると、コンソールに黄色の「プライバシーに関する通知」バナーを表示します。
エージェントであるあなたは、返信でこのガイダンスをユーザーに必ず伝えてください。ユーザーが読んでいない可能性のあるスクリプト出力の中に埋もれたままにしてはいけません。 スクリプトの実行と分析結果の報告が終わったら、次のテンプレートを必要に応じて調整し、ユーザーに向けた簡潔なプライバシーに関する注意を返信に含めてください。
⚠️
session-report.mdを共有する前にご確認ください — このファイルには、伏せ字にされていないセッションの記録が含まれています。エージェントが読み取った、または編集したファイルの内容とパス、入力したプロンプトの全文(貼り付けた可能性のある秘密情報を含む)、ツールの出力、環境変数の値、C:\Users\<you>\…以下のローカルパスなどが含まれます。共有する内容はご自身の責任で判断してください。公開課題への添付、チャットへの投稿、組織外への送信を行う前に、エディターでファイルを開き、最後まで目を通してください。機密情報は必ず伏せてください。概要レベルの指標だけを共有する場合は、ファイルを添付するのではなく、要約するよう私に依頼してください。
ユーザーがターン数、スキルの使用状況、ビルドの成功率などの概要レベルの指標だけを必要としており、ターンごとの詳細を求めていない場合は、ファイルではなくレポートの要約を共有してください。その際、ユーザーが自分でファイルを読んで確認する必要がないよう、要約を共有することをユーザーに伝えてください。
手順
- 分析スクリプトを実行してレポートを生成します。
# Analyze the most recent session (auto-detects harness) and save report
.\Analyze-Session.ps1 -OutputFile session-report.md
# Or analyze a specific session by ID (searched in both harness locations)
.\Analyze-Session.ps1 -SessionId "<session-id>" -OutputFile session-report.md
# Or analyze a transcript file directly (format sniffed from content)
.\Analyze-Session.ps1 -EventsFile '.\transcript.jsonl' -OutputFile session-report.md
# Force a specific format if auto-detection picks the wrong harness
.\Analyze-Session.ps1 -Format ClaudeCode -OutputFile session-report.md
# Skip subagent transcripts (Claude Code only) for a parent-only view
.\Analyze-Session.ps1 -SkipSubagents -OutputFile session-report.md
検出ルール:
- 明示的な ID が利用できる場合は、現在のセッションを優先します。
COPILOT_AGENT_SESSION_ID(Copilot CLI)またはCLAUDE_SESSION_ID(Claude Code)が、「最終更新日時が最も新しい」セッションより優先されるため、別のターミナルで実行中の並行セッションが、このスキルを呼び出したセッションの代わりに選ばれることはありません。 - 環境変数を優先します。
CLAUDECODE=1またはCLAUDE_CODE_ENTRYPOINTが設定されている場合は Claude Code、COPILOT_*環境変数が設定されている場合は Copilot と判定します。 - Claude Code の場合、
cwdが現在の作業ディレクトリと一致する JSONL のうち、最終更新日時が最も新しいものを優先します。 - 明示的に
-EventsFileが指定されている場合は、最初のイベントから形式を判定します。 - どちらのハーネスも検出されない場合、スクリプトはゼロ以外のステータスで終了し、サポート対象の両方の場所を示すメッセージを表示します。
-
生成されたレポートを確認します。
session-report.mdを読み、主な調査結果をユーザー向けに要約します。- ターン数、所要時間、トークン使用量
- 読み込まれたスキルとそのタイミング
- ビルド/実行のワークフローとコマンド失敗の傾向
- 検出された停滞パターンやツールの問題
-
独自の所見を追加します。追加の背景情報を含むセクションをレポートに追記します。
- 最終的なアプリは動作していましたか?不足しているものはありますか?
- 生成されたコードの品質評価
- 問題が発生した内容に即した提案
-
分析に基づいたツールの改善点や推奨事項を含めます。
- セッション中に検出されたよくあるミスを防ぐため、Roslyn アナライザーに追加すべきルールはありますか?
winapp new、プロジェクトモードのwinapp run/winapp package、dotnet build/dotnet publish、またはwinapp find-uiにバグや問題はありましたか?(BuildAndRun.ps1は過去のトランスクリプトにのみ登場します。)- ホスト/ゲストのスコープ、入力準備状況、証拠に関する問題について、レポートのビルド分析とサンドボックス実行のセクションを確認します。
- タスクの完了に必要なターン数を減らせる機能はありますか?
レポートの内容
| セクション | 詳細 |
|---|---|
| 概要 | ハーネス、セッション ID、モデル、所要時間、ターン数、トークン数(Claude Code のキャッシュトークンを含む) |
| プロンプト | 元のユーザーリクエスト |
| ターンの内訳 | カテゴリ別(ビルド、コーディング、調査、サブエージェントの呼び出しなど)のターン数とトークン数 |
| スキル | 呼び出されたスキルとそのタイミング。サブエージェントのトランスクリプト内での呼び出しも含む |
| サブエージェント | (Claude Code のみ)呼び出されたサブエージェントとその作業のエージェント別の内訳 |
| ビルド分析 | ビルド/公開の試行とコマンドエラー(dotnet、プロジェクトモードのwinapp run/package、過去のBuildAndRun.ps1) |
| サンドボックス実行 | 該当する場合:サンドボックスコマンドの使用回数/エラー数と、ホスト/ゲストのスコープ、入力準備状況、ワークフロー連携、証拠の提示に関する重点確認 |
| 停滞パターン | ビルドのループ、ファイルの読み取りの繰り返し、obj/ のクリーンアップサイクル |
| ツールの問題 | 自動検出された改善機会 |
| ターンの詳細 | ツールの使用状況とフラグ付けされたエラーを含む、すべてのターン。親とサブエージェントのトランスクリプトを分けて表示 |