Skip to main content

GitHub Copilot CLI(コマンドラインインターフェース) セッションデータについて

Copilot CLI は、すべてのセッションをローカルに記録します。 以前のセッションを再開し、お客様の CLI 操作について Copilot に質問し、スラッシュ コマンド/chronicleを使用して、セッション ベースの有用な分析情報を得ることができます。

はじめに

Copilot CLI を使用するたびに、セッションに関するデータ セット全体がローカル コンピューターに記録されます。以下のものが該当します。お客様が入力したプロンプト、Copilot の応答、使用されたツール、変更されたファイルの詳細など。 時間の経過と同時に、この方法を通じて、お客様の作業内容、作業方法、および Copilot がお客様のために実行した動作の豊富な履歴が作成されます。

このセッション データは、次のいくつかの機能を利用します。

  •         **セッションの再開**: 前のセッションで中断した場所を選択できます。
    
  •         **履歴に関する質問**: 過去の作業に関する Copilot の質問をすると、セッション データにクエリを実行して回答します。
    
  •         **
            `/chronicle`スラッシュ・コマンド**: セッション履歴から導き出されたスタンドアップ・レポート、パーソナライズされたヒント、およびプロセスカスタム命令を改善するための提案を生成する専用のサブコマンドのセット。
    

この概念的な記事では、セッション データの格納方法と、それを利用してワークフローを強化する方法について説明します。 セッションの再開、お客様の CLI セッションに関する Copilot への質問、および /chronicle スラッシュ コマンドの使用に関する実用的なガイドについては、「「GitHub Copilot CLI(コマンドラインインターフェース)」セッション データの使用」を参照してください。

メモ

お客様のセッション履歴に関する質問に対して、/chronicleコマンドと Copilot が回答する機能は、現在は試験的な機能であり、お客様が /experimental on スラッシュ コマンドまたは --experimental コマンド ライン オプションを使用した場合にのみ使用できます。

セッション データの格納方法

すべての Copilot CLI セッションは、コンピューター上の ~/.copilot/session-state/ ディレクトリ内にある一連のファイルとして保存されます。 各セッションのデータには、セッションの完全なレコードが含まれています。 これらのファイルを使用すると、対話型 CLI セッションを再開できます。

セッション ファイルに加えて、Copilot CLI は、セッション ストアと呼ばれるローカル SQLite データベースに構造化セッション データを格納します。 このデータは、セッション ファイルに格納されている完全なデータのサブセットです。 セッション ストアは、 /chronicle スラッシュ コマンドの機能であり、Copilot が過去の作業に関する質問に回答できるようにします。

プライバシーとデータのローカリティ

すべてのセッション データは、ホーム ディレクトリにローカルに格納され、ユーザー アカウントでのみアクセスできます。 Copilot は、CLI との対話について質問するとき、または /chronicle スラッシュ コマンドを使用するときに、コンピューター上のこのデータを読み取ります。 前のプロンプト、コンテキスト データ、受信した応答などのセッション データは、通常の Copilot CLI の対話と同様に、AI モデルに送信される場合があります。

特定の CLI セッションのデータを削除する場合は、関連するセッション ディレクトリを ~/.copilot/session-state/から削除できます。 ~/.copilot/session-state/の下にあるすべてのデータを削除することで、すべてのセッション データをクリアできます。 これを行った後、セッション ストアのインデックスを手動で再作成する必要があります。 この記事の後半にあるセッション ストアのインデックス再作成を参照してください。

          `/chronicle`スラッシュ コマンドについて

/chronicle SUBCOMMAND コマンドは、セッション ストア内のデータを使用し、Copilot CLI をお客様が使用した状況に関する分析情報と提案を提供します。

対話型 CLI セッションでは、次のコマンドを入力できます。

  •         `/chronicle standup`: ブランチ名、プル要求リンク、状態チェックなど、最近の CLI セッションで作業した内容を要約した短いレポートを生成します。
    
  •         `/chronicle tips`: Copilot CLI をより効果的に使用するためのパーソナライズされたヒントを提供します。
    
  •         `/chronicle improve`: セッション履歴を分析して、Copilot が意図を誤解した可能性があるパターンや、やり取りが多かったパターンを特定し、Copilot が将来よりよく理解できるようにカスタム命令を生成します。
    
  •         `/chronicle reindex`: セッション履歴ファイルからセッション ストアを再構築します。
    

          `/chronicle`とセッション データの利点

* 自己改善ワークフロー: improve サブコマンドは、カスタム命令を調整するのに役立つフィードバック ループを作成します。 時間の経過とともに、エージェントは特定のプロジェクトに対してより効果的になります。

  •         **簡単なスタンドアップ レポート**: 昨日行ったことを手動で再構築する代わりに、 `/chronicle standup` は実際のセッション データからスタンドアップの概要を生成します。
    
  •         **パーソナライズされたコーチング**: `tips` サブコマンドは、Copilot CLIができることと実際に使用する方法の両方を知っている個人の生産性コーチとして機能します。 使用可能な機能と現在のワークフローのギャップを埋めることができます。
    
  •         **コーディング履歴に話しかける**: セッションストアでは、Copilot が、先週のバグ修正を思い出すことから、時間の経過に伴うプロンプティングパターンの分析まで、過去のセッションが役立つ可能性のあるあらゆる質問に回答できます。
    
  •         **ローカルとプライベート**: すべてのセッション データ (生の JSONL ファイルと SQLite セッション ストアの両方) は、コンピューター上にとどまります。 Copilot CLI セッションで発生する AI モデルの通常の対話型操作を上回る情報が、アップロードまたは共有されることはありません。 データを完全に制御でき、いつでも削除できます。
    

これらの機能を使用する必要がある場合

  •         **1 日の開始時**: `/chronicle standup last 3 days` を実行して、最近作業した内容と作業していた CLI セッションを通知します。
    
  •         **定期的に、レベルを上げる**には、毎週 2 回 `/chronicle tips` 実行して、不足している可能性がある機能やワークフローの改善点を検出します。
    
  •         **Copilot が同じ間違いを犯し続ける場合**: `/chronicle improve` を実行してパターンを識別し、それを修正するためのカスタム命令を生成します。
    
  •         **過去の作業を思い出すには**:"支払い API に関連する作業を行いましたか" のような自由形式の質問をします。 と Copilot は、お客様の履歴を検索します。
    
  •         **前の作業を続行するには**: `copilot --continue` または `copilot --resume` を使用して、中断した場所を選択します。
    

セッション ストアのインデックスを再作成する

セッション ストアは、CLI セッション中に増分的に設定されます。 セッションのデータは、 ~/.copilot/session-state/のセッション固有のサブディレクトリ内のディスクに書き込まれます。 これは、セッション中、およびセッションの終了時にも定期的に発生します。

ディスク上のセッション ファイルからセッション ストアのインデックスを再作成することはできますが、通常、これを行う必要はありません。

インデックスの再作成が必要になる場合があります。

  •         **古いセッションのインデックス作成**: セッション ストアが存在する前に作成されたディスク上の古いセッション ファイルがある場合、インデックスの再作成によってセッション ストアにそれらのセッションのデータが設定されます。
    
  •         **セッションの削除**: 履歴からセッションを削除する場合は、セッション ディレクトリを削除してから、セッション ストアのインデックスを再作成できます。
    
  •         **セッションの移行/回復: セッション ファイルを**別のマシンに移動した場合、またはバックアップから復元した場合でも、セッション ストア ファイル (`~/.copilot/session-store.db`) も移動または復元しない場合は、reindex コマンドを使用してセッション ストアを再作成できます。
    
  •         **ファイルの破損**: セッション ストア ファイル (`~/.copilot/session-store.db`) が破損した場合、または誤って削除された場合は、セッション ファイルからセッション ストアを回復できます。
    
  •         **予期しない終了**: セッション内のデータがメモリからセッションストアに書き込まれる前に、セッションがクラッシュや停電などで予期せず終了した場合、終了前にセッションファイルとしてディスクにデータが書き込まれていた場合は、その欠落したデータをセッションストアに再設定することができるかもしれません。
    

セッション ストアのインデックスを再作成するには、対話型 CLI セッションで次のスラッシュ コマンドを使用します。

Copilot prompt
/chronicle reindex

詳細については、次を参照してください。

  •         [AUTOTITLE](/copilot/how-tos/copilot-cli/chronicle)
    
  •         [AUTOTITLE](/copilot/reference/cli-command-reference)