前言¶
在 DeepSeek Harness(DSH)里让智能体帮你看磁盘占用,常见做法是开放 shell 或宽泛的文件工具。模型一旦误判路径,就可能直接动到系统或用户数据。若你希望在 Windows 上把「扫描、调查、清理准备」交给专用核心、把真正会改盘的操作锁在 DSH 自带的审批流里,社区插件 Pare-DSH 走的是另一条路:只读调查工具默认放行,敏感读取与清理执行必须经你点选,文件进隔离区而不是当场删除。
这是什么¶
Pare-DSH(npm 包名 @drag0nm/pare-dsh,当前版本 0.3.1)由维护者 DRAG0NM 发布,分类为 admin-security,MIT 许可证。它把独立项目 Pare 的 AI 磁盘调查能力接入 DSH:扫描、调查和清理逻辑由单独的 Pare core 完成;插件负责启动 core、向 DSH 注册工具,并在需要时请求审批。在 DSH 自己的审批提示里通过之前,磁盘不会发生变更;清理时文件被移入可逆的隔离区,而非直接删除。
运行环境限定为 Windows;依赖 DeepSeek Harness 0.2.1-rc.2(Cordis ~4.0.5)、Node.js 22.19 及以上。Harness 仍处于开发者预览阶段,接口可能不兼容变更;插件对 peer 版本做了固定,升级 DSH 前宜重新验证。
核心功能¶
工具分层¶
插件会拉起长期运行的 pare serve 进程(协议 pare.serve/1,stdio 上的行分隔 JSON)。扫描索引保存在该进程中,因此在使用各类调查工具前应先调用 pare_scan。
| 类别 | 工具 | 是否需要审批 |
|---|---|---|
| 扫描 | pare_scan:只读扫描盘符或文件夹 |
否 |
| 只读调查 | pare_scan_overview、pare_list_dir、pare_find_large_files、pare_same_size_files、pare_breakdown、pare_file_head、pare_read_text、pare_path_info、pare_installed_programs、pare_running_processes、pare_run_diagnostic 等(启动时向 core 的 hello 拉取列表,随 core 版本变化) |
否 |
| 敏感读取 | pare_read_sensitive:读取 Pare 标记为敏感的文件(密钥、.env、浏览器登录数据、凭据存储等) |
每次均需 |
| 清理准备与执行 | pare_prepare_cleanup:登记待隔离路径与支持的动作模板,返回 cleanup id,此时尚未改盘 |
否 |
pare_execute:按 id 执行已准备的清理 |
是 | |
| 隔离区管理 | pare_list_quarantine:列出本地盘上的隔离批次及内容 |
否 |
pare_undo:将某批次还原到原路径,若原路径已有文件则不会覆盖 |
是 | |
pare_purge:永久删除某隔离批次以释放空间,不可撤销 |
是 |
插件不提供原始 shell 命令;DSH 自带的 bash 工具仍走各自的审批策略。
审批与安全¶
插件监听 DSH 的 tools/pre-execute,对 pare_execute、pare_undo、pare_purge、pare_read_sensitive 返回 {kind: 'ask'},由 DSH 审批服务向你提问。仅「允许一次」(allowed-once)才会放行;拒绝、取消或无人应答则拒绝调用(fail closed),每次问询会记入会话审计日志。
pare_execute 的审批文案来自插件保存的计划,列出确切路径与模板命令,而非模型自由生成的描述。未知、过期或在重新扫描前的 cleanup id 会直接拒绝且不弹窗;同一 cleanup id 最多执行一次。取消进行中的调用会停止 core 进程,下次调用需重新启动 core,并须再次运行 pare_scan。
Pare core 另有独立校验:受保护位置一律拒绝;每项带 BuildSelected 产生的证据;移动前再次核对文件身份、是否变更、是否被占用;动作模板需校验且预览摘要须匹配,预览 30 分钟后过期;执行开始前预览标记为已使用;undo 与 purge 仅接受 Pare 隔离区内的 manifest。
调查类工具会把路径与文件名返回给模型(及其提供商);敏感文件内容每次读取都需你单独批准。
固定 core 与完整性¶
package.json 中的 pareCore 为本插件版本固定 core:版本 0.4.0,下载地址为 DRAG0NM/Pare 的 v0.4.0 release 资产 pare-0.4.0-win-x64.exe,SHA-256 为 23a09ed98b24642e80c1ee83d8a7464e6fa0df2ac1a1d6e078cd5882672001fb。
未设置 parePath 与 PARE_CORE_PATH 时,插件使用 %LOCALAPPDATA%\Pare\core\pare-0.4.0.exe(按用户存放,重装插件不丢)。缺失时从固定 URL 下载:优先 System32 的 curl.exe(尊重 HTTPS_PROXY),失败则用 PowerShell Invoke-WebRequest(使用 Windows 系统代理)。下载后校验 SHA-256,不匹配则删除。每次启动及每次启动 core 前再次校验哈希;文件被改动则拒绝运行且不会自动覆盖,错误信息会提示删除后重新下载。hello 报告的版本须与固定版本一致,否则拒绝并注册调查工具。
开发时可设置插件选项 parePath 或环境变量 PARE_CORE_PATH 指向自编译的 pare.exe,此时不做哈希校验,仅检查协议名。离线环境可将符合同一 SHA-256 的文件放到上述路径,或设置 parePath。单次调用默认超时 timeoutMs 为 600000 ms。
安装与启用¶
在 PowerShell 中执行官方安装命令:
dsh plugin --profile web add @drag0nm/pare-dsh
安装后重启对应 profile(例如 dsh web)。无需额外配置。首次启动时插件会下载固定的 Pare core 并完成校验(需能访问 GitHub)。
从源码构建时,在仓库目录执行 pnpm install、pnpm check 后:
dsh plugin --profile web add .
典型用法¶
在 DSH 会话中,由智能体按业务描述驱动工具链,大致顺序如下:
- 调用
pare_scan对目标盘符或文件夹做只读扫描,索引留在 core 进程中。 - 使用
pare_scan_overview、pare_find_large_files、pare_breakdown等只读工具缩小可疑范围;若需查看 Pare 标记的敏感文件,每次调用pare_read_sensitive都会在 DSH 中单独征求批准。 - 调用
pare_prepare_cleanup登记拟隔离路径与动作模板,获得 cleanup id;此时磁盘仍未改动。 - 调用
pare_execute并 id;在 DSH 审批界面核对列出的路径与命令后确认,文件进入隔离区。 - 若需回滚,使用
pare_list_quarantine查看批次,经批准调用pare_undo;确认不再需要时再经批准调用pare_purge永久删除以释放空间。
README 中的演示 GIF 记录了在演示文件夹上完成扫描、调查、审批与清理报告的真实 DSH 会话流程,可作为行为参考。
适用场景与注意¶
适合在 Windows 工作站上,希望通过 DSH 智能体对话式排查磁盘浪费、并在改盘前看到明确文件列表与审批的场景。插件以当前 DSH 进程权限运行,安装前宜自行查看 GitHub 仓库 源码与 MIT 许可证;社区目录 SkillHub 插件页 与 DeepSeek / 幻方无官方从属关系,属于 DSH「一切皆插件」生态中的第三方条目。
隐私上,调查工具会向模型暴露路径与文件名;敏感内容读取始终受审批约束。仅支持 Windows,首次使用需网络以下载固定 core。
结尾¶
Pare-DSH 把 Pare 的只读磁盘调查与隔离式清理接进 DSH,用固定哈希的 core 与 DSH 原生审批把「看盘」和「动盘」分开。若你要在 Harness 里做可控的磁盘治理,可从目录页或仓库 README 开始安装与试用。
- 目录页:https://www.skillhub.cn/plugins/DRAG0NM/Pare-DSH
- GitHub:https://github.com/DRAG0NM/Pare-DSH