关于 conversation-context-import
用于从 `.dev/contexts/` 查找并导入此前保存的对话上下文的 Agent 技能。它会根据 Git worktree 和分支文件情况确定读取位置,并在需要时让用户选择文件。
主要功能
- 01按当前分支查找上下文文件
- 02处理分支名中的特殊字符
- 03区分主工作树与链接工作树
- 04按文件情况确定读取范围
- 05读取后报告所用文件
适用场景
- 01恢复当前分支的先前对话记录
- 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/に書き出すスキル。開発の区切りでコンテキストを保存する時に使用する。