mcpField
O
obsidian-vault-search

obsidian-vault-search

github.com/wilbeibi生产力241 次安装2 天前更新
代码仓库

关于 obsidian-vault-search

obsidian-vault-search 是用于检索 Obsidian 库中笔记和任务的 Skill,无需将整个库载入上下文。它根据查询类型选择 Meilisearch、`rg` 或日期感知脚本。

主要功能

  1. 01容错全文检索
  2. 02直接搜索内容和元数据
  3. 03自然语言日期及逾期任务搜索
  4. 04提取中日韩文字词项
  5. 05Meilisearch 不可用时回退本地搜索

适用场景

  1. 01按主题查找拼写有误的笔记
  2. 02按精确文本、标签或 frontmatter 定位笔记
  3. 03查找逾期任务或近期笔记
  4. 04使用中文词语检索库内容

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/wilbeibi/wilbeibi-skills --skill obsidian-vault-search

安装后在 Claude Code 中输入/obsidian-vault-search确认已加载。

附带文件scripts/meili_search.pyscripts/vault_search.py

详细介绍

obsidian-vault-search

在 Obsidian 知识库中查找 Markdown 笔记和任务,无需将整个知识库加载到上下文中。

路由

  1. 主题 / 模糊搜索 /“关于 X 的笔记” → scripts/meili_search.py。对 Meilisearch 索引进行容错全文搜索;适用于用户记不清确切用词的情况。请自行扩展查询中的同义词。
  2. 精确内容、frontmatter、标签、任务标记 → 直接使用 rg。
  3. 自然语言日期、逾期比较、CJK 词语提取 → scripts/vault_search.py。

如果 Meilisearch 无法访问或未配置(脚本以非零状态退出),请回退到第 2–3 层——它们只需要本地知识库。

环境变量:OBSIDIAN_VAULT(知识库根目录)、MEILI_URL(默认值为 http://127.0.0.1:7700)、MEILI_SEARCH_KEY(文件回退路径 ~/meilisearch/search-key.txt)、MEILI_INDEX(默认值为 notes)。

Meilisearch

运行时使用 --help 查看所有标志。切勿将原始命中结果全部导入上下文——请使用 --fields 和较小的 --limit。

uv run scripts/meili_search.py "spaced repetition" --limit 5 --fields "title,path"
uv run scripts/meili_search.py "prompt caching" --filter "tags=ai" --sort "updated:desc" --json

命中的 path 值是相对于知识库的路径(例如 Library/Book Notes/Influence.md);请将其与 $OBSIDIAN_VAULT 拼接后打开。

直接搜索模式

rg "keyword" --glob "*.md" "$OBSIDIAN_VAULT"
rg -lU 'tags:\n(\s*- .*\n)*?\s*- tagname\b' --glob "*.md" "$OBSIDIAN_VAULT"  # YAML list tags; prefer meili --filter "tags=tagname" when index is up
rg "created: $(date +%Y-%m)" --glob "*.md" "$OBSIDIAN_VAULT"
rg "^- \[ \].*📅 $(date +%F)" --glob "*.md" "$OBSIDIAN_VAULT"
rg "^- \[ \].*⏫" --glob "*.md" "$OBSIDIAN_VAULT"

日期感知脚本

uv run scripts/vault_search.py "recent week psychology"
uv run scripts/vault_search.py "overdue tasks"
uv run scripts/vault_search.py "找3-2-1技巧" --raw   # --raw: plain paths for piping

备注

  • created: YYYY-MM-DD frontmatter 用于确定日期;vault_search.py 会在缺少该字段时回退到文件修改时间。
  • 任务标记(Tasks 插件):📅 到期,🛫 开始,⏳ 计划,⏫/🔼/🔽 优先级。
  • 同义词扩展由 Agent 负责,而非脚本。

评论

支持 Markdown