🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

插件批量卸载器 MaYucong6/dsh-batch-uninstall

DeepSeek Harness
MaYucong614 天前有提交已提供中文文档扫描:含敏感能力

一个类似 Geek 风格的 DeepSeek Harness 批量卸载插件工具,支持终端交互勾选与进度条。

32.1/100
综合分
3
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/22 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add MaYucong6/dsh-batch-uninstall
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
dsh 原生插件 · other
装得上吗
本站已在 dsh 0.2.1-rc.5 下真实安装成功
非静态推断
L5 · 运行时冒烟等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 14 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件发起外部网络请求
查看扫描证据(共 8 处,展示前 7 条)
  • 读取本地文件
    lib/index.js:92
    const pkg = JSON.parse(readFileSync(join(PKG_ROOT, 'package.json'), 'utf8'));
  • 发起网络请求
    client/client.js:195
    fetch(API_LIST)
  • 发起网络请求
    client/client.js:234
    fetch(API_REMOVE, {
  • 发起网络请求
    client/client.js:365
    fetch(API_WORKSPACES)
  • 发起网络请求
    client/client.js:387
    fetch(API_WORKSPACES_DELETE, {
  • 发起网络请求
    client/client.js:481
    fetch(API_TRASH)
  • 发起网络请求
    client/client.js:503
    fetch(API_TRASH_RESTORE, {
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

README

由 DeepSeek 最新模型翻译生成
dsh-batch-uninstall Geek 风格的 DeepSeek Harness (DSH) 批量清理工具箱。 一个规范的 DSH 插件(Cordis bundle + client 设置页)。安装后打开 DSH 设置 → 批量卸载,三个标签页分别处理插件、工作区与回收站。 Geek Uninstaller · v1.3.0 [插件] [工作区] [回收站] ──────────────────────────────────────────────────────── 共 15 可卸载 5 锁定 10 已勾选 0 [刷新] [全选] [全不选] [卸载选中项] 🔒 @deepseek-ai/dsh-base 0.2.1-rc.2 🔒 核心 🔒 @deepseek-ai/dsh-web-app 0.2.1-rc.2 🔒 核心 ☐ dsh-our-free-model 2.3.0 ○ 低 ☐ dshmarket 1.66.35 ○ 低 ☐ dsh-cost-meter 1.8.31 ○ 低 ☐ dsh-batch-uninstall 1.3.0 ○ 低 功能 插件标签页 - 多选批量卸载 — 逐个勾选、全选、全不选,一次卸载任意多个 - 核心保护 — @deepseek-ai/dsh- 等系统 bundle 锁定置灰,无法勾选
展开完整文档(README 剩余 1 节)
dsh-batch-uninstall

Geek 风格的 DeepSeek Harness (DSH) 批量清理工具箱。

一个规范的 DSH 插件(Cordis bundle + client 设置页)。安装后打开 DSH 设置 → 批量卸载,三个标签页分别处理插件、工作区与回收站。

Geek Uninstaller · v1.3.0
[插件] [工作区] [回收站]
────────────────────────────────────────────────────────
共 15 可卸载 5 锁定 10 已勾选 0
[刷新] [全选] [全不选] [卸载选中项]

🔒 @deepseek-ai/dsh-base 0.2.1-rc.2 🔒 核心 🔒 @deepseek-ai/dsh-web-app 0.2.1-rc.2 🔒 核心 ☐ dsh-our-free-model 2.3.0 ○ 低 ☐ dshmarket 1.66.35 ○ 低 ☐ dsh-cost-meter 1.8.31 ○ 低 ☐ dsh-batch-uninstall 1.3.0 ○ 低

功能

插件标签页

- 多选批量卸载 — 逐个勾选、全选、全不选,一次卸载任意多个
- 核心保护 — @deepseek-ai/dsh- 等系统 bundle 锁定置灰,无法勾选
- 风险分级 — 高 / 中 / 低三档提示

工作区标签页

- 批量删除工作区 — 勾选多个 Workspace 一次性移除
- 软删除 — 只取消注册并把会话目录移入回收站,数据不丢失
- 显示每个工作区的路径与会话数

回收站标签页

- 可恢复 — 把移入回收站的会话目录还原回 ~/.dsh/sessions/
- 一键清空 — 永久删除回收站全部内容(带二次确认)

通用

- 内置设置页 — 不需浏览器地址、不需 Python、不需任何外部文件
- 二次确认 — 红色确认框列出全部目标,防误删
- 实时进度 — 进度条 + 逐条成功/失败日志
- 主题自适应 — 跟随 DSH 浅色 / 深色主题
- 中英双语 — 跟随 DSH 语言设置

安装

npm(推荐)
dsh plugin --profile <你的 profile> add dsh-batch-uninstall

或 GitHub
dsh plugin --profile <你的 profile> add github:MaYucong6/dsh-batch-uninstall

或在 DSH 插件市场搜索 dsh-batch-uninstall。

安装后重启 DSH(或刷新页面),设置左侧会出现 「批量卸载」 入口。

架构

┌──────────────────────────────────────────────────────┐
│ client/client.js (Client 半 · 设置页 UI) │ │ Shell: [插件] [工作区] [回收站] 三个 tab │ │ PluginsPanel · WorkspacesPanel · TrashPanel │ └───────────────┬──────────────────────────────────────┘ │ HTTP (localhost) ▼ ┌──────────────────────────────────────────────────────┐ │ lib/index.js (Host 半 · HTTP API) │ │ GET /dsh-batch-uninstall/bundles.json │ │ POST /dsh-batch-uninstall/remove │ │ GET /dsh-batch-uninstall/workspaces.json │ │ POST /dsh-batch-uninstall/workspaces/delete │ │ GET /dsh-batch-uninstall/trash.json │ │ POST /dsh-batch-uninstall/trash/restore │ │ POST /dsh-batch-uninstall/trash/empty │ └───────────────┬──────────────────────────────────────┘ │ ┌───────┴────────┐ ▼ ▼ ┌──────────────────┐ ┌────────────────────────────┐ │ pluginManager │ │ workspaceRegistry + fs │ │ listBundles() │ │ list() / delete() + 目录移动│ │ removeBundle() │ │ ~/.dsh/sessions ↔ .trash │ └──────────────────┘ └────────────────────────────┘ Host 半走 DSH 自己的服务(pluginManager、workspaceRegistry),与内置管理器同一套护栏;Client 半只注入 slots(真实服务),样式内联且不依赖主题变量名,apply() 全程异常隔离,插件失效也绝不会影响 DSH 启动。

回收站是怎么工作的

删除工作区时执行两步:

1. workspaceRegistry.delete(id) — DSH 移除该工作区的注册(侧边栏里消失)
2. 把 ~/.dsh/sessions/<编码后的路径>/ 整个移到 ~/.dsh/.trash/<时间戳>__<编码>/

只移动,不删除 —— 所以回收站里能原样恢复。点「一键清空回收站」才真正 rm -rf。

会话目录名由工作区路径编码而来:分隔符 : \ / 折叠为 -,非 ASCII 字符转为 ~XXXX,整体包裹为 --…--。

核心保护

以下 Bundle 无法被卸载(Host 与 Client 双层锁定):

| 保护对象 | 说明 |
| @deepseek-ai/dsh-base | 核心基础层 |
| @deepseek-ai/dsh-web-app | Web 应用层 |
| @deepseek-ai/dsh-sdk- | SDK 配置 |
| @deepseek-ai/dsh-headless / acp-app | 其他官方 profile |
| 所有 removable: false 的 Bundle | 系统声明不可移除 |

文件说明

| 文件 | 说明 |
| lib/index.js | Host 半:HTTP API(插件 / 工作区 / 回收站) |
| client/client.js | Client 半:DSH 设置页三 tab 界面 |
| cordis.patch.yml | Bundle 挂载补丁 |
| package.json | npm 包清单(含 dsh.bundle + dsh.client) |
| dsh_geek_uninstall.py | 可选:独立的 Python TUI 客户端(走同一套 HTTP API) |
| dsh_plugins.json | 示例数据 |

Python TUI 是可选的命令行替代界面,需要 pip install rich:

python dsh_geek_uninstall.py

版本历史

| 版本 | 变更 |
| v1.3.0 | 新增工作区批量删除(软删除到回收站)与回收站管理,设置页改为三 tab |
| v1.2.3 | 用 slots.inject 等待 settings.section 就绪再注册 |
| v1.2.2 | 版本号对齐发布 |
| v1.2.1 | 修复文字在浅色主题下隐形 |
| v1.2.0 | 内置 DSH 设置页 |
| v1.0.0 | 规范 DSH 插件形态 |

开发

node --check lib/index.js
node --check client/client.js

License

MIT
预览分享卡片长什么样 ↓MaYucong6/dsh-batch-uninstall
分享 · DeepSeek Harness Hub
MaYucong6/dsh-batch-uninstall

一个类似 Geek 风格的 DeepSeek Harness 批量卸载插件工具,支持终端交互勾选与进度条。

这是你的仓库?认领条目

回到顶部