local-memory-search について
OpenClaw のメモリファイルを対象に、オフラインでローカル検索するスキルです。LSA または sentence-transformers で索引を作成し、該当箇所を原文ファイルまでたどれます。
主な機能
- 01MEMORY.md と memory/*.md のローカル索引
- 02LSA と sentence-transformers のバックエンド
- 03クエリによるメモリ箇所の検索
- 04ソースファイル、行番号、前後の表示
活用シーン
- 01OpenClaw のメモリから設定をオフラインで検索
- 02該当箇所を見つけて原文の行を確認
- 03メモリファイル編集後の索引更新
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ blackbasilisk/ local-memory-search --skill local-memory-searchインストール後、Claude Code で/local-memory-searchを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
LICENSEREADME.md.gitignorescripts/jump_memory.pyindex_memory.pyrequirements-fastembed.txtembed_backends.pyrequirements-sentence-transformers.txtrequirements-core.txtrequirements-lsa.txtrequirements.txtsearch_memory.py詳細
ローカルメモリ検索(オフライン)
このスキルは、OpenClaw のメモリファイル向けにローカルセマンティック検索のワークフローを追加します。
MEMORY.mdmemory/*.md
小規模な sentence-transformers 埋め込みモデルを使って、ローカルのベクトルインデックス(FAISS)を構築します。
必要条件
- PATH に Python 3.10 以降があること(
python --version)
バックエンドを選択(ユーザーが選択)
A)軽量(推奨):lsa(TF‑IDF + SVD)
- ニューラルモデルは不要です
- HuggingFace からのダウンロードは不要です
- 「セマンティックに近い」マッチングが可能です(単純なキーワード検索より優れています)
cd $env:USERPROFILE\.openclaw\workspace\skills\local-memory-search
python -m venv .venv
.\.venv\Scripts\python.exe -m pip install -U pip
.\.venv\Scripts\python.exe -m pip install -r .\scripts\requirements-lsa.txt
B)高機能(セマンティック検索に最適):sentence-transformers(Torch)
- 真のニューラル埋め込みを使用します
- インストールサイズが大きく(torch)、モデルのダウンロードも必要です
cd $env:USERPROFILE\.openclaw\workspace\skills\local-memory-search
python -m venv .venv
.\.venv\Scripts\python.exe -m pip install -U pip
.\.venv\Scripts\python.exe -m pip install -r .\scripts\requirements-sentence-transformers.txt
インデックスの構築/更新
デフォルト(軽量な LSA バックエンド):
.\.venv\Scripts\python.exe .\scripts\index_memory.py --workspace "$env:USERPROFILE\.openclaw\workspace" --backend lsa
高機能バックエンドの例:
.\.venv\Scripts\python.exe .\scripts\index_memory.py --workspace "$env:USERPROFILE\.openclaw\workspace" --backend sentence-transformers --model "sentence-transformers/all-MiniLM-L6-v2"
デフォルトのワークフロー:移動して引用(推奨)
推奨される運用パターンに沿っています。
- 最適なチャンクにセマンティック検索で移動する
- ソースファイルを開く
- 正確な行を(少し前後の文脈を含めて)表示する
# Minimal output (default): prints just the best-matching lines
.\.venv\Scripts\python.exe .\scripts\jump_memory.py --query "o365 timezone config" --top 1
# If you want provenance:
.\.venv\Scripts\python.exe .\scripts\jump_memory.py --query "o365 timezone config" --top 1 --show-source --show-line-numbers --context 2
Tip: for cleaner quotes, re-index with default overlap 0 (the default).
検索(セマンティック検索のみ)
.\.venv\Scripts\python.exe .\scripts\search_memory.py --query "o365 timezone config" --top 5
インデックスが別のバックエンド/モデルで構築されている場合、search_memory.py はインデックスのメタデータを自動的に使用します。次のように指定して上書きできます。
.\.venv\Scripts\python.exe .\scripts\search_memory.py --backend fastembed --model "BAAI/bge-small-en-v1.5" --query "..."
注意事項
- インデックスは次の場所に保存されます:
~/.openclaw/credentials/local-memory-search/ - メモリファイルを編集した後は、インデックスを再構築してください。
- これは、OpenClaw 組み込みの
memory_searchツールのローカルな代替手段です。
コメント
Markdown 対応