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

环境管家 guo6x/dsh-housekeeper

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

盘点工具链并安全清理缓存,随时改机器规则

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

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

自动兼容检查有告警:未发布到 npm registry,仅可从源码安装。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add guo6x/dsh-housekeeper
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

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

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

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查⚠ 装前注意

未发布到 npm registry,仅可从源码安装

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✗npm 包dsh-housekeeper(未发布到 npm,仅可源码安装)
✓Node 引擎要求 >=22 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/12 01:48:22

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

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

可执行外部命令读写/删除本地文件发起外部网络请求
查看扫描证据(共 29 处,展示前 20 条)
  • 读取本地文件
    lib/index.js:41
    const parsed = JSON.parse(await readFile(configFilePath(), "utf8"));
  • 写入本地文件
    lib/index.js:59
    await mkdir(directory, { recursive: true });
  • 写入本地文件
    lib/index.js:62
    await writeFile(temporary, content, "utf8");
  • 写入本地文件
    lib/index.js:63
    await rename(temporary, path);
  • 删除本地文件
    lib/index.js:65
    await rm(temporary, { force: true }).catch(() => {
  • 执行外部命令来自配置/变量
    lib/index.js:149
    const out = execFileSync(where, [command], { stdio: ["ignore", "pipe", "ignore"], timeout: 4e3, windowsHide: true });
  • 执行外部命令固定命令
    lib/index.js:166
    const out = execFileSync("powershell.exe", [
  • 执行外部命令来自配置/变量
    lib/index.js:183
    const out = execFileSync(path, versionArg, {
  • 读取本地文件
    lib/index.js:200
    let path = tool.candidates.find((candidate) => existsSync(candidate));
  • 读取本地文件
    lib/index.js:216
    entries = await readdir(dir, { withFileTypes: true });
  • 读取本地文件
    lib/index.js:231
    bytes += (await stat(full)).size;
  • 读取本地文件
    lib/index.js:244
    const info = await lstat(path);
  • 读取本地文件
    lib/index.js:254
    mtime = (await stat(path)).mtimeMs;
  • 删除本地文件递归
    lib/index.js:314
    await rm(path, { recursive: true, force: true });
  • 发起网络请求
    lib/client.js:81
    const res = await fetch("/housekeeper/state", { cache: "no-store" });
  • 发起网络请求
    lib/client.js:127
    const res = await fetch(`/housekeeper/preview?path=${encodeURIComponent(path)}`, { cache: "no-store" });
  • 发起网络请求
    lib/client.js:182
    const res = await fetch(isConfirming ? "/housekeeper/clean" : "/housekeeper/clean/plan", {
  • 发起网络请求
    lib/client.js:285
    const res = await fetch("/housekeeper/rules", { cache: "no-store" });
  • 发起网络请求
    lib/client.js:302
    const res = await fetch("/housekeeper/rules", {
  • 发起网络请求
    lib/client.js:325
    const res = await fetch("/housekeeper/rules/restore", { method: "POST" });
扫描于 2026/11/2(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

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

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

功能亮点

  • 盘点工具链清单
  • 安全清理缓存
  • 编辑机器规则

DeepSeek Harness 环境管家:工具链清单、安全缓存清理,以及 Web GUI 设置里的机器规则编辑器。

README

由 DeepSeek 最新模型翻译生成
🧹 dsh-housekeeper — 环境管家 English · DeepSeek Harness 插件 管住 agent 的脏手:工具链台账、两阶段缓存清理、机器规则(AGENTS.md)随时改,全在 Web GUI 设置面板里完成。零运行时依赖,一条命令安装。 - 📋 工具链台账 —— 自动探测 node/pnpm/git/gh/ffmpeg/Edge/Chrome 的位置与版本,装了什么一目了然 - 🗑️ 诚实缓存清理 —— 扫描 agent 留下的 .tmp 与缓存目录:大小/文件数/修改时间、4000 文件截断标记、30 天未动高亮、点行展开内容预览;先生成计划,再确认删除 - 🛡️ 白名单保护 —— 只允许删「项目 .tmp」与「缓存根直接子目录」;.. 路径逃逸、符号链接逃逸、系统目录一律拒绝,删除前先 realpath 校验 - 📝 机器规则编辑 + 保命 —— 直接读写 ~/.dsh/AGENTS.md,每次保存自动备份上一版,一键恢复;保存即实时生效 - 🌍 可配置 —— 项目/缓存扫描根目录按平台默认(Windows: D:\github / D:\environment\cache),面板里可改,环境变量可覆盖
展开完整文档(README 剩余 1 节)
🧹 dsh-housekeeper — 环境管家

English · DeepSeek Harness 插件

管住 agent 的脏手:工具链台账、两阶段缓存清理、机器规则(AGENTS.md)随时改,全在 Web GUI 设置面板里完成。零运行时依赖,一条命令安装。

- 📋 工具链台账 —— 自动探测 node/pnpm/git/gh/ffmpeg/Edge/Chrome 的位置与版本,装了什么一目了然
- 🗑️ 诚实缓存清理 —— 扫描 agent 留下的 .tmp 与缓存目录:大小/文件数/修改时间、4000 文件截断标记、30 天未动高亮、点行展开内容预览;先生成计划,再确认删除
- 🛡️ 白名单保护 —— 只允许删「项目 .tmp」与「缓存根直接子目录」;.. 路径逃逸、符号链接逃逸、系统目录一律拒绝,删除前先 realpath 校验
- 📝 机器规则编辑 + 保命 —— 直接读写 ~/.dsh/AGENTS.md,每次保存自动备份上一版,一键恢复;保存即实时生效
- 🌍 可配置 —— 项目/缓存扫描根目录按平台默认(Windows: D:\github / D:\environment\cache),面板里可改,环境变量可覆盖
- 🤖 agent 工具 —— housekeeper_report(台账+磁盘占用报告)、housekeeper_plan(只审阅)与 housekeeper_clean(一次性 token 执行)

安装——复制、粘贴、验收

从 GitHub 直装——当前唯一受支持的发布渠道:
dsh plugin --profile web add github:guo6x/dsh-housekeeper

如果 dsh web 正在运行,重启它,再打开 设置 → 插件 → 环境管家。看到“工具链台账”区块,就说明安装完成。

要求:DSH web profile、Node ≥ 22。插件不需要账号、API key 或额外服务。

从本地 checkout 开发?在仓库目录执行 dsh plugin --profile web add .。仓库已提交 lib/ 构建产物,所以 GitHub 安装不会跑构建脚本。

60 秒完成一次安全验收

这段流程不会删除文件,也不会写入机器规则。

1. 打开 设置 → 插件 → 环境管家。
2. 查看自动发现的工具链与缓存候选项;点一行先预览内容。
3. 先不要勾选任何目录。这样已经在不改动机器的前提下验收了台账和候选列表。

想用对话完成同样的无副作用验收,直接粘贴:

运行 housekeeper_report,总结探测到的工具链和最大的缓存候选项。不要生成清理计划、删除文件或修改机器规则。

真的准备清理时,再只勾选你认识的临时目录,点 生成清理计划。先阅读批准/拒绝的路径;在你明确使用该计划的一次性确认动作前,删除仍然不可能发生。

agent 也走同一条受审阅的路径:先要求 housekeeper_report,查看 housekeeper_plan,再决定是否把返回 token 交给 housekeeper_clean。

如果面板没有出现

- 确认插件安装在 web profile:dsh plugin --profile web list dsh-housekeeper。
- 安装后必须重启 dsh web;仅刷新浏览器不会加载新的宿主代码。
- 确认 Node 为 22 或更新版本。台账不依赖 Edge、Chrome 或云端凭据。

安全模型

- 全部路由仅接受回环地址(非 127.0.0.1/::1 一律 403)
- 清理白名单(满足全部条件才允许删除):
- 路径位于 \\ .tmp\ 之下,或 \ 的直接子目录
- 规范化后不越过白名单根(拒绝 ..)
- realpath 后仍落在白名单根内(拒绝符号链接逃逸)
- 白名单根自身与仓库目录自身不可删
- 两阶段确认:先生成仅保存在内存中的清理计划;确认 token 5 分钟后失效、只能用一次,执行时再次走白名单与 realpath 校验
- 规则文件只读写 $DSH_HOME/AGENTS.md 单文件,路径不可参数化
- 无遥测、无网络外呼

原理

GUI 设置页 ──fetch──▶ /housekeeper/state|clean/plan→clean|rules(仅回环)──▶ 宿主插件 ├─ 探测:候选路径 + PATH 查找 + 版本 ├─ 扫描:按规则走查目录,统计大小(4000 文件上限) ├─ 清理:白名单 + realpath 生成计划 → 一次性确认 token → 再校验后 rm └─ 规则:读写 $DSH_HOME/AGENTS.md(64KB 上限)

开发

pnpm install
pnpm test # 构建、安全回归套件、发布包内容检查

MIT 协议。问题与想法请提 issue。
预览分享卡片长什么样 ↓guo6x/dsh-housekeeper
分享 · DeepSeek Harness Hub
guo6x/dsh-housekeeper

盘点工具链并安全清理缓存,随时改机器规则

回到顶部