mcpField
O
obsidian

obsidian

github.com/nousresearch生产力258.5k463 次安装今天更新
代码仓库

关于 obsidian

面向通过文件工具操作 Obsidian 库的 Skill,适合需要管理笔记的 Agent。涵盖读取、搜索、创建和编辑笔记,以及添加双向链接。

主要功能

  1. 01读取和列出 Markdown 笔记
  2. 02搜索文件名和笔记内容
  3. 03用文件工具创建和编辑笔记
  4. 04添加 Obsidian 双向链接
  5. 05文件操作前解析库路径

适用场景

  1. 01按文件名或内容查找笔记
  2. 02创建带相关链接的笔记
  3. 03向现有笔记追加章节

安装

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

$npx skills add https://github.com/nousresearch/hermes-agent --skill obsidian

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

详细介绍

Obsidian Vault

将此技能用于以文件系统为优先的 Obsidian 库操作:读取笔记、列出笔记、搜索笔记文件、创建笔记、追加内容以及添加维基链接。

Vault 路径

调用文件工具前,先使用已知或已解析的 Vault 路径。

文档中规定的 Vault 路径约定是 OBSIDIAN_VAULT_PATH 环境变量,例如从 ${HERMES_HOME:-~/.hermes}/.env 中获取。如果未设置,请使用 ~/Documents/Obsidian Vault。

文件工具不会展开 Shell 变量。不要将包含 $OBSIDIAN_VAULT_PATH 的路径传给 read_file、write_file、patch 或 search_files;请先解析 Vault 路径,再传入具体的绝对路径。Vault 路径可能包含空格,这也是优先使用文件工具而非 Shell 命令的另一个原因。

如果 Vault 路径未知,可以使用 terminal 来解析 OBSIDIAN_VAULT_PATH 或检查备用路径是否存在。路径确定后,请切换回文件工具。

读取笔记

使用 read_file 和已解析的笔记绝对路径。优先使用此工具而非 cat,因为它会提供行号和分页。

列出笔记

使用 search_files,并将 target: "files" 和已解析的 Vault 路径作为参数。优先使用此工具而非 find 或 ls。

  • 要列出所有 Markdown 笔记,请在 Vault 路径下使用 pattern: "*.md"。
  • 要列出子文件夹中的笔记,请在该子文件夹的绝对路径下搜索。

搜索

使用 search_files 搜索文件名和内容。优先使用此工具而非 grep、find 或 ls。

  • 要搜索文件名,请使用 target: "files" 和文件名 pattern 调用 search_files。
  • 要搜索笔记内容,请使用 target: "content",将内容正则表达式作为 pattern;如果只想匹配 Markdown 笔记,请设置 file_glob: "*.md"。

创建笔记

使用 write_file 和已解析的绝对路径以及完整的 Markdown 内容。优先使用此工具而非 Shell heredoc 或 echo,因为它可以避免 Shell 引号问题,并返回结构化结果。

追加到笔记

在操作方便时,优先使用原生文件工具工作流:

  • 使用 read_file 读取目标笔记。
  • 如果有稳定的上下文(例如在现有标题后添加章节,或在已知的末尾内容前追加),请使用 patch 进行锚定追加。
  • 如果重写整篇笔记比构造易出错的补丁更清晰,请使用 write_file。

使用 patch 进行锚定追加时,将锚点替换为锚点加上新内容。

如果没有稳定上下文,且只是简单追加,使用 terminal 也是可以接受的,只要它是最清晰、安全的选项。

定向编辑

如果当前内容提供了稳定的上下文,请使用 patch 对笔记进行针对性修改。优先使用此工具而非通过 Shell 重写文本。

维基链接

Obsidian 使用 [[Note Name]] 语法链接笔记。创建笔记时,请使用这些链接关联相关内容。

评论

支持 Markdown