DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

Official Cleanup — DSH Plugin for DeepSeek Harness
← Plugins
O

dsh-official-cleanup

Official Cleanup

DeepSeek Harness Web UI cleanup: a direct Settings launcher instead of the sidebar 更多 menu, no unusable official DeepSeek provider card, and the official-model Session-log upload pinned off. · DSH 界面官方入口清理

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add github:tkhs101/dsh-official-cleanup#588b0e5e34362a9409850bae41de1d4e1e8da5e1
READMECompatibilityVersions

Compatibility and provenance

Official Cleanup is published as dsh-official-cleanup and currently resolves to version 0.4.1. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
web
Release source
github
Registry updated
10/18/2026

Versions

0.4.1
stable
10/18/2026

Related plugins

Loading related plugins…

Latest
0.4.1
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
web
License
MIT
Source
github
GitHub
★ 1
Weekly downloads
0
Last push
10/19/2026
View source ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in

Related plugins

More verified plugins in ui-customization.

Web App@deepseek-ai/dsh-web-appThe dsh browser-surface bundle: the web patch layer over dsh-base plus the runtime glue plugin (frontend dist serving, web-surface prompt, bash runtime variables, URL line)Experimental Agent Team Web Profile@deepseek-ai/dsh-experimental-agent-team-web-profileExperimental Web profile layer for Agent Teams Remote and UI pluginsWhale Widgetdsh-whale-widgetDeepSeek balance whale widget in the bottom-right corner of the DSH Web interface: balance/today’s usage/peak-off-peak pricing, customizable bubble click sequence (text/balance/today/peak-off-peak/image/random phrases and parallel weighted selection), per-line styles and fonts, floating quick editinAb Chartdsh-ab-chartChart rendering tool with the browser card that draws its calls, in one publishable plugin package

README

dsh-official-cleanup

清掉 DSH Web 界面里用不到的官方入口,并把「官方模型 API 上传 Session Log」钉死为关闭。

当前版本 0.2.0,适配 dsh 0.2.1-rc.2(manifest 里用 engines.dsh = ">=0.2.1-rc.2 <0.3.0-0" 声明)。版本不匹配时 DSH 的兼容性闸门会明确拒绝并给出提示,而不是让 Harness 崩掉。

功能

#目标做法
1隐藏会话页左下角 更多 菜单里的「意见反馈」和「登录」Client half 用插件自己的样式表把这两行 display:none,并标记 disabled,让菜单的键盘走位跳过它们
1b让 设置 直接顶替「更多」这个菜单用 priority: -1 遮住 settings.launcher 这个 single 槽位里的账号菜单,渲染一个直接调 openSettings() 的设置按钮
2隐藏 设置 → 模型 里的 DeepSeek 官方 Provider 卡片关闭 loader entry llm-deepseek,卡片的数据来源(provider 目录 + 适配器路由)一起消失
3「在使用官方模型 API 时上传 Session Log」保持关闭Host half 在 internal/config waterfall 里把 enabled 钉成 false

为什么这么做

功能 1:AccountMenu 是硬编码 JSX,没有扩展点、渲染出来的行也没有 id。所以按 DSH 自己的第三方 UI 插件(如 dsh-ui-hub)的做法:只标记节点,靠本插件自己的 !important 样式表生效。

不删 DOM 节点:Menu 渲染的是没有 key 的普通数组,删掉一行后 React 下一次 commit 会对已经不存在的节点调用 removeChild,抛错会让整个 launcher 槽位被永久判死(deadCell)。隐藏不动 React 的树,是安全的。

行的识别用图标几何(纸飞机 = 意见反馈,人像 = 登录),不依赖界面语言。

功能 1b:settings.launcher 是 single 槽位——同一优先级注册会直接抛错,而最低优先级渲染(框架自己的提示就是 “register at a different priority to shadow it (lowest renders)”)。所以用 priority: -1 遮住默认优先级 0 的账号菜单即可,不需要反注册它。按钮复制了宿主自己的齿轮图标几何和触发按钮尺寸(32px 常规 / 36×36 收起态),只换了类名前缀。

账号菜单并没有被注销,只是不再占据这个座位:它的设置分区、模型页登录编辑器、配额通知都在各自的槽位里,照常工作。

功能 2:Provider 卡片是数据,不是标记——没有 data-provider 之类的属性,纯 CSS 选不中。而 llm-deepseek 这个 entry 的注册同时负责 provider 目录条目和适配器路由,disabled: true 一次把两者都拿掉。设置页对缺行是容错的(降级为 adapter-absent),不会报错。

功能 3:enabled 是 volatile 字段,schema 默认值就是 true;而 bundle patch 是优先级最低的补丁层,profile patch 会覆盖它,Web 开关写进去的 true 还会跨重启保留。所以真正生效的是 Host half 的 internal/config waterfall——它在 fiber 解析配置时强制写回 false,覆盖开机、设置页写入和重新组合三条路径。

恢复办法

  • 想恢复 侧栏账号菜单(更多):删掉 client.js 里 settings launcher 那段注册(或把 priority: -1 去掉),刷新页面。
  • 想恢复 DeepSeek Provider 卡片:删掉 cordis.patch.yml 里 llm-deepseek 那段(含 disabled: true),重启 Harness。
  • 想恢复 Session Log 上传开关:删掉 index.js 里的 internal/config 监听(或整个停用本插件)。
  • 想调整 被隐藏的菜单行:client.js 顶部的 FEEDBACK_ICON / LOGIN_ICON 就是那两个图标路径。

已知边界

  • 设置按钮顶替「更多」之后,DeepSeek 账号登录在这个 profile 里没有可见入口了:唯一剩下的入口是模型页首启动引导里的 settings.models.sign-in,而那条路依赖官方 Provider 卡片,已被功能 2 一起关掉。这是功能 1b + 功能 2 叠加的结果,不是缺陷;要恢复就按上面「恢复办法」还原其中任意一项。
  • 菜单行的隐藏依赖 Menu 目前的图标路径和 :has() 选择器;Harness 升级后如果换了图标路径,需要同步改 client.js 顶部两个常量(不写 data-* 标记时,这是唯一能定位这两行的稳定坐标)。
  • 键盘方向键走位由菜单自己的实时 DOM 查询驱动;本插件把行标成 disabled 就是为了让它跳过这两行。升级后值得顺手按一次 ↑/↓ 确认。
  • 关掉 llm-deepseek 会让「官方 DeepSeek API Key」这条路由整体消失(这正是需求),首启动引导会降级成 adapter-absent。
  • Host half 的 internal/config 是 Cordis 的 internal/* 钩子,没有稳定性承诺。注册失败会被捕获并只记一条 console 错误:此时功能 3 退化为「默认关闭,但设置页可以打开、直到下次重启」,Harness 本身照常启动。
  • Client half 的每个注册都单独隔了错误;任何一处注册被拒只会少一个效果,不会让前端启动失败。
  • 设置按钮复制的是宿主当前的图标几何与按钮尺寸,只依赖 --dsw-alias-* 主题 token;宿主换了图标或尺寸时外观可能略有出入,改 client.js 里的 GEAR_PATHS 和 .doc-launcher 即可。

安装

要求 dsh >= 0.2.1-rc.2(manifest 里的 engines.dsh,版本不符时 DSH 会直接给出提示而不是崩掉)。纯 JavaScript、无构建步骤、无运行时依赖,所以从 git 安装不需要 prepare 脚本。

# 从 npm 装(推荐,最快也最省事)
dsh plugin --profile web add dsh-official-cleanup

# 锁定版本
dsh plugin --profile web add dsh-official-cleanup@0.4.1

# 从 GitHub 装(想跟仓库走或 npm 不可用时)
dsh plugin --profile web add github:tkhs101/dsh-official-cleanup#v0.4.1

# 从本地目录装(自己改着玩)
dsh plugin --profile web add /path/to/dsh-official-cleanup

# 卸载
dsh plugin --profile web remove dsh-official-cleanup

dsh plugin 只是把参数原样转给 profile 目录里的 pnpm,所以 add / remove / why 都能用,pnpm 的旗标(例如 --state-dir)也能一起传;装完 DSH 会自己把包加进 dsh.profile.bundles 并应用它的补丁层。

装完后刷新页面即可;本插件的补丁层改了 loader entry(llm-deepseek),那一部分要重启一次 Harness 才在新进程里生效。

想把 dsh 换成别的 profile,把 --profile web 换成对应名字即可。

分发渠道

渠道状态用户装法
npm✅ 已发布dsh plugin --profile web add dsh-official-cleanup
GitHub 仓库✅ 已验证dsh plugin --profile web add github:tkhs101/dsh-official-cleanup#v0.4.1
插件市场(rc.2 的 Discover 面板)⛔ 未收录市场读用户自己配置的索引 URL(plugin-market 的 indexes),索引用 format 1 的 JSON;Git 托管的条目用 commit 固定的 git+https 地址
社区清单(awesome-dsh-plugins 系列)⛔ 待提 PR往清单仓库加一行 + 本仓库启用 dsh-plugin topic(topic 已加)

本仓库已启用 dsh-plugin / deepseek-harness / dsh 三个 topic,社区清单目前就是靠这个筛。

发布注意事项(维护者)

  • cordis.patch.yml 里 insert 行的 name 必须等于 package.json 的 name——它是 Loader 导入用的模块标识符。改名时忘了同步,行会 ERR_MODULE_NOT_FOUND,插件静默失去 Host half。npm test 就是盯这条不变量(以及 engines.dsh、client 模块 id、打包文件清单)。
  • 刚 npm publish 完的几分钟内,registry 的元数据和 tarball 是异步上线的,中间可能出现 0.0.0-stage 占位版本,或 tarball 的 CDN 缓存住一次 404(max-age=300)。用户这时装会失败,等几分钟或加 ?ts= 换 URL 就能验证;不是包本身坏了。

第三方声明

  • 设置按钮的齿轮图标几何(client.js 里的 GEAR_PATHS)与按钮尺寸/配色规则复制自 DeepSeek Harness 的客户端 UI 基础组件,遵循其 MIT 许可:MIT License, Copyright (c) 2026 DeepSeek。
  • 本插件通过 DSH 自己的槽位与 loader 补丁层工作,不修改 DSH 安装目录里的任何文件。

English

A DeepSeek Harness Web UI cleanup plugin (dsh 0.2.1-rc.2, declared via engines.dsh):

  • Sidebar: the 「更多」 account menu is shadowed (settings.launcher, priority: -1, lowest priority renders) by a button that opens Settings directly. The rows 意见反馈 / 登录 stay filtered should the menu ever come back.
  • Models page: the unusable official DeepSeek provider card is removed at its source by disabling the loader entry llm-deepseek, which owns the provider directory entry and the adapter routes in one registration. The page degrades to adapter-absent, by design.
  • Settings → General: "Upload Session Log when using the official model API" is pinned off in the fiber's resolved config through a global internal/config waterfall, because the bundle patch layer alone is overridden by the profile patch and the Web toggle would persist true.

Every registration is failure-isolated: a refused hook disables one effect with a console error instead of breaking the boot.

Licensed MIT. The gear icon geometry is copied from DeepSeek Harness (MIT, Copyright (c) 2026 DeepSeek).