recall について
recallは、Claude Code、Codex、pi、Grokの過去のセッションを検索するコマンドラインスキルです。全文検索や絞り込みに対応し、検索結果からセッションを再開できます。
主な機能
- 01BM25による全文検索
- 02英語の語幹処理とCJK検索
- 03プロジェクト・日付・ソースで絞り込み
- 04新しい順にセッションを一覧表示
- 05インデックス再作成と記録パス表示
活用シーン
- 01キーワードやフレーズで過去の会話を検索
- 02プロジェクトや期間を指定してセッションを確認
- 03記録を特定して該当セッションを再開
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ arjunkmrm/ recall --skill recallインストール後、Claude Code で/recallを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
.gitignoreREADME.mdLICENSECHANGELOG.mdscripts/read_session.pyrecall.pytests/test_index_lock.pytest_grok_parser.py__init__.pytest_pi_parser.pytest_role_column.pytest_ranking.py詳細
/recall — Claude、Codex、pi、Grok の過去のセッションを検索
BM25 ランキングによる全文検索で、Claude Code、Codex、pi、Grok のすべての過去のセッションを検索します。
使い方
python3 ~/.claude/skills/recall/scripts/recall.py [QUERY] [--project PATH] [--days N] [--source claude|codex|pi|grok] [--limit N] [--reindex]
使用例
# List every session in the last day (no text search)
python3 ~/.claude/skills/recall/scripts/recall.py --days 1
# List every pi session in the last week
python3 ~/.claude/skills/recall/scripts/recall.py --days 7 --source pi
# Simple keyword search
python3 ~/.claude/skills/recall/scripts/recall.py "bufferStore"
# Phrase search (exact match)
python3 ~/.claude/skills/recall/scripts/recall.py '"ACP protocol"'
# Boolean query
python3 ~/.claude/skills/recall/scripts/recall.py "rust AND async"
# Prefix search
python3 ~/.claude/skills/recall/scripts/recall.py "buffer*"
# Filter by project and recency
python3 ~/.claude/skills/recall/scripts/recall.py "state machine" --project ~/my-project --days 7
# Search only Claude Code sessions
python3 ~/.claude/skills/recall/scripts/recall.py "buffer" --source claude
# Search only Codex sessions
python3 ~/.claude/skills/recall/scripts/recall.py "buffer" --source codex
# Search only pi sessions
python3 ~/.claude/skills/recall/scripts/recall.py "buffer" --source pi
# Search only Grok sessions
python3 ~/.claude/skills/recall/scripts/recall.py "buffer" --source grok
# Force reindex
python3 ~/.claude/skills/recall/scripts/recall.py --reindex "test"
クエリ構文(FTS5)
- 単語:
bufferStore— 語幹が一致する語形も検索します(例:「discussing」は「discuss」に一致します) - フレーズ:
"ACP protocol"— 完全一致するフレーズを検索します - ブール演算子:
rust AND async、tauri OR electron、NOT deprecated - 接頭辞:
buffer*— bufferStore、bufferMap などに一致します - 組み合わせ:
"state machine" AND test - CJK:
issue化— 日本語/中国語/韓国語のテキストにはトライグラム検索が自動的に使用されます
一致する結果が見つかったら
セッションを再開するには、プロジェクトディレクトリに cd して、適切なコマンドを使用します。
# Claude Code sessions [claude]
cd /path/to/project
claude --resume SESSION_ID
# Codex sessions [codex]
cd /path/to/project
codex resume SESSION_ID
# Grok sessions [grok]
```bash
grok --resume SESSION_ID
Pi セッション [pi]
cd /path/to/project pi --session SESSION_ID # 完全な ID または部分的な ID。pi が前方一致を解決します
Each result includes a `File:` path. Use it to read the raw transcript (auto-detects format):
```bash
python3 ~/.claude/skills/recall/scripts/read_session.py <File-path-from-result>
結果に File: パスがない場合は、--reindex を実行して不足分を補完してください。
注意事項
- インデックスは
~/.recall.dbに保存されます(SQLite FTS5。~/.claude/recall.dbから自動移行されます) - 次の 4 つのソースをインデックス化します:
~/.claude/projects/(Claude Code)、~/.codex/sessions/(Codex)、~/.pi/agent/sessions/(pi)、~/.grok/sessions/**/chat_history.jsonl(Grok) - 初回実行時はすべてのセッションをインデックス化します(数秒)。以降は差分のみをインデックス化します
- ユーザーとアシスタントのメッセージのみがインデックス化されます(ツール呼び出し、思考ブロック、状態スナップショットは除外されます)
- 結果には、ソースを示す
[claude]、[codex]、[pi]、[grok]のタグが表示されます - 2 種類のテーブルによる FTS:英語のクエリには Porter ステミングを使用し、CJK のクエリにはトライグラム検索を使用します
- クエリ引数を省略すると一覧モードになります。期間内のすべてのセッションが新しい順に表示され、FTS は使用されません
- 全文検索にはクエリを指定します。どちらのモードでも
--project、--days、--source、--limitを指定できます - 0.3.x からアップグレードする場合:pi セッションを取り込むため、
--reindexを一度実行してください - 0.4.x からアップグレードする場合:Grok セッションを取り込むため、
--reindexを一度実行してください - 0.2.x からアップグレードする場合:CJK インデックスを作成するため、
--reindexを一度実行してください
コメント
Markdown 対応