DeepSeek Harness Plugin

173787247/dsh-wsl-obsidian

Stars ★ 1 Category WSL & Windows Interop Added 2026-09-23

Bridges a WSL dsh agent to a Windows Obsidian vault on NTFS: status/list/search/read/write/append, wikilink resolve, write/append require confirm=true, plus obsidian:// open. Keep the vault under /mnt/<drive>/; Linux-disk vaults via \\wsl$ are unreliable.

Install

# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)

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

Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time — pnpm blocks those until you allow them, so an install can stop with ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED or ERR_PNPM_IGNORED_BUILDS; dsh prints the exact key to add under allowBuilds in your profile’s pnpm-workspace.yaml, and the install works on the next run. Allowing a build is a trust decision: only install sources you trust, and pin a commit (github:owner/repo#sha).

README

Install set: optional companion to dsh-wsl-kit. Not in KIT_SET=daily. Fault tree: TROUBLESHOOTING.md.

DeepSeek Harness plugin: WSL agent ↔ Windows Obsidian vault — obsidian_status / open / list / search / read / write / append.

Standalone MIT plugin under dsh-wsl-kit (optional; not shipped in install.sh by default).

中文说明 → README.zh.md

Where it sits

flowchart LR
  agent["dsh agent in WSL"] --> tools["obsidian_*"]
  tools --> ntfs["Vault on NTFS /mnt/c|d/..."]
  tools --> uri["obsidian:// → Windows Obsidian"]

Keep the vault on Windows NTFS. Opening a vault from \\wsl$\… breaks Obsidian’s file watcher.

Compatibility

Field Value
Plugin dsh-wsl-obsidian 0.2.1
Minimum dsh ≥ 0.1.2
Latest verified See dsh-wsl-kit Compatibility (currently 0.2.2-rc.1) — single source of truth for the suite
Kit set optional (not in daily)
Obsidian Windows desktop app (install from obsidian.md)

Tools

Tool Role
obsidian_status Resolve vault (vaultPath or %APPDATA%\obsidian\obsidian.json), path kind, Obsidian.exe
obsidian_list List .md notes
obsidian_search Case-insensitive substring search
obsidian_read Read note
obsidian_write Create / overwrite note
obsidian_append Append to note
obsidian_open obsidian://open?vault=…&file=… via PowerShell (WSL only)

Paths are vault-relative (Inbox/Note.md). Absolute / ../ paths are rejected.

Config

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

If vaultPath is omitted, the plugin reads Windows obsidian.json through /mnt/c/Users/…/AppData/Roaming/obsidian/.

Install

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

Restart dsh web, open a new session, run obsidian_status.

Layout recommendation

  1. Install Obsidian on Windows.
  2. Create/open the vault under C:\ or D:\ (not inside the Linux distro disk).
  3. From WSL use /mnt/c/... or /mnt/d/... as vaultPath.
  4. Optional later: Local REST API — not required for 0.1.0.

License

MIT

Content from the project README on GitHub ↗

Links

More in this category

View the whole category →

Community comments

Comments are public GitHub Discussions. Loading them connects to GitHub and Giscus; a GitHub account is required to post.