dsh-remote-dir-picker

DSH PLUGIN浏览器与联网

仓库 gfds2005/dsh-remote-dir-picker · npm dsh-remote-dirpicker

浏览器与联网 L5 · 运行验证通过 安全审查:低风险 可信度:金 可安装插件
安装这个插件

DSH plugin 让远程浏览器(nginx/反代)也能正常使用工作区目录选择器,固定采用浏览器内浏览交互,本地与远程体验一致。

验证等级 L5 L5 · 运行验证通过
GitHub 星标 2 复刻 0 · 未关闭 issue 0
最近更新 2026-08-16 创建于 2026-08-16
README 7.1 KB 正文体量,越大说明说明书写得越细

安装

可安装插件
在 DSH 里执行,装完用 dsh plugin list 确认已挂上;标了 L4 / L5 的命令已在沙盒里真实跑通
dsh plugin --profile web add github:gfds2005/dsh-remote-dir-picker
兼容 DSH 版本0.2.0-rc.2 等 11 个版本版本不匹配时安装会报错
Node.js 要求未标注来自仓库 package.json 的 engines 字段
前置依赖@deepseek-ai/cordis@^4.0.1、@deepseek-ai/dsh-client-locale@^0.1.0-rc.6 等 6 个需要同时安装的同级依赖
npm 包名dsh-remote-dirpicker可用 npm view 查看包信息

能做什么

5 项功能
字段来自项目仓库与公开索引,中文说明由本站标注

dsh-remote-dir-picker:让 DeepSeek Harness 远程也能选目录的 DSH plugin

  • 远程浏览器可用目录选择
  • 固定浏览器内浏览交互
  • 支持路径输入与新建文件夹
  • 本地远程体验一致
  • 一行安装一行卸载

适用场景

文件读写联网搜索

上游标签

deepseek-harnessdirectory-pickerdshdsh-pluginjavascriptnpmpluginweb-ui

验证等级与安全审查

L5 · 运行验证通过
自动化流程结论,不是人工审核
验证等级L5 · 运行验证通过在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来
安全审查低风险静态分析结论,未标注不代表已通过审查
仓库健康度稳定按仓库活跃度与最近更新时间给出
可信度金综合仓库活跃度与验证结果

上面的结论来自上游最近一次自动化验证(2026-10-08): 同一套检查会在插件发新版后重跑,页面显示的是最新一次的逐项结果。

逐项检查结果

L1 · 已找到 ✓ 通过
  • L1.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L2 · 结构化 ✓ 通过
  • L2.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L3 · 安装规范 ✓ 通过
  • L3.1_INSTALL_COMMAND_PARSED 安装命令已解析 方式:安装规范解析
  • L3.2_DSH_VERSION_DECLARED DSH 版本已声明 方式:DSH 版本声明
L4 · 安装已测 ✓ 通过
  • L4.1_INSTALL_EXECUTED_CONFINED 受限沙盒内执行安装 方式:沙盒安装执行
  • L4.2_INSTALL_SUCCESS 沙盒安装成功 方式:沙盒安装执行
  • L4.3_ARTIFACT_CONFIRMED 安装产物已确认 方式:沙盒安装执行
L5 · 运行已测 ✓ 通过
  • L5.1_INSTALL_PASSED_SANDBOXED 沙盒安装通过 方式:沙盒安装执行
  • L5.2_WEB_BOOT_READY Web 启动就绪 方式:Web 启动
  • L5.3_HTTP_SERVED HTTP 服务响应 方式:HTTP 请求
  • L5.4_PLUGIN_INVENTORY_ACTIVE 插件清单中已激活 方式:插件清单查询
— · 其它检查项
  • L4_0_SANDBOX 沙盒安装判定 方式:沙盒安装执行

风险详情

  • 审查结论 通过
  • 结论说明 vet 静态分析未发现可疑行为,判定为干净(clean)。
  • 风险计数 严重 0 / 高 0 / 中 0
  • 风险详情 未发现严重或警告级问题。

仓库档案

浏览器与联网
字段来自项目仓库与公开索引,中文说明由本站标注
作者 / 维护方gfds2005仓库 dsh-remote-dir-picker · 默认分支 main
分类浏览器与联网search
收录类型可安装插件声明了 dsh.bundle、可用 dsh plugin add 安装的条目
开发语言JavaScript仓库主语言
许可证MIT商用或二次分发前请确认条款原文
星标 / 复刻 / issue2 / 0 / 0收录时的数值,非实时
创建 / 更新2026-08-16 · 2026-08-16最后推送 2026-08-16
本站收录2026-08-27首次进入本站目录的时间

README 全文

7.1 KB
作者原文,中文版优先;只做安全转义,不改内容

dsh-remote-dirpicker

> Make the "Add Workspace" directory picker work from remote browsers (nginx / reverse proxy / any non-loopback access) in DeepSeek Harness Web.


让 DSH Web 的"新增工作区"目录选择,在远程浏览器(nginx 反代 / 公网域名 / 局域网 IP)访问时也能正常使用——不再出现"远程点击新增工作区没反应,而宿主机屏幕上却弹出访达对话框"的问题。

目录


功能

本插件固定使用浏览器内目录浏览器(browse)这一种交互——本地与远程完全一致,不再依赖宿主显示器的原生对话框(详见工作原理)。

  • ✅ 远程(公网 / 反代 / 局域网)访问时,点"新增工作区"弹出浏览器内目录浏览器,可直接:
  • 浏览宿主文件系统(面包屑导航、逐级进入)
  • 输入绝对路径跳转
  • 编辑路径
  • 显示 / 隐藏隐藏文件
  • 新建文件夹后立即进入
  • ✅ 本机(127.0.0.1 / localhost)访问时同样使用浏览器内目录浏览器,功能一致、体验统一(不会再弹出访达等原生对话框)
  • ✅ 一行安装、一行卸载,与 dsh 官方插件同样的安装/卸载方式
  • ✅ 不修改 dsh 核心代码,纯组合层 patch + 官方目录选择能力

解决的问题

DeepSeek Harness Web 默认挂载 directory-picker-auto 来决定目录选择交互,它在启动时按宿主绑定地址只采样一次:

> 下表描述的是 DSH 默认(未安装本插件时) 的选择逻辑——它正是问题所在,不是本插件的功能。本插件只有一种交互(browse,见工作原理),本地与远程表现一致。

绑定地址 auto 解析结果 交互方式
127.0.0.1 / localhost native 在宿主显示器上弹出操作系统选择器(macOS 为访达 Finder)
非回环地址 browse 浏览器内目录浏览器

当通过 nginx 把 127.0.0.1:3080 反代到公网域名(如 dsh.example.com)时:

  • dsh 的绑定地址依然是 127.0.0.1 → auto 解析为 native
  • 访达对话框在宿主机(macmini)屏幕上弹出
  • 远程浏览器什么都看不到,点"新增工作区"看起来毫无反应

这正是 DSH 官方 README 建议的 "Mount -browse directly in an overlay to pin the interaction" 场景。

工作原理

本插件是一个标准的 DSH 插件包(bundle patch + 宿主半边),通过 cordis.patch.yml 调整组合:

  1. 停用 directory-picker-auto(disabled: true)——它的一次性采样无法同时服务本地和远程;
  2. 挂载 browse 宿主能力 @deepseek-ai/dsh-host-directory-picker-browse——注册 directoryPicker 服务的 browse 能力,通过 host.listDirectory / host.createDirectory RPC 提供目录列表与新建文件夹;
  3. 挂载 browse 浏览器界面 @deepseek-ai/dsh-client-ui-directory-picker-browse——在浏览器内渲染目录浏览器对话框。

browse 交互完全运行在浏览器内,数据只通过 HTTP RPC 访问宿主文件系统,不需要宿主显示器,因此本地、局域网、公网反代访问表现完全一致。

插件宿主半边(lib/index.js)仅做启动健康检查:确认 directoryPicker 能力为 browse,并在启动日志打印一行确认信息。

使用效果

远程浏览器(如 https://dsh.example.com):

  1. 打开 DSH Web,进入工作区选择(侧边栏或对话头部)
  2. 点击"新增工作区"
  3. 弹出浏览器内目录浏览器窗口:
    - 默认列出宿主 home 目录(带 / → Users → xxx 面包屑)
    - 点击目录行进入子目录;双击亦可
    - 可点"编辑路径"粘贴完整绝对路径回车直达
    - "新建文件夹"可在当前目录创建新文件夹
    - 底部"打开"确认选中当前目录并创建工作区,"取消"关闭
  4. 选中目录后正常创建并打开工作区,与本地无差别

本机浏览器(http://127.0.0.1:3080):同样的浏览器内目录浏览器,行为一致。

安装

前置要求

  • 已安装 DeepSeek Harness CLI(dsh 命令可用)
  • 目标 profile 名(默认 web)

从 npm 安装(推荐)

dsh plugin --profile web add dsh-remote-dirpicker

从源码安装(开发)

dsh plugin --profile web add /绝对/路径/dsh-remote-dirpicker

安装后 dsh.profile.bundles 会追加 dsh-remote-dirpicker 一行。

> ⚠️ 必须重启 dsh web 生效:bundle 组合变更在启动时读取,安装/卸载后请重启 dsh web 服务。

验证

安装并重启后,可用以下命令确认生效:

# 1) 组合树:auto 行已禁用、browse 三行已插入
dsh --profile web --dump-config | grep -A1 "remote-dir-picker\|directory-picker"
# 期望:directory-picker(auto)disabled: true,
#       remote-dir-picker / remote-dir-picker-browse-host / remote-dir-picker-browse-ui 三行存在

# 2) 浏览器 boot manifest 应包含 browse 界面(而非 -native)
curl -s http://127.0.0.1:3080/ | grep -o '"id":"[^"]*"' | grep directory-picker
# 期望输出:
# "id":"@deepseek-ai/dsh-client-ui-directory-picker-browse"

# 3) browse 客户端 bundle 可访问
curl -s -o /dev/null -w "%{http_code}" \
http://127.0.0.1:3080/plugins/@deepseek-ai/dsh-client-ui-directory-picker-browse/client.js
# 期望输出:200

然后在浏览器(含远程)打开 dsh web,点击工作区选择 → "新增工作区",应弹出浏览器内目录浏览器。

卸载

dsh plugin --profile web remove dsh-remote-dirpicker

或手动从 ~/.dsh/profiles/web/package.json 的 dsh.profile.bundles 数组中删除 dsh-remote-dirpicker 行。

卸载后重启 dsh web,即恢复 dsh 默认的 directory-picker-auto 行为。

兼容性与注意事项

  • 目标平台:DSH Web 宿主(macOS / Linux / Windows),目录浏览完全跨平台;
  • 交互变化:固定 browse 后,本机访问也不再弹出访达等原生对话框,统一使用浏览器内目录浏览器(功能等价,且支持路径输入、新建文件夹——对远程场景是必需能力);
  • 安全:browse 能力仅通过 dsh 自身的 RPC 通道暴露,遵循 dsh 现有的访问控制,不引入额外的开放端口;
  • 版本记录:0.2.0 曾作为实验性自适应构建发布,存在缺陷,已废弃(deprecated)并回退至 0.1.0,请始终使用 0.1.0 或更高稳定版本。

许可

MIT

常见问题

8 问
答案由本站依据条目字段整理,不引用上游原文
dsh-remote-dir-picker 怎么安装?

在 DSH 里执行 `dsh plugin --profile web add github:gfds2005/dsh-remote-dir-picker` 即可。对应的 npm 包名是 `dsh-remote-dirpicker`。

dsh-remote-dir-picker 的验证等级是什么意思?

L5 · 运行验证通过。在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来

dsh-remote-dir-picker 安全吗?

低风险。vet 静态分析未发现可疑行为,判定为干净(clean)。

dsh-remote-dir-picker 支持哪些 DSH 版本?

上游记录的兼容版本包括 0.2.0-rc.2、0.2.0-rc.1、0.1.7-rc.2、0.1.7-alpha.2、0.1.6-alpha.2、0.1.6-alpha.1、0.1.5-rc.2、0.1.3-alpha.2。版本较多,只列出前 8 个。

dsh-remote-dir-picker 需要什么运行环境?

需要同时安装 @deepseek-ai/cordis@^4.0.1、@deepseek-ai/dsh-client-locale@^0.1.0-rc.6、@deepseek-ai/dsh-client-runtime@^0.1.0-rc.6、@deepseek-ai/dsh-client-ui-slots@^0.1.0-rc.6、@deepseek-ai/dsh-client-ui-workspace@^0.1.0-rc.6。环境不满足时安装会失败,建议先确认本机版本。

dsh-remote-dir-picker 用的是什么许可证?

上游标注为 MIT。商用或二次分发前请到仓库确认许可证原文。

dsh-remote-dir-picker 有哪些功能?

远程浏览器可用目录选择、固定浏览器内浏览交互、支持路径输入与新建文件夹、本地远程体验一致、一行安装一行卸载。

这条记录的数据可靠吗?

本站按仓库名去重后合并整理,字段以作者仓库与 npm 元数据为准;安装命令、仓库地址与 README 保持原文,带 L4 / L5 标记的安装命令已在隔离沙盒里真实跑通。

浏览器与联网
按星标排序,可作替代方案

dsh-our-free-model

dsh-our-free-model

在 DeepSeek Harness 中装上这个 DSH plugin,无需登录、注册或填 API Key,即可直接调用 DeepSeek

L3 · 安装规范通过 8,796 星

dsh-web

dsh-web

侧边栏多列任务看板:卡片交给真实 DSH 智能体会话执行,支持 cron 定时(Host 侧到点执行,关浏览器也生效)。

L3 · 安装规范通过 8,549 星

BrowserSkill

BrowserSkill

BrowserSkill 的 DeepSeek Harness 浏览器自动化桥接插件,通过原生浏览器工具控制可见的 Chrome 和 Edg

L4 · 沙盒安装通过 8,456 星

dsh-pocket

dsh-pocket

DSH Pocket 让 DeepSeek Harness 装进口袋:电脑跑 dsh web,手机扫码即实时同步访问(局域网+公网),人在外

L5 · 运行验证通过 1,656 星

Browser4

Browser4

L4 · 沙盒安装通过 1,152 星

agentrq

agentrq

L4 · 沙盒安装通过 1,140 星

gfds2005 的其它插件

1 个

插件的元信息来自作者仓库;分类、验证等级与安全结论的中文说明为中文整理,最近核验 2026-10-08。