DeepSeek Harness Plugin Hub

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

探索

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

社区

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

相关链接

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

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

DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins
D

dsh-deepseek-sidebar

Deepseek Sidebar

DeepSeek Harness 侧边栏中的 DeepSeek 网页聊天:左侧边栏中的一行即可在右侧窗格打开,可按需全屏显示,登录状态在重启后仍会保留。

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

npx -y @deepseek-ai/dsh plugin --profile web add github:Dcmwfg/dsh-deepseek-sidebar#25c1d74d89adb1b57cb071b9084b0ee6ce1b7960
README兼容性版本

兼容性与来源证明

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

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

版本

1.1.0stable
2026/10/20

相关插件

正在加载相关插件…

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

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

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

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

认领这个 Plugin →
报告问题

相关插件

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

Acp App@deepseek-ai/dsh-acp-appdsh ACP 配置文件包:基于 dsh-base 的仅限自动化的 JSON-RPC stdio 和进程生命周期管理Remote Bridge@linxin666/dsh-remote-bridgeDSH 远程桥接:主机端通过唯一且精确的 /ios/v1 WebSocket 路由提供协议 v1——会话列表、历史记录基线、提示、包含工具活动的实时回合增量、中断以及进程内代理审批——连接到通过一次性配对的设备Remote Web Ui@linxin666/dsh-remote-web-ui通过扫码配对访问 dsh Web GUI,共享一个官方界面:设置按钮旁的二维码可将手机和 PC 配对到同一个 Web GUI(手机采用竖屏触控适配层,PC 使用完整桌面界面),通过一次性令牌和 rDs Botds-botDS Bot:DeepSeek Harness 的一组长期运行的 Bot,支持主 Bot、Bot 间消息和群聊

README

dsh-deepseek-sidebar

DeepSeek web chat inside the DeepSeek Harness sidebar.

One row in the left sidebar opens the free web chat (chat.deepseek.com) in the right pane, keeps it alive while you keep working in the conversation, expands to fullscreen on demand, and — with the helper script below — stops asking you to log in on every restart.

English | 中文


What you get

ActionResult
Click the DeepSeek row in the left sidebarThe right sidebar opens with a DeepSeek tab; the conversation stays untouched
Click Fullscreen in the tab toolbarThe chat takes over the main area
Click Dock to sidebar in the fullscreen toolbarBack into the right pane
Restart DSHThe chat is still signed in (see persistent login)

The webview reuses the sidebar browser partition (persist:zcodebrowseruse), i.e. the same cookie jar as the built-in sidebar browser — no second account, no token juggling.

Requirements

  • DeepSeek Harness desktop (Electron) whose UI exposes the sidebar.panellist, main, sidebarRightTabs and sidebar.right.pane.tab seats.
  • Node.js 20+ (DSH ships its own; nothing extra to install).
  • Windows only for tools/apply-persist-patch.ps1; the plugin itself is platform-neutral.

Install

The plugin is a plain DSH bundle: package.json + host half (index.js) + client half (client.js) + cordis.patch.yml.

Manual (works on every build)

  1. In <profile>/package.json add the dependency and the bundle entry:

    {
      "dependencies": { "dsh-deepseek-sidebar": "link:E:/path/to/dsh-deepseek-sidebar" },
      "dsh": { "profile": { "bundles": ["dsh-deepseek-sidebar"] } }
    }
    

    Write it as UTF-8 without BOM — the host JSON-parses it, and a BOM silently drops the whole profile.

  2. Create the junction so the loader can resolve the package:

    mklink /J "<profile>\node_modules\dsh-deepseek-sidebar" "E:\path\to\dsh-deepseek-sidebar"
    
  3. Fully restart the app. Client bundles are resolved at boot — a page refresh is not enough.

Managed

dsh plugin --profile <profile> add github:<owner>/dsh-deepseek-sidebar

Use it when your build accepts third-party bundles for that profile; otherwise stick to the manual step above.

Persistent login (one-time patch)

Out of the box DSH builds every sidebar webview session on a random, memory-only partition, so cookies die with the process and every launch asks you to sign in again. A plugin cannot override that: the main process rejects any guest whose partition differs from the one it issued.

tools/apply-persist-patch.ps1 rewrites the single statement that decides it:

pwsh -File tools\apply-persist-patch.ps1          # apply (idempotent, keeps app.asar.orig-bak)
pwsh -File tools\apply-persist-patch.ps1 -Check   # report only
pwsh -File tools\apply-persist-patch.ps1 -Restore # roll back
beforea 50-byte template producing dsh-sidebar-browser-<uuid> (no persist: prefix)
afterpartition="persist:"+workspace.replace(/\W/g,""); (same 50 bytes)

A DSH upgrade replaces app.asar, so re-run the script after every upgrade; otherwise the login starts disappearing again. The patch is equal-length and applied in place, so no header, offset or integrity field is invalidated, and it is idempotent — running it twice is harmless.

How it works

left sidebar row (sidebar.panellist, id "deepseek-chat")
  click -> ctx.layout.selectPanel("deepseek-chat")      (hard-coded in ui-sidebar.js)
     our shadow method intercepts the id
        -> sidebarRight.openTab("deepseek-chat")        right-pane tab
        -> expand the right column if collapsed
     the main area keeps the conversation (nothing remounts)

right-pane tab (kind "deepseek-chat", id "dsh-deepseek-sidebar/chat", keepMounted)
  body = ChatBody(mode="tab")   webview on partition persist:zcodebrowseruse
  toolbar: back / forward / reload / home / fullscreen
fullscreen  -> main key "deepseek-chat-full" = ChatBody(mode="full")

Why the obvious alternative — registering a main entry that opens the tab and returns to the conversation — cannot work is documented with the exact call sites in docs/architecture.md. Short version: selectPanel(id) replaces the conversation, the right-pane surface is mounted under the conversation, so it is already gone when the redirect runs (sidebarRight: no session surface is mounted).

Diagnostics

The desktop shell runs on a dsh-app:// origin and its renderer console is unreachable from outside, so the host half exposes a same-origin route:

MethodPathPurpose
GET/deepseek-sidebar/reportcollected entries (?clear=1 resets)
POST/deepseek-sidebar/reportclient batches { source, entries }

Entries are also appended to %TEMP%\dsh-deepseek-sidebar\diag.log (override with DSH_DEEPSEEK_SIDEBAR_LOG). Events worth reading: patch:layout, patch:intercept, openTab:ok|error, toSidebar:result, guest:acquired|did-finish-load.

Limitations

  • Without a sidebarRight service the row still opens the fullscreen page; the tab is simply never placed.
  • keepMounted: true keeps the tab webview alive while the fullscreen one is created, so two webviews can coexist for a moment. Each ChatBody owns its own guest lease for that reason.
  • DSH's own platform login cannot be reused by the web chat: that credential is scoped to the account origin and wiped on close. The sidebar partition is the only reusable session.

Uninstall

Drop the package from the profile dependencies and dsh.profile.bundles, delete the junction, restart. Run the patch script with -Restore if you also want the archive pristine.

License

MIT — see LICENSE.