DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Deepseek Web Panel — DeepSeek Harness 插件(DSH Plugin)
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins
D

dsh-deepseek-web-panel

Deepseek Web Panel

把 DeepSeek 网页版作为 DSH 主区域面板:Electron webview 加载官网,官网侧栏即历史,右键可删除对话,顶部窗口带可拖动

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add github:ChengMioa/dsh-deepseek-web-panel#7cec8ee31087536ed1cd089ae3516d1a90b9664d
README兼容性版本

兼容性与来源证明

Deepseek Web Panel 以 dsh-deepseek-web-panel 发布,当前版本为 0.3.1。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
web
发布来源
github
Registry 更新时间
2026/10/19

版本

0.3.1stable
2026/10/19

相关插件

正在加载相关插件…

最新版
0.3.1
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
未提供
文件数
未提供
Surface
web
许可证
MIT
发布源
github
GitHub
★ 0
周下载
0
最近提交
2026/10/19
查看源码 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

相关插件

继续浏览 ui-customization 分类下经过校验的插件。

Web App@deepseek-ai/dsh-web-appdsh 浏览器界面捆绑包:位于 dsh-base 之上的 Web 补丁层,加上运行时粘合插件(提供前端 dist、Web 界面提示符、bash 运行时变量和 URL 行)Experimental Agent Team Web Profile@deepseek-ai/dsh-experimental-agent-team-web-profile用于 Agent Teams Remote 和 UI 插件的实验性 Web 配置层Ab Chartdsh-ab-chart带有绘制其调用的浏览器卡片的图表渲染工具,封装在一个可发布的插件包中Web App@monotykamary/dsh-web-appdsh browser-surface 捆绑包:在 dsh-base 之上的 Web 补丁层,加上运行时衔接插件(前端 dist 提供服务、web-surface 提示符、Bash 运行时变量、URL 行)

README

dsh-deepseek-web-panel

把 DeepSeek 网页版接进 DeepSeek Harness: 主区域一个全局面板,用 Electron <webview> 加载真正的 chat.deepseek.com。 不经过 API,历史列表直接使用官网自带的侧栏,右键可删除对话。

Bring the real DeepSeek website into DeepSeek Harness as a center panel. No API, no iframe: the page runs in an Electron <webview> guest approved by the desktop host.

使用

左侧栏底部有地球图标 「网页区」(侧栏收起时只显示图标)。点击后:

  • 中间主区域切换成 DeepSeek 官网,官网自己的侧栏就是历史列表 (今天 / 昨天 / 7 天内 / 30 天内 / 按月分组,置顶与多选都是官网原样);
  • 一键引用:在网页里划选文字 → 点右侧中间悬浮的 ❝ 按钮 → 自动切回 DSH 对话并把选中内容 以引用块(> …)插入输入框,原有草稿会保留;
  • 右键侧栏里的任意对话 → 菜单「删除该对话」→ 再点一次确认 → 走官网自己的删除接口, 删除成功后页面自动刷新。不可恢复,所以是两步确认;
  • 侧栏收起时顶部留出 48px 窗口带,整条带子(DSH 控件右侧)都能按住拖动窗口;网页内容下移,避开红绿灯;
  • 侧栏收起、面板贴到窗口左上角时,内容整体下移 48px,避开红绿灯和 DSH 的重新打开控件;
  • 点左侧栏任意会话即可回到 DSH 对话。

环境要求

  • 桌面版 DeepSeek Harness(macOS / Windows / Linux)。网页版(dsh web 在浏览器里打开) 没有 Electron webview,面板会显示「网页区需要在桌面版客户端中使用」。
  • 复用桌面版已有的 webview 租约协议(dshDesktop.browser),没有绕开主进程的沙箱与网络策略。

安装

# 已发布到 npm 时(profile 用 desktop)
dsh plugin --profile desktop add dsh-deepseek-web-panel

# 从 tarball 安装
dsh plugin --profile desktop add file:/path/to/dsh-deepseek-web-panel-0.3.0.tgz

# 本地开发(软链当前目录)
dsh plugin --profile desktop add link:$PWD

dsh plugin add 会自动把包写进 profile 的 dsh.profile.bundles,完全退出并重开客户端后生效。 卸载:

dsh plugin --profile desktop remove dsh-deepseek-web-panel

实现

文件作用
package.jsondsh.bundle.patch + dsh.client(浏览器半侧入口 ./client)
cordis.patch.yml向 profile 插入 Loader 条目 dsh-deepseek-web-panel
lib/index.jsNode 半侧:空实现,只为让 Loader 有条目
lib/client.js浏览器半侧:注册 main 面板(key deepseek-web)与 sidebar.footer.action 入口;面板内申请 webview 租约、加载站点,并往页面里注入右键删除

为什么是 webview

chat.deepseek.com 返回 Content-Security-Policy: frame-ancestors 'none',普通 iframe 一定被拒绝。桌面版主窗口开启了 webviewTag,主进程实现了一套 guest 租约:

  1. dshDesktop.browser.acquire(workspaceKey) 申请租约,得到 { lease, partition };
  2. 创建一个 <webview name=lease partition=… src="about:blank#lease"> 并挂到 DOM;
  3. 主进程在 will-attach-webview 校验租约/分区,随后收紧权限(sandbox、无 Node、 拒绝权限请求、拦截下载、禁止访问 DSH 自身 host);
  4. dom-ready 之后 loadURL() 导航。

右键删除

站点的历史侧栏没有右键菜单,所以插件在网页自己的 origin 里注入一小段脚本:

  • 先从站点自己的 GET /api/v0/chat_session/fetch_page 取一份「标题 → id」缓存;
  • 监听左栏(clientX ≤ 340)的 contextmenu,用被点行的标题匹配会话;
  • 菜单里的「删除该对话」第一次点击变为「再次点击确认删除」,确认后调用站点的 POST /api/v0/chat_session/delete({ chat_session_ids: [id] });
  • 站点的 userToken 只在网页上下文内用于这次请求,插件不读取、不保存。

这是依赖站点内部 DOM/接口的增强,站点改版可能失效;失效时官网自带的「… → 删除」仍然可用。

一键引用

注入到网页里的 selectionchange 监听把当前选区记在 window.__dshDeepSeekSelection;点面板右侧的 ❝ 按钮时,插件用 executeJavaScript 取回这段文字,切回会话界面,等 ctx.conversation.input.shell() 挂载后用 actions.insertText()(或 setDraft())插入引用块并聚焦输入框。找不到输入框时退回剪贴板。

窗口拖动

主区域叠 -webkit-app-region: drag 会吞掉下面网页的点击,所以拖动层不能常驻。 只在侧栏完全收起、面板贴住窗口左上角时,顶部会多出一条 48px 的空白带(网页内容下移让出来的), 这条带子从 DSH 的「重新打开侧栏 / 新会话」控件右侧一直延伸到窗口右边,整条都是拖动区; 侧栏展开时带子高度为 0,网页区域完全可点。

侧栏完全收起时(macOS 隐藏整列),面板获得 --dsh-frame-leading-clearance,此时给面板加 padding-top: min(var(--dsh-frame-leading-clearance), 48px);拖动层用同样的高度, left: var(--dsh-frame-leading-clearance)、right: 0,正好铺满这条带子。

自检

node test/smoke.mjs

模拟模块加载器、React、slots/layout 服务与 DOM,检查面板/入口注册、点击后 layout.selectPanel("deepseek-web"),以及右键删除脚本只安装一次、包含站点删除接口与二次确认。

发布

pnpm pack                 # 产出 dsh-deepseek-web-panel-<version>.tgz
pnpm publish --access public

发布前确认包名在 npm 上未被占用;如需改名,package.json 的 name 与 cordis.patch.yml 里 name: 必须一致(Loader 用包名解析)。

License

MIT,见 LICENSE。