Paraso42 / dshan

已收录

DeepSeek Harness (DSH) in your Obsidian sidebar — a native chat view that turns your vault into a DSH workspace over the local /api wire contract.

main其他 查看源代码

安装

npx -y @deepseek-ai/dsh plugin --profile web add github:Paraso42/dshan

此安装命令根据 GitHub 仓库地址生成,是未经验证的安装起点。

README

维护者编写的文档快照。

在 GitHub 查看 ↗
提交版本 f7bbcbb同步于 2026年8月18日

dshan — DeepSeek Harness in your Obsidian sidebar

MIT License GitHub release GitHub Downloads CI Obsidian min version

中文文档 · Contributing · Code of Conduct · Security

dshan is a community plugin for Obsidian that brings the DeepSeek Harness (DSH) into your vault as a native Obsidian chat view — like Claudian, the UI lives inside Obsidian (native DOM, Obsidian's own Markdown rendering, wikilinks work), while the agent runs on your local DSH service.

dshan shares the ONE local dsh web server you already use (default http://127.0.0.1:3080) as the service backend, and speaks DSH's /api wire protocol directly from the plugin: sessions, streaming turns, tool cards, approvals, and cancel all render as native Obsidian UI. The browser UI is never embedded — it stays available via an optional "open in browser" command and shows the same conversations.

Features

  • Obsidian-native chat view — right sidebar (default), left sidebar, tab, or pop-out window
  • Vault = DSH workspace — sessions are created with cwd = vault, so the agent reads/writes your vault and picks up CLAUDE.md as workspace instructions automatically; every file it writes appears in Obsidian's file explorer
  • Full turn experience, natively rendered — streaming assistant text (Markdown with working [[wikilinks]]), collapsible reasoning, tool-call cards, approval buttons, stop button, session list & history
  • Process management — probe-first auto-start (no double-boot), crash recovery with backoff, configurable shutdown behavior on Obsidian exit
  • Workspace controls — per-session model selector and agent-preset selector, plus a new-session permission default (read-only / workspace-write / full access), mirroring the web UI's settings
  • Obsidian interop — "Send selection to dshan" / "Send current note to dshan" insert text directly into the native composer
  • One shared DSH server — Obsidian, the browser UI and your terminal all talk to the same service, so conversations stay in sync and never race on the session store

Requirements

  • Obsidian 1.7.2+ (desktop only: macOS / Linux / Windows)
  • DSH CLI installed (npm install -g @deepseek-ai/dsh), or configured via the plugin settings

Installation

  • Build from source (see docs/DEVELOPMENT.md) or use GitHub Releases once published.
  • Manual: copy main.js, manifest.json, styles.css into vault/.obsidian/plugins/dshan/ and enable the plugin.

Settings

SettingDefaultMeaning
DSH executableauto-detectPATH, npm-global shims, or the @deepseek-ai/dsh Node entrypoint
DSH web port3080The shared DSH server: dshan reuses whatever answers here, or starts one when nothing is listening
Shutdown behaviorleave runningKeep a plugin-started server alive when Obsidian exits, or stop it
View placementright sidebarright/left sidebar, tab, or pop-out window
Auto startonStart (or reuse) the DSH server when the plugin loads

Architecture

Obsidian renderer (native chat view: composer, bubbles, tool cards, approvals)
  │  node:http POST /api/<method>      (client-request envelope)
  │  node:net WebSocket /api/events.*  (downlink frames, auto-reconnect)
  ▼
dsh web (shared service backend; sessions are created with cwd = vault, so the vault is the workspace)

See docs/05-api-contract.md for the wire contract dshan depends on.

Privacy & data

  • All traffic stays between the plugin and your local DSH server on 127.0.0.1. Nothing is sent anywhere else.
  • The agent's behavior is governed by your existing DSH configuration (model, preset, approval policy, skills). dshan never modifies DSH configuration or presets.
  • dshan only writes inside its own plugin folder (.obsidian/plugins/dshan/data.json).

License

MIT — see LICENSE. Process-spawn, CLI-detection, view-registration, and CI/release patterns are adapted from Claudian (MIT, © Yishen Tu); see NOTICE.

项目文件与信号

以下项目是目录快照中检测到的公开仓库信号。

插件清单已检测
测试已检测
安全策略已检测
贡献指南已检测
文档已检测

仓库信息

开发语言
TypeScript
许可证
MIT
最新发布
v0.2.5
最后更新
2026年8月16日 15:38

谨慎安装

请检查源代码、权限、生命周期脚本、依赖与网络访问;不受信任的插件应先在隔离环境中测试。