DeepSeek Harness Plugin: dsh-wsl-obsidian

Introduction

DeepSeek Harness (DSH) adopts a plugin-based architecture, enabling agent capabilities to be extended through plugins. In development scenarios, agents usually run in WSL environments, while local file systems (such as an Obsidian vault on Windows) are Windows system resources. The dsh-wsl-obsidian plugin resolves this cross-environment access issue, allowing a DSH Agent in WSL to directly operate the Obsidian vault on Windows.

Plugin Overview

This plugin is a standalone tool in the DeepSeek Harness ecosystem, maintained by developer 173787247, and released under the MIT license. It is an optional component of the dsh-wsl-kit toolkit and is not included in the standard installation script by default.

Core Capabilities

The plugin provides the following functional modules for controlling Windows Obsidian from a WSL environment:

  • obsidian_status: Resolves the vault path, confirms the path type, and locates Obsidian.exe.
  • obsidian_list: Lists all Markdown files in the vault.
  • obsidian_search: Performs case-insensitive substring search in the vault.
  • obsidian_read: Reads the contents of a specified note.
  • obsidian_write: Creates a new note or overwrites an existing note.
  • obsidian_append: Appends content to an existing note.
  • obsidian_open: Opens a note by invoking the Windows obsidian://open protocol through PowerShell (WSL only).

Prerequisites and Notes

  • Environment requirement: DeepSeek Harness version >= 0.1.2 is required.
  • Path restriction: All file paths must be relative to the vault (for example, Inbox/Note.md). The plugin rejects absolute paths or relative paths containing ../.
  • File system restriction: The vault must be stored on a Windows NTFS file system (such as C:\ or D:\). Mounting the vault inside WSL (such as \\wsl$\...) will break Obsidian’s file watching mechanism.
  • Configuration fallback: If vaultPath is not configured, the plugin will try to read the default vault configuration on Windows through /mnt/c/.../AppData/Roaming/obsidian/obsidian.json.

Installation and Enabling

The plugin is not included in the installation script by default and must be added manually. Run the following command to install it:

dsh plugin --profile web add github:173787247/dsh-wsl-obsidian

After installation, restart dsh web and start a new session. The obsidian_* commands will then appear in the tool list.

Configuration Example

Add the following snippet to the DSH configuration file to enable the plugin and specify the vault path:

- id: dsh-wsl-obsidian
  name: dsh-wsl-obsidian
  config:
    enabled: true
    vaultPath: "/mnt/d/Notes/MyVault"
    vaultName: "MyVault"
    timeoutMs: 20000

Note: For vaultPath, it is recommended to directly use the WSL path for accessing the Windows partition (such as /mnt/d/...). The plugin will automatically handle path conversion.

Setup Recommendations

For the best compatibility, set up the environment using the following steps:

  1. Install the Obsidian desktop app on Windows.
  2. Create or open the vault on the C: or D: drive (do not create the vault on the disk partition where the Linux distribution is installed).
  3. Access the vault path in WSL via /mnt/c/... or /mnt/d/..., and use the corresponding WSL path in the configuration.

Conclusion

dsh-wsl-obsidian provides the ability to directly read from and write to a Windows Obsidian vault from a WSL environment. For DSH Agent developers who need to perform automated operations in a local knowledge base, this is an essential bridging tool.

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye