dshan

by Paraso42

0 会话与消息github未核验到 manifest收录于 08-16

DeepSeek Harness (DSH) 在你的 Obsidian 侧边栏——一个将你的保险库通过本地 /api 线路合约转变为 DSH 工作空间的本地聊天视图。

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.

安装

dsh plugin --profile web add github:Paraso42/dshan

GitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试

安装与环境配置指引、插件开发教程见 DSH 中文社区文档 ↗

安装即在你的机器上以你的权限运行第三方代码——它可读写文件、使用凭据、访问网络,DSH 的工具审批不会为插件代码加沙箱。「检测到 manifest」仅代表发现 dsh.bundle / dsh.plugin 清单,不构成兼容性或安全审查;安装前请审阅源码,不熟悉的插件先在不含密钥的环境试用。

README

目录

MIT License GitHub release CI

English README · 贡献指南 · 行为准则 · 安全策略

dshan 是一个 Obsidian 社区插件,把 DeepSeek Harness(DSH) 以原生 Obsidian 聊天视图的形式带进你的 vault——与 Claudian 一致:界面完全在 Obsidian 内部(原生 DOM、Obsidian 自己的 Markdown 渲染、[[wikilink]] 直接可用),agent 则运行在你的本地 DSH 服务上。

dshan 与你已在运行的同一个 dsh web 服务(默认 http://127.0.0.1:3080)通信,插件直接通过 DSH 的 /api 线上协议:会话、流式回合、工具卡片、审批、取消,全部渲染为原生 Obsidian UI。浏览器界面不再嵌入——仍可通过「在浏览器打开」命令使用,且与插件看到同样的会话。

功能

  • Obsidian 原生聊天视图 —— 右侧栏(默认)、左侧栏、标签页或弹出窗口
  • vault 即 DSH 工作区 —— 会话以 cwd = vault 创建,agent 直接读写你的 vault,自动加载 CLAUDE.md 作为 workspace instructions;它写入的每个文件即时出现在 Obsidian 文件管理器
  • 完整回合体验,原生渲染 —— 流式正文(Markdown 渲染,[[wikilink]] 悬浮预览可用)、可折叠思考过程、工具调用卡片、审批按钮、停止按钮、会话列表与历史
  • 进程管理 —— 先探测防双开、崩溃退避重启、退出策略可配置
  • 工作区控件 —— 会话级模型选择器、agent 预设选择器,以及新会话权限默认值(只读 / 工作区可写 / 完整访问),与网页版设置一致
  • Obsidian 交互 —— 「发送选区到 dshan」「发送当前笔记到 dshan」直接把文本放入原生输入框
  • 与浏览器界面解耦 —— 同一 DSH 服务仍可用命令在浏览器中打开

环境要求

  • Obsidian 1.7.2+(仅桌面端:macOS / Linux / Windows)
  • 已安装 DSH CLI(npm install -g @deepseek-ai/dsh),或在插件设置中手动指定路径

安装

  • 从源码构建(见 docs/DEVELOPMENT.md)或从 GitHub Releases 下载(待发布)。
  • 手动安装:把 main.js、manifest.json、styles.css 复制到 vault/.obsidian/plugins/dshan/ 并启用插件。

设置项

设置 默认值 说明
DSH 可执行文件 自动探测 依次探测 PATH、npm 全局 shim、@deepseek-ai/dsh Node 入口
DSH web 端口 3080 与浏览器端共享的同一个 DSH 服务:该端口有服务就复用,没有就启动一个
退出行为 保留运行 Obsidian 退出时是否保留由插件启动的 DSH 服务
视图位置 右侧栏 右栏 / 左栏 / 标签页 / 弹出窗口
自动启动 开 插件加载时启动(或复用)DSH 服务

架构

Obsidian 渲染进程(原生聊天视图:输入框、气泡、工具卡片、审批按钮)
  │  node:http POST /api/<method>      (client-request 信封)
  │  node:net WebSocket /api/events.*  (下行帧,自动重连)
  ▼
dsh web(共享服务后端;会话以 cwd = vault 创建,vault 即工作区)

dshan 所依赖的线上契约见 docs/05-api-contract.md。

隐私与数据

  • 所有流量只发生在插件与本地 DSH 服务(127.0.0.1)之间,不发送到任何其他地方。
  • agent 的行为完全由你既有的 DSH 配置决定(模型、预设、审批策略、skills)。dshan 从不修改 DSH 配置或预设文件。
  • dshan 只在自己的插件目录内写文件:.obsidian/plugins/dshan/data.json。

协议

MIT —— 见 LICENSE。进程 spawn、CLI 探测、视图注册与 CI/发布模式改编自 Claudian(MIT,© Yishen Tu);见 NOTICE。

原始 README: https://github.com/Paraso42/dshan/blob/main/README.zh.md ↗