Releases: Elervi/obsidian-dsh-dock
Releases · Elervi/obsidian-dsh-dock
Release list
0.4.2
v0.4.2
DSH Dock 0.4.2 — panel cross-site auth fix
0.4.0
feat: dock the official dsh web behind a local auth proxy (B2) dsh web now enforces browser auth with a SameSite=Strict signed cookie, which Obsidian's cross-site sidebar iframe can neither store nor send, so the panel could never authenticate (shown as "dsh web authentication required; reopen the URL printed by dsh web"). Add a loopback reverse proxy that takes over auth: - read the target dsh web's client-connection/browser-session signing key from its credential store and mint a valid dsh-auth cookie (exact browser-auth format), injecting it on every HTTP request and WebSocket handshake - rewrite Host/Origin/Sec-Fetch-Site to pass the official /api trust fence - works for both auth'd (new) and no-auth (old) dsh web: probe `/`; if it requires auth, inject the cookie, otherwise pass through untouched - panel baseUrl now points at the proxy; Open in system browser uses the real URL; popout works too because the proxy authenticates server-side - verifyDshBrand accepts dsh web's 401 auth response as a brand signal so attaching to an already-running auth'd instance is no longer rejected bump version to 0.4.0
0.3.4
chore: bump version to 0.3.4 (rename parent-folder fix)
0.3.3
chore: bump version to 0.3.3 (parent-folder create fix)
0.3.2
chore: bump version to 0.3.2 (security fixes release)
0.3.1
chore: bump version to 0.3.1 (await listNotes fix)
0.3.0
feat(B1): Obsidian API 桥 —— 把 vault/metadataCache/fileManager 喂给工具侧
插件加载即在 127.0.0.1 起 token 鉴权 HTTP 桥:
- src/bridgeTypes.ts 协议类型 + 稳定错误码(复用工具侧 VAULT_*/FS_* 词表)
- src/bridgeServer.ts 纯 Node HTTP 服务器(零 Obsidian 依赖可冒烟):
GET /v1/{current,notes,note,metadata,frontmatter,backlinks,search,tags,all-tags,folders}
POST /v1/{write,edit,frontmatter,rename,trash,open,link}
- src/obsidianService.ts 用官方 API 实现:vault.* / metadataCache.* / fileManager.*
- 端口 18080+hash%4096 与 dsh web 端口域不相交;冲突顺延
- 桥地址/token 经 DSH_OBSIDIAN_BRIDGE_URL/TOKEN env(spawn 注入)+
current-vault.json 标记文件(shared 多窗口第二通道)双通道暴露
- 设置页「启用 API 桥」开关;esbuild 产出 lib/bridgeServer.cjs
- smoke 用内存假服务逐端点验证:鉴权 401 / 路由 / 错误映射
DSH Dock 0.2.5
fix: sweep orphan dsh web processes on startup (0.2.5) - launcher: pid-file + cmdline identity check + ppid orphan detection; sweepOrphanDsh() cleans only this vault's port, never live children. - main: sweep before start, record pid file on fresh spawn, remove on stop/exit. - add scripts/cleanup-orphans.sh for one-shot cleanup of leftover servers. - manifest 0.2.4 -> 0.2.5
DSH Dock 0.2.4
DSH Dock 0.2.4
社区目录审核第 3 轮修正(提交 5ac1142):
错误修复
- manifest 描述:去掉
obsidian子串(dsh-tool-obsidian-vault全名被检查器视为违禁词),改为 "companion DSH tool plugin",保留联动强调(209 字符,合规) - 设置页:移除插件名顶层标题(官方指南禁止插件名作顶层标题)
警告清理
- timer 改用
window.setTimeout/window.clearTimeout(弹窗兼容;Node smoke 用 shim 保持可用) - README 补充完整英文章节(About / Features / Install / Companion / License)
未处理(非阻塞警告)
- 行为类:fs 访问 + child_process —— 插件设计本质(spawn 官方 dsh CLI),无法消除
- 设置页
getSettingDefinitions()声明式 API —— 需要较大重构,后续版本再评估
安装:复制 main.js + manifest.json + styles.css 到 .obsidian/plugins/dsh-dock/。
前置:Obsidian 桌面端 1.5.0+;官方 dsh 已安装(npm i -g @deepseek-ai/dsh)。