DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

swj88620-commits /

swj88620-commits/dsh-deepseek-web-dock

Verified

DeepSeek Web Dock for DeepSeek Harness: open the free DeepSeek web chat in the native right sidebar, with half/fullscreen, native close animation, theme sync and persistent web sign-in.

★ 0 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: main@eba0ff3e

DeepSeek Web Dock

DeepSeek Web Dock for DSH

在 DeepSeek Harness Desktop 左侧「工作区」上方加入一个按钮,
把免费的 DeepSeek 网页版接入原生右侧栏。

English · 安装指南 · 实现说明 · 网页上传 · 更新日志

非官方社区插件,与 DeepSeek 官方无关。插件使用 DeepSeek 网页版账号,不绕过登录、额度或付费限制。

功能

操作 行为
单击(关闭状态) 等待 175 ms 判定后,以普通半屏宽度打开
双击(175 ms 内) 直接全屏打开,不会先闪一下半屏
单击(已打开) 等待判定后,以原生收起动画关闭右侧栏
Esc 立即收起;同时取消尚未执行的单击动作
Tab 上的 × 真正关闭 DeepSeek 标签页
  • 按钮位于「工作区」标题上方,使用 DSH 侧栏主题变量。
  • 网页运行在 Electron 隔离 webview 中,不是 iframe,不受 X-Frame-Options 限制。
  • 自动跟随 DSH 明暗主题。
  • 首次在网页中登录后,自动保存并恢复网页登录态。
  • 关闭右栏时保留标签和网页状态,再次打开回到原页面;要销毁页面请点标签上的 ×。
  • 没有 Host 路由、Harness API Key 读取或模型工具;Harness 凭证不会进入网页。

系统要求

  • DeepSeek Harness Desktop,需要右侧栏和 Electron webview 支持。
  • 当前版本在 DSH Desktop 0.2.1-rc.3(Windows) 上实测。
  • 普通浏览器(Web 版 DSH)不可用:没有隔离 webview,按钮会被禁用。
  • 插件没有构建步骤,也没有运行时 npm 依赖。

安装

  1. 下载或 clone 本仓库到一个稳定目录。
  2. 在 DSH Desktop 的插件管理中使用“从本地目录安装”(如果你的版本提供该入口);或按 安装指南 手动链接到 desktop profile。
  3. 完全退出 DSH Desktop 后重新启动。
  4. 打开任意会话,点击左侧「工作区」上方的 DeepSeek 网页版。

仅关闭窗口到托盘不会重新加载 Host 插件;需要真正退出应用。

包名 @local/dsh-deepseek-web 是 DSH 本地 bundle 的安装标识,本项目不发布 npm;GitHub 仓库名可以独立取作 dsh-deepseek-web-dock。

手动安装的核心是把本目录链接到:

<DSH_HOME>/profiles/desktop/node_modules/@local/dsh-deepseek-web

并把 @local/dsh-deepseek-web 加入该 profile 的 dsh.profile.bundles。完整步骤见 docs/INSTALL.md。

使用

  1. 打开任意会话(没有会话时会先创建一个空会话)。
  2. 单击按钮:半屏打开;双击按钮:全屏打开。
  3. 第一次使用时,在右侧网页里登录 DeepSeek 账号。之后插件会恢复网页登录态。
  4. 再次单击按钮或按 Esc:收起右栏。动画与鼠标点右栏右上角收起按钮一致。
  5. 再点按钮会回到之前的网页页面,不会重新加载。

单击动作有 175 ms 的判定延迟,用来区分双击;双击会取消单击并直接进入全屏。

实现概览

工作区按钮
   │  click / 175ms 判定
   ├── 单击 → openTab + 半屏(push)
   ├── 双击 → openTab + 全屏(fullscreen)
   └── 已打开单击 / Esc → 点击原生收起按钮 → 滑出动画
                                  │
                                  └── webview 保持挂载,状态保留
  • Host:空实现,只负责作为 Cordis bundle 被加载。
  • Client:在 Workspace 区头前插入按钮;注册 deepseek-web 右侧栏 Tab;通过 Desktop browser bridge 申请隔离 guest。
  • webview:about:blank#<lease> 启动,dom-ready 后加载 https://chat.deepseek.com/,离开时释放 lease。
  • 登录:读取 DeepSeek 自己的 userToken / __appKit_userInfo,保存到 DSH 文档 localStorage 的 dsh.deepseek-web.auth.v1,下次加载后恢复。
  • 主题:把 DSH 的明暗状态同步到网页的 data-ds-dark-theme 和 color-scheme。

更完整的生命周期、接口与安全边界见 docs/ARCHITECTURE.md。

登录与隐私

  • 网页登录 token 只保存在本机 DSH 渲染进程的 localStorage。
  • 插件不读取、保存或上传 DeepSeek API Key,也不把 Harness 凭证传给网页。
  • 内嵌网页运行在 Electron sandbox 中,不具备 Node、preload 或 Harness 权限。
  • 网页内容属于 DeepSeek;插件只负责承载和恢复登录状态。

安全细节与漏洞报告方式见 SECURITY.md。

兼容性与已知限制

  • 仅支持 DSH Desktop;Web 版按钮禁用。
  • Windows 已实测;macOS/Linux 使用同一套 Electron/DOM 接口,但未实机验证。
  • 右栏宽度低于 768 px 时,DSH 会自动全屏展示,此时无法强制半屏。
  • 双击必须在 175 ms 内完成;更慢的两次点击会按两次单击处理。
  • 登录恢复依赖 DeepSeek 当前的 localStorage 结构;官方改版后可能需要重新登录一次。
  • 插件依赖 DSH 的右侧栏、sidebar.right.pane.tab 和 Desktop webview 桥;DSH 大版本升级后建议回归一次。
  • 只提供网页承载,不包含抓取对话、回填输入框或自动发送功能。

故障排查

按钮没出现

  • 确认使用 DSH Desktop,且左侧栏处于展开状态。
  • 确认 profile 的 dsh.profile.bundles 包含 @local/dsh-deepseek-web。
  • 完全退出并重启 DSH;查看客户端控制台是否有插件加载错误。

右侧栏空白或加载失败

  • 确认网络可以访问 https://chat.deepseek.com/。
  • 确认不是普通浏览器环境。
  • 关闭后重新打开;插件会重新申请 webview guest。

登录没有恢复

  • 在网页里重新登录一次。
  • DeepSeek 可能修改了 userToken / __appKit_userInfo 的格式;可提交 issue。

双击变成两次单击

  • 两次点击需在 175 ms 内。单击后等待 175 ms 才会执行,属于预期行为。

开发

无需构建,直接修改 client.js / index.js。仓库自带一个不依赖第三方包的静态检查:

npm run check

CI 配置在 .github/workflows/check.yml。

index.js              Host 半部:空实现
client.js             Client 半部:按钮、侧栏 Tab、webview、主题、登录恢复
cordis.patch.yml      bundle patch
icon.svg              插件图标
package.json          DSH bundle / client 声明
scripts/check.mjs     清单、bundle id 与语法检查
docs/INSTALL.md       手动安装与卸载
docs/ARCHITECTURE.md  实现与接口说明

发布到 GitHub

仓库内容已经按 GitHub 根目录组织。建议仓库名:dsh-deepseek-web-dock。

不想安装 Git 时,按 从 GitHub 网页创建并上传 操作即可。

git init
git add .
git commit -m "feat: initial release"
git branch -M main
# 先在 GitHub 创建一个空仓库,不要勾选自动生成 README
git remote add origin <YOUR_REPOSITORY_URL>
git push -u origin main

如果本机没有 Git,可以用 GitHub Desktop,或在 GitHub 新建空仓库后用网页的 “uploading an existing file” 上传整个目录;注意 .github/ 和 .gitignore 是隐藏目录/文件,需要让文件选择器显示隐藏项。不要上传 .git、node_modules 或本机 profile。

建议的仓库描述:

DeepSeek Web Dock for DeepSeek Harness: open the free DeepSeek web chat in the native right sidebar, with half/fullscreen, native close animation, theme sync and persistent web sign-in.

建议 topics:

dsh  dsh-plugin  deepseek  deepseek-harness  electron  sidebar  webview

注意不要把本机 .dsh profile、登录 token、node_modules 或包含私人会话的截图提交进仓库。

许可

MIT。图标与“网页登录态保存/恢复”的做法参考了 S-anZZz/dsh-deepseek-web-sync(MIT);本项目为独立实现,不包含其对话抓取/回填功能。

DeepSeek、DeepSeek Harness 及相关商标归各自权利人所有。

—/ 5

No ratings yet

Verified DSH bundle

Commit eba0ff3e14ab

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout