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

工作区默认目录 dragan2023/dsh-workspace-default-dir

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

指定目录选择器默认打开的初始路径

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

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

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

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:待复验
是什么[目录]—
dsh 原生插件 · market
暂无时间戳·判据 →
装得上吗[实装验证]—
曾在 dsh 0.2.0-rc.2 下真实安装成功,但当前 dsh 已更新至 0.2.1-rc.5,本站尚未在新版下复验
L4 · 真实安装等级说明 →
数据截至 2026/10/07·判据 →
安全吗[自动扫描]—
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
数据截至 2026/11/05·判据 →
还在维护吗[仓库]—
更新放缓:最近一次提交在 77 天前
暂无时间戳·判据 →
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成

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

验证判据与等级说明 →

可信度证据

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

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

可执行外部命令读写/删除本地文件发起外部网络请求
查看扫描证据(共 35 处,展示前 34 条)
  • 读取本地文件
    lib/index.js:33
    return existsSync(join(root, "package.json")) ? root : null;
  • 执行外部命令来自配置/变量
    lib/index.js:46
    const line = (execFileSync(process.platform === "win32" ? "npm.cmd" : "npm", ["root", "-g"], { encoding: "utf8" }) || "").trim().split(/ ? /).pop()?
  • 读取本地文件
    lib/index.js:68
    if (!fromArgv || !existsSync(pickerFilesOf(fromArgv).native) || !existsSync(pickerFilesOf(fromArgv).browse)) for (const globalRoot of candidateGlobalR
  • 读取本地文件
    lib/index.js:71
    if (existsSync(files.native)) found.native.push(files.native);
  • 读取本地文件
    lib/index.js:72
    if (existsSync(files.browse)) found.browse.push(files.browse);
  • 读取本地文件
    lib/index.js:95
    src = readFileSync(file, "utf8");
  • 写入本地文件
    lib/index.js:118
    writeFileSync(file, src, "utf8");
  • 执行外部命令固定命令
    lib/index.js:150
    const out = execFileSync("reg", [
  • 执行外部命令固定命令
    lib/index.js:165
    if (process.platform === "win32") execFileSync("setx", ["DSH_PICKER_INITIAL_DIR", value ?? ""], {
  • 读取本地文件
    lib/index.js:281
    return existsSync(value) && statSync(value).isDirectory();
  • 发起网络请求
    lib/client.js:67
    return (await readJson(await fetch(API, { method: "GET" }))).initialDir ?? "";
  • 发起网络请求
    lib/client.js:70
    await readJson(await fetch(API, {
  • 读取本地文件
    bin/dsh-workspace-default-dir.mjs:34
    if (!existsSync(target)) fail("directory does not exist: " + target);
  • 读取本地文件
    bin/dsh-workspace-default-dir.mjs:35
    if (!statSync(target).isDirectory()) fail("not a directory: " + target);
  • 读取本地文件
    lib/patches.js:79
    return existsSync(join(root, "package.json")) ? root : null;
  • 执行外部命令来自配置/变量
    lib/patches.js:93
    const out = execFileSync(process.platform === "win32" ? "npm.cmd" : "npm", ["root", "-g"], { encoding: "utf8" });
  • 读取本地文件
    lib/patches.js:119
    const needsProbe = !fromArgv || !existsSync(pickerFilesOf(fromArgv).native) || !existsSync(pickerFilesOf(fromArgv).browse);
  • 读取本地文件
    lib/patches.js:125
    if (existsSync(files.native)) found.native.push(files.native);
  • 读取本地文件
    lib/patches.js:126
    if (existsSync(files.browse)) found.browse.push(files.browse);
  • 读取本地文件
    lib/patches.js:149
    src = readFileSync(file, "utf8");
  • 写入本地文件
    lib/patches.js:169
    writeFileSync(file, src, "utf8");
  • 执行外部命令固定命令
    lib/patches.js:193
    const out = execFileSync("reg", ["query", "HKCU\\Environment", "/v", "DSH_PICKER_INITIAL_DIR"], { encoding: "utf8", windowsHide: true });
  • 执行外部命令固定命令
    lib/patches.js:206
    execFileSync("setx", ["DSH_PICKER_INITIAL_DIR", value ?? ""], { stdio: "ignore", windowsHide: true });
  • 读取本地文件
    src/index.ts:122
    return existsSync(value) && statSync(value).isDirectory()
  • 读取本地文件
    src/index.ts:122
    return existsSync(value) && statSync(value).isDirectory()
  • 读取本地文件
    src/patches.ts:80
    return existsSync(join(root, "package.json")) ? root : null;
  • 执行外部命令来自配置/变量
    src/patches.ts:94
    const out = execFileSync(process.platform === "win32" ? "npm.cmd" : "npm", ["root", "-g"], { encoding: "utf8" });
  • 读取本地文件
    src/patches.ts:120
    const needsProbe = !fromArgv || !existsSync(pickerFilesOf(fromArgv).native) || !existsSync(pickerFilesOf(fromArgv).browse);
  • 读取本地文件
    src/patches.ts:126
    if (existsSync(files.native)) found.native.push(files.native);
  • 读取本地文件
    src/patches.ts:127
    if (existsSync(files.browse)) found.browse.push(files.browse);
  • 读取本地文件
    src/patches.ts:150
    src = readFileSync(file, "utf8");
  • 写入本地文件
    src/patches.ts:170
    writeFileSync(file, src, "utf8");
  • 执行外部命令固定命令
    src/patches.ts:194
    const out = execFileSync("reg", ["query", "HKCU\\Environment", "/v", "DSH_PICKER_INITIAL_DIR"], { encoding: "utf8", windowsHide: true });
  • 执行外部命令固定命令
    src/patches.ts:207
    execFileSync("setx", ["DSH_PICKER_INITIAL_DIR", value ?? ""], { stdio: "ignore", windowsHide: true });
扫描于 2026/11/5(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

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

社区实装还没有人打卡 · 装过的第一个就是你
依赖的 DSH / Cordis 模块
@deepseek-ai/dsh-client-locale@deepseek-ai/dsh-client-runtime@deepseek-ai/dsh-client-ui-settings@deepseek-ai/dsh-client-ui-slots@deepseek-ai/dsh-host-webserver@deepseek-ai/dsh-settings
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 设置选择器默认初始目录
  • 自愈补丁写入
  • 命令行写入环境变量

设置 dsh 工作区目录选择器(原生 + 浏览后端)的默认初始目录,通过自愈补丁和命令行写入 DSH_PICKER_INITIAL_DIR。

README

由 DeepSeek 最新模型翻译生成
dsh-workspace-default-dir English · · 日本語 · 한국어 · Français · Deutsch · Español · Português · Русский 设置卡片让 dsh(DeepSeek Harness)的「添加工作区 → 选择工作区目录」对话框默认打开在你指定的目录(例如 E:\python_project),而不是 Windows 用户主目录。 安装 三种方式任选其一,然后重启 dsh web: 1) npm 包(发布到 npm 后可用) dsh plugin --profile web add dsh-workspace-default-dir 2) GitHub 仓库(仓库内已含预构建 lib/,无需本地构建) dsh plugin --profile web add https://github.com/dragan2023/dsh-workspace-default-dir 3) 本地目录(开发/自用) dsh plugin --profile web add D:\path\to\dsh-workspace-default-dir 重启 dsh web 后,设置页出现 工作区默认目录 一项。 使用 打开 设置 → 工作区默认目录。输入绝对路径(例如 E:\python_project),点 保存。
展开完整文档(README 剩余 1 节)
dsh-workspace-default-dir

English · · 日本語 · 한국어 · Français · Deutsch · Español · Português · Русский 设置卡片让 dsh(DeepSeek Harness)的「添加工作区 → 选择工作区目录」对话框默认打开在你指定的目录(例如 E:\python_project),而不是 Windows 用户主目录。

安装

三种方式任选其一,然后重启 dsh web:

1) npm 包(发布到 npm 后可用)
dsh plugin --profile web add dsh-workspace-default-dir

2) GitHub 仓库(仓库内已含预构建 lib/,无需本地构建)
dsh plugin --profile web add https://github.com/dragan2023/dsh-workspace-default-dir

3) 本地目录(开发/自用)
dsh plugin --profile web add D:\path\to\dsh-workspace-default-dir

重启 dsh web 后,设置页出现 工作区默认目录 一项。

使用

打开 设置 → 工作区默认目录。输入绝对路径(例如 E:\python_project),点 保存。之后每次打开「添加工作区」目录选择器,都会直接定位到该目录——无需重启。

目录选择器已定位到 E:\\ComfyUI-aki-v3

卡片始终显示当前生效目录(当前生效)。输入留空保存,或点 清除,即恢复默认(用户主目录)。

同样可在命令行使用: dsh-workspace-default-dir set E:\python_project # 设置默认目录 dsh-workspace-default-dir get # 查看当前默认目录 dsh-workspace-default-dir clear # 清除(回到主目录) dsh-workspace-default-dir status # 补丁与设置状态

GUI 卡片与 CLI 写的是同一个 DSH_PICKER_INITIAL_DIR(setx 持久化),二者始终同步。

行为与限制

- 两个选择器后端都覆盖:原生 Windows 对话框(IFileDialog::SetFolder)与 browse 应用内选择器(webserver 绑定非 127.0.0.1,如局域网 0.0.0.0 时自动启用)。
- 注册表兜底:补丁后的选择器先读进程环境变量 DSH_PICKER_INITIAL_DIR,没有则直接查 HKCU\Environment——绕开 Explorer 环境陈旧问题(setx 后无需重启 Explorer)。
- 启动自愈:每次 dsh 启动插件幂等重打两个后端补丁,dsh 升级恢复原文件后自动修复。
- 属于补丁型插件:会修改 dsh 安装目录内两个选择器包文件(幂等、只增不改)。browse 后端在 dsh 启动时加载补丁模块,安装/升级后需重启一次 dsh web;原生对话框每次弹窗读 worker,即时生效。
- 已验证于 Windows + dsh 0.1.0-rc.6;其他平台/版本如编辑对不匹配会打印警告并跳过补丁(不影响 dsh 启动)。

许可

MIT,详见 LICENSE。
预览分享卡片长什么样 ↓dragan2023/dsh-workspace-default-dir
分享 · DeepSeek Harness Hub
dragan2023/dsh-workspace-default-dir

指定目录选择器默认打开的初始路径

这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。
认领条目 →
回到顶部