mcpField
C
conversation-context-import

conversation-context-import

github.com/shokaiエージェントワークフロー3143 回インストール5 日前に更新
リポジトリ

conversation-context-import について

`.dev/contexts/` に保存された対話コンテキストを探して読み込むエージェントスキルです。Git のワークツリーとブランチに応じて読み込み元を決め、複数の候補がある場合は選択を求めます。

主な機能

  1. 01現在のブランチ用ファイルの検索
  2. 02ブランチ名の特殊文字の置換
  3. 03メインとリンク済みワークツリーの判別
  4. 04ファイルの有無に応じた読み込み範囲の決定
  5. 05読み込んだファイルの報告

活用シーン

  1. 01ブランチの以前の対話コンテキストの復元
  2. 02リンク済みワークツリーからの保存済みコンテキストの読み込み

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/shokai/agent-skills --skill conversation-context-import

インストール後、Claude Code で/conversation-context-importを入力して読み込まれたか確認します。

詳細

プロジェクトの README より

対話コンテキストのimport手順書

.dev/contexts/ に保存された過去の対話コンテキストを読み込む。

手順

1. ブランチ名を取得する

Bashツールで以下を実行する:

git branch --show-current
ブランチ名のサニタイズ

ブランチ名をファイル名として使う際、以下の文字を - に置換する:

/ \ : * ? " < > |

例: dependabot/npm_and_yarn/feed-5.2.0 → dependabot-npm_and_yarn-feed-5.2.0

以降の手順では、サニタイズ後のブランチ名を「サニタイズ済みブランチ名」と呼ぶ。

読み込み元ディレクトリの決定

読み込み元をgit worktreeの状況に応じて決める。

Bashツールで git worktree list を実行し、現在の作業ツリーがmain worktree(リポジトリ本体の作業ツリー)か、リンクされたworktreeかを判断する。worktreeで作業している場合はmain worktreeのパスも把握する。

main treeで作業中の場合は、読み込み元ディレクトリを .dev/contexts/ とする。

worktree内で作業中の場合は、main treeとworktreeローカルの両方の .dev/contexts/ で、カレントブランチ用ファイル({サニタイズ済みブランチ名}.md)の有無を確認して読み込み元ディレクトリを決める:

  • 両方に存在する場合: 両方のフルパスを提示し、AskUserQuestionツールでどちらを読み込むか選ばせる。選んだ側の .dev/contexts/ を読み込み元ディレクトリとする
  • 片方のみに存在する場合: そちらの .dev/contexts/ を読み込み元ディレクトリとする
  • どちらにも存在しない場合: main treeの .dev/contexts/ を読み込み元ディレクトリとする

以降の手順では、決定したパスを「読み込み元ディレクトリ」と呼ぶ。

2. ファイルの存在確認

読み込み元ディレクトリ内のファイルを確認する。

Globツールで {読み込み元ディレクトリ}/*.md を検索し、以下を把握する:

  • カレントブランチと同名のファイル({読み込み元ディレクトリ}/{サニタイズ済みブランチ名}.md)が存在するか
  • それ以外のファイルが存在するか
3. 読み込み対象の決定

ファイルの存在状況に応じて対応を分ける:

カレントブランチのファイルのみ存在する場合

質問せずにそのファイルを読み込む。

他のファイルのみ存在する場合(カレントブランチのファイルが無い)

質問せずに全ファイルを読み込む。

両方存在する場合

AskUserQuestionツールで以下の選択肢を提示する:

  • カレントブランチのコンテキストのみ読み込む: {読み込み元ディレクトリ}/{サニタイズ済みブランチ名}.md のみ
  • 全てのコンテキストを読み込む: 読み込み元ディレクトリ内の全ファイル(ファイル名を列挙して提示する)
ファイルが1つも存在しない場合

読み込み元ディレクトリにコンテキストファイルが見つからない旨を報告して終了する。

4. 読み込みと報告

Readツールで対象ファイルを読み込む。

読み込み完了後、どのファイルを読み込んだかをユーザーに報告する:

以下の対話コンテキストを読み込みました:
- `{読み込み元ディレクトリ}/feature-a.md`
- `{読み込み元ディレクトリ}/feature-b.md`

関連スキル

  • conversation-context-export: 現在の対話コンテキストを .dev/contexts/ に書き出すスキル。開発の区切りでコンテキストを保存する時に使用する。

コメント