前言¶
在 DeepSeek Harness(DSH)里让 Agent 查磁盘空间,常见做法是一层层跑 dir、Get-ChildItem 或临时拼脚本。扫描耗时长、占用 token,清理步骤也不易在对话里完整留痕。磁盘哨兵(disk-sentinel)把扫描、报告、预估、用户确认和清理收成固定工具与 Web 面板,扫描走宿主 RPC,不依赖 LLM 逐目录试探。
下面介绍社区维护者 wee-b 发布的 @dsh-plugin/disk-sentinel:面向 Windows、DSH web profile 的磁盘分析与安全清理插件。项目为社区非官方插件,与 DeepSeek AI 无隶属关系;目录页见 SkillHub,源码见 GitHub(MIT 许可证,当前 package 版本 0.1.1)。
这是什么¶
安装后,DSH Web UI 侧边栏会出现「磁盘哨兵」入口。插件提供 WinDirStat 风格的目录扫描、预定义垃圾类别清理、开发环境目录识别与迁移,以及软件占用排名、扫描报告引用、两次扫描之间的历史差量等能力。设计目标是:可视化操作可审计,Agent 侧有稳定工具名(disk_scan、clean_disk、dev_env_migrate),而不是每次现写 shell。
核心功能¶
工具与面板¶
| 能力 | 说明 |
|---|---|
disk_scan |
目录扫描,返回目录树、Top 大目录、Top 大文件和耗时 |
clean_disk |
预定义垃圾类别,支持 list、estimate、clean 三段式 |
dev_env_migrate |
基于最近一次开发环境扫描生成迁移计划,用户确认后执行 |
| 磁盘分析 | Web 中选盘、后台扫描、取消任务、查看容量与占用 |
| 软件占用排名 | 从扫描结果识别常见安装目录、用户数据与游戏库,Top 10,支持跨盘聚合 |
| 扫描报告 | 保存报告,以 @文件 引用发给当前会话供 AI 分析 |
| 历史差量 | 对比两次扫描报告,看新增、消失、增长与缩小 |
| 开发环境分析 | 扫描路径型环境变量与常见开发缓存,给出安全迁移入口 |
全盘扫描通过 /disk-sentinel RPC 直连宿主,不经过 LLM,也无需在提示词里指定底层扫描命令。
安全清理流程¶
清理固定为:
list -> estimate -> 用户确认 -> clean
estimate 只预估空间,不删文件;clean 才执行不可逆删除。插件会保护磁盘哨兵工作区,避免误删扫描报告等 DSH 运行数据。
预定义清理类别包括(节选):windows_temp、windows_prefetch、windows_update_cache、recycle_bin、npm_cache、pnpm_store、yarn_cache、pip_cache、thumbnail_cache、edge_cache、chrome_cache、delivery_optimization、dns_cache 等;完整 ID 与路径说明见仓库 README。
开发环境迁移¶
迁移前会校验扫描来源、系统保护目录、源目录、目标盘和配置状态。目标须在其他磁盘,且可用空间至少为源目录体积的 105%。空目标可直接用;目标已有内容需二次确认,原内容先整体备份再替换。执行顺序为复制并校验、再改配置;成功则原目录改名保留为备份,失败则尝试恢复。
支持手动迁移的工具包括 Maven 本地仓库、npm/pnpm/Yarn 缓存、Go 工作区、NuGet、Gradle、Cargo、Rustup、Android 用户目录等;配置型目录改对应配置文件,环境变量型目录改 Windows 用户环境变量,不修改系统 Path。
安装与启用¶
前置:Windows 系统,已安装 DeepSeek Harness(dsh)。从 GitHub 安装时仓库已含构建后的浏览器端文件,无需额外 pnpm 或构建。
dsh plugin --profile web add git+https://github.com/wee-b/disk-sentinel.git
dsh web
启动后,侧边栏设置区域附近应出现 磁盘哨兵 入口。
更新时先移除再重新添加:
dsh plugin --profile web remove @dsh-plugin/disk-sentinel
dsh plugin --profile web add git+https://github.com/wee-b/disk-sentinel.git
dsh web
卸载:
dsh plugin --profile web remove @dsh-plugin/disk-sentinel
卸载不会自动删除本地扫描报告;若不再需要,可手动删除 %TEMP%\磁盘哨兵。
典型用法¶
Web 磁盘分析¶
- 选择目标磁盘或整个硬盘。
- 点击开始分析;进行中可看到已扫描目录数、当前路径和耗时,并可取消。
- 查看容量、Top 目录与 Top 文件,或选两份历史报告生成差量。
- 点击「让 AI 分析」,当前会话会收到扫描报告的
@文件引用。
单盘扫描时软件排名只反映该盘;跨盘合计需选「整个硬盘」。
对话里让 Agent 清理¶
示例意图(README 原文风格):
帮我分析一下 C 盘空间,并在确认后清理可安全删除的缓存。
推荐 Agent 先调用 clean_disk 的 list 和 estimate,用户确认后再 clean。
开发环境分析¶
进入页面后会扫描路径型开发环境变量及常见开发缓存;24 小时内默认优先使用工作区缓存。「重新扫描开发环境」会跳过缓存。无手动迁移按钮的目录可交给 AI,但仍需 dev_env_migrate 生成计划并经用户确认后执行。迁移完成后应重启终端与 IDE,确认工具指向新目录。
配置项¶
可在插件配置中调整(默认值来自 README):
| 配置项 | 默认值 | 说明 |
|---|---|---|
scanTimeoutMs |
300000 | 磁盘扫描超时(5 分钟) |
cleanTimeoutMs |
120000 | 清理超时(2 分钟) |
migrationTimeoutMs |
1800000 | 开发环境迁移超时(30 分钟) |
maxDepth |
8 | 工具默认递归深度 |
topDirsCount |
30 | Top 目录数 |
topFilesCount |
50 | Top 文件数 |
treeRenderMaxNodes |
200 | 树形文本最大节点数 |
适用场景与注意¶
适合谁: 在 Windows 上用 DSH Web profile 做本地开发、需要定期看 C 盘占用、清理缓存或把 Maven/npm 等迁到其他盘的用户。
兼容性(README 声明): 仅 Windows;DSH profile 为 web。文档记载曾验证 DSH 0.1.5-rc.2、0.2.0-rc.2(后者验证了装载与 Web 启动,扫描/清理/迁移尚未逐项回归),Node.js 24.21.0。插件自身不连外部服务;无遥测。其他 0.2.x 未声明兼容。
权限与风险: 插件以当前 dsh 进程权限运行;安装前建议阅读源码与 MIT 许可证。扫描会读所选盘符的目录与大小;无法访问的路径会跳过且不自动提权。报告与差量写在 %TEMP%\磁盘哨兵,%TEMP% 可能被系统或其它工具清空,重要报告请另行保存。只有 clean_disk 的 clean 会删数据;清理与迁移前请看清预估与计划,重要数据应另有备份。普通磁盘扫描不经过 LLM;仅在你点击 AI 分析或主动引用报告时,路径与统计会进入 DSH 配置的模型提供方。
已知限制: 软件占用排名基于目录归属估算,不等同于 Windows「已安装的应用」;共享库、自定义安装路径等可能导致偏差。受保护或占用的路径可能无法扫描或清理。
结尾¶
disk-sentinel 把 Windows 磁盘扫描、差量对比、预定义安全清理和开发环境迁移放进 DSH 的稳定工具与 Web 面板,减少 Agent 临时扫盘带来的时间与 token 成本,并让确认步骤可重复、可审计。
- 目录页:https://www.skillhub.cn/plugins/wee-b/disk-sentinel
- GitHub:https://github.com/wee-b/disk-sentinel