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

工作区目录树 bentong-chain/dsh-dir-tree

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

浮窗浏览工作区目录,拖拽路径直达对话框

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

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

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

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:仅索引
是什么[目录]—
dsh 原生插件 · market
暂无时间戳·判据 →
装得上吗[实装验证]—
本站尚未做安装检查
数据截至 2026/09/26·判据 →
安全吗[自动扫描]—
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
数据截至 2026/11/05·判据 →
还在维护吗[仓库]—
更新放缓:最近一次提交在 76 天前
暂无时间戳·判据 →
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成

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

验证判据与等级说明 →

可信度证据

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

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

读写/删除本地文件写入剪贴板(不计风险)发起外部网络请求
查看扫描证据(共 3 处,展示前 3 条)
  • 读取本地文件
    index.js:13
    const entries = await readdir(dir, { withFileTypes: true })
  • 写入剪贴板
    client.js:38
    const copy = React.useCallback((e) => { e.stopPropagation(); navigator.clipboard.writeText(nd.path).then(() => { sc(true); setTimeout(() => sc(false),
  • 发起网络请求
    client.js:103
    React.useEffect(() => { fetch() }, [fetch])
扫描于 2026/11/5(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

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

社区实装还没有人打卡 · 装过的第一个就是你
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 浮窗浏览工作区目录
  • 拖拽路径进对话框
  • 工作区切换自动跟随

README

由 DeepSeek 最新模型翻译生成
dsh-dir-tree DeepSeek Harness (DSH) 浮窗工作区目录树插件:拖拽文件/文件夹路径到对话框、懒加载、搜索、文件类型图标,切换工作区/会话自动跟随。 📚 三形态完整展示仓库(动态/持久化/标准 bundle 的安装与原理对比):dsh-plugin-dir-tree 功能 - 📁 浮窗展示当前会话工作区目录树,右下角可最小化 - 🌲 懒加载:点击 ▶ 展开子目录,大目录不卡顿 - 🖱️ 拖拽文件/文件夹到对话框,自动填入完整路径 - 📋 双击复制路径;单击选中 - 🔍 搜索过滤文件名 - 🎨 文件类型图标 + 目录 📁/📂 蓝色高亮 + 缩进树形线 - 🔄 切换工作区/会话,目录树自动跟随 - 🪟 可拖动浮窗位置 截图 主界面(浮窗 + 目录树) 主界面 右下角浮窗「📁 当前工作区」,顶部是完整路径,下面是树形目录:文件夹蓝色 + 📁 图标 + ▶ 展开箭头,文件带类型图标。 拖拽路径到对话框(动图) 拖拽演示 拖拽任意文件/文件夹节点到对话框输入框,自动填入完整路径。 懒加载展开(动图) 懒加载展开 点击文件夹的 ▶ 展开子目录,只加载当前层,大目录不卡顿。 最小化 / 恢复 最小化 点 − 或 × 后浮窗收起,右下角出现蓝色「📁 目录树」按钮,点击恢复。
展开完整文档(README 剩余 1 节)
dsh-dir-tree

DeepSeek Harness (DSH) 浮窗工作区目录树插件:拖拽文件/文件夹路径到对话框、懒加载、搜索、文件类型图标,切换工作区/会话自动跟随。

📚 三形态完整展示仓库(动态/持久化/标准 bundle 的安装与原理对比):dsh-plugin-dir-tree

功能

- 📁 浮窗展示当前会话工作区目录树,右下角可最小化
- 🌲 懒加载:点击 ▶ 展开子目录,大目录不卡顿
- 🖱️ 拖拽文件/文件夹到对话框,自动填入完整路径
- 📋 双击复制路径;单击选中
- 🔍 搜索过滤文件名
- 🎨 文件类型图标 + 目录 📁/📂 蓝色高亮 + 缩进树形线
- 🔄 切换工作区/会话,目录树自动跟随
- 🪟 可拖动浮窗位置

截图

主界面(浮窗 + 目录树)

主界面

右下角浮窗「📁 当前工作区」,顶部是完整路径,下面是树形目录:文件夹蓝色 + 📁 图标 + ▶ 展开箭头,文件带类型图标。

拖拽路径到对话框(动图)

拖拽演示

拖拽任意文件/文件夹节点到对话框输入框,自动填入完整路径。

懒加载展开(动图)

懒加载展开

点击文件夹的 ▶ 展开子目录,只加载当前层,大目录不卡顿。

最小化 / 恢复

最小化

点 − 或 × 后浮窗收起,右下角出现蓝色「📁 目录树」按钮,点击恢复。

安装

这是 DSH 的标准 bundle,用 dsh plugin add 安装,无需源码 checkout、无需改内置包、无需创造模式。

0. 安装/运行 DSH(二选一)

方式 A:全局安装(推荐,日常使用)

npm install -g @deepseek-ai/dsh

方式 B:npx 临时运行(不安装,偶尔试用)

npx @deepseek-ai/dsh web

| | 方式 A:全局安装 | 方式 B:npx 临时运行 |
| 是否安装到系统 | 是,永久安装 | 否,按需临时下载运行 |
| 命令形式 | dsh ...(直接可用) | npx @deepseek-ai/dsh ... |
| 首次启动 | 快 | 较慢(首次需下载包) |
| 版本 | 固定为全局安装的版本(需手动更新) | 通常为 npm 最新版 |
| 适用场景 | 日常使用 | 偶尔试用、不想污染环境 |

两者共用同一个 $DSH_HOME(默认 ~/.dsh)和 profile 目录,插件/会话/配置完全互通,不影响下面插件的安装与使用。

1. 安装插件

方式一:npm 安装(推荐,无需任何授权)

插件已发布到 npm,一条命令即装:

dsh plugin --profile web add dsh-dir-tree

方式二:从 git 安装(无需发布 npm)

dsh plugin --profile web add github:bentong-chain/dsh-dir-tree

首次会提示在 profile 的 pnpm-workspace.yaml 加构建授权:

allowBuilds:
dsh-dir-tree: true

复制后重新执行 dsh plugin --profile web add github:bentong-chain/dsh-dir-tree。

2. 启动 DSH(web 界面)

dsh web 是 dsh --profile web 的硬编码别名,完全等价;三种写法启动的都是同一个 web profile(~/.dsh/profiles/web):

方式 A:全局安装后(推荐)
dsh --profile web # 或等价的别名:dsh web

方式 B:npx 临时运行(等价于上面)
npx @deepseek-ai/dsh web

无论用哪种方式启动,插件都会正常加载,不受启动方式影响。

使用

1. 启动 DSH(dsh --profile web / dsh web / npx @deepseek-ai/dsh web)后,右下角出现「📁 当前工作区」浮窗
2. 点击文件夹 ▶ 展开子目录
3. 拖拽文件/文件夹到对话框输入框,填入完整路径
4. 双击复制路径;搜索框过滤;点 −/× 最小化,右下角按钮恢复

目录结构

dsh-dir-tree/
├── package.json # dsh.bundle + dsh.client + prepare 构建脚本 ├── cordis.patch.yml # 插入插件行 ├── index.js # Host 半(connection.rpc.handle + node:fs 列目录) ├── client.js # Client 半源码(浮窗 UI + connection.rpc.call) ├── client.bundle.js # 构建产物(prepare 生成,不提交) ├── build.mjs # prepare 脚本:esbuild 打包 client.js └── docs/ # README 截图(主界面/拖拽/懒加载/最小化)

技术要点

- RPC:用 ctx.connection.rpc(第三方可用的 Client→Host 通道),不依赖 api-remotes、不依赖 Typert 代码生成。
- 工作区跟随:Client 半从 ctx.sessions 拿当前会话 cwd 传给 Host;切换工作区/会话时响应式刷新。
- 目录判断:Host 用 node:fs 的 readdir({ withFileTypes: true }) 直接拿 Dirent.isDirectory(),不做逐条 stat,大目录不卡。
- ⚠️ exports 必须导出 ./package.json:client-modules 用 require.resolve('/package.json') 定位包;只要定义了 exports 字段,未列出的子路径就解析失败,client 半会被静默跳过(不报错、不进 window.__DSH_BOOT__)。务必带上 "./package.json": "./package.json"。
- ⚠️ Client 半必须 import React from 'react':持久化 client bundle 里 React 不是全局变量,要靠 require('react') 从浏览器模块表取(react 是平台模块之一);直接引用全局 React 会在 apply 时 ReferenceError。

许可证

MIT
预览分享卡片长什么样 ↓bentong-chain/dsh-dir-tree
分享 · DeepSeek Harness Hub
bentong-chain/dsh-dir-tree

浮窗浏览工作区目录,拖拽路径直达对话框

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