关于 local-memory-search
为 OpenClaw memory 文件提供离线本地语义搜索,可按查询定位相关片段并回到原文核对。支持轻量 LSA 与 sentence-transformers 两种索引后端。
主要功能
- 01为 MEMORY.md 和 memory/*.md 建立本地索引
- 02支持 LSA 与 sentence-transformers 后端
- 03按查询检索相关记忆片段
- 04跳转至来源文件并显示行号和上下文
适用场景
- 01离线查找 OpenClaw 记忆中的配置
- 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