前言¶
DeepSeek Harness(DSH)采用插件化架构,支持通过插件扩展智能体的能力。在开发场景中,智能体通常运行在 WSL 环境下,而本地文件系统(如 Windows 上的 Obsidian 仓库)属于 Windows 系统资源。dsh-wsl-obsidian 插件解决了这一跨环境调用问题,使 WSL 中的 DSH Agent 能够直接操作 Windows 端的 Obsidian 仓库。
插件定位¶
该插件是 DeepSeek Harness 生态中的一个独立工具,由开发者 173787247 维护,开源协议为 MIT。它作为 dsh-wsl-kit 套件的可选组件,默认未包含在标准安装脚本中。
核心能力¶
插件提供了以下功能模块,用于在 WSL 环境中控制 Windows 的 Obsidian:
- obsidian_status:解析仓库路径,确认路径类型,并定位
Obsidian.exe的位置。 - obsidian_list:列出仓库中的所有 Markdown 文件。
- obsidian_search:在仓库中进行不区分大小写的子字符串搜索。
- obsidian_read:读取指定笔记的内容。
- obsidian_write:创建新笔记或覆盖现有笔记。
- obsidian_append:向现有笔记追加内容。
- obsidian_open:通过 PowerShell 调用 Windows 的
obsidian://open协议打开笔记(仅支持 WSL)。
前置条件与注意事项¶
- 环境要求:需要安装 DeepSeek Harness 版本
>= 0.1.2。 - 路径限制:所有文件路径必须是相对于仓库的(例如
Inbox/Note.md),插件拒绝绝对路径或包含../的相对路径。 - 文件系统限制:仓库必须存储在 Windows NTFS 文件系统上(如
C:\或D:\)。如果在 WSL 中挂载仓库(如\\wsl$\...),会破坏 Obsidian 的文件监听机制。 - 配置回退:如果未配置
vaultPath,插件会尝试通过/mnt/c/.../AppData/Roaming/obsidian/obsidian.json读取 Windows 端的默认仓库配置。
安装与启用¶
插件默认不在安装脚本中,需手动添加。执行以下命令进行安装:
dsh plugin --profile web add github:173787247/dsh-wsl-obsidian
安装完成后,重启 dsh web 并开启一个新会话,即可在工具列表中看到 obsidian_* 系列指令。
配置示例¶
在 DSH 的配置文件中添加以下片段以启用插件并指定仓库路径:
- id: dsh-wsl-obsidian
name: dsh-wsl-obsidian
config:
enabled: true
vaultPath: "/mnt/d/Notes/MyVault"
vaultName: "MyVault"
timeoutMs: 20000
说明:
vaultPath建议直接填写 WSL 中访问 Windows 分区的路径(如/mnt/d/...),插件会自动处理路径转换。
布局建议¶
为确保最佳兼容性,建议按以下步骤搭建环境:
- 在 Windows 上安装 Obsidian 桌面应用。
- 在
C:或D:盘创建或打开仓库(不要将仓库建在 Linux 发行版所在的磁盘分区)。 - 在 WSL 中通过
/mnt/c/...或/mnt/d/...访问该仓库路径,并在配置中填写对应的 WSL 路径。
结语¶
dsh-wsl-obsidian 提供了从 WSL 环境直接读写 Windows Obsidian 仓库的能力。对于需要在本地知识库中进行自动化操作的 DSH Agent 开发者,这是一个必要的连接工具。