FileScope · 文件视界:DSH Web 工作区文件抽屉与实时预览

前言

DSH 的插件生态支持按 profile 扩展 Web 端能力。dsh-filescope 对应的能力是文件浏览:把当前工作区的目录树和文件预览放进 Web 页面右侧抽屉,适合在会话之间切换时查看对应工作区内容。

它定位是只读浏览:只展示目录、文件和文件内容,不提供写操作。

这是什么

dsh-filescope 是一个 DeepSeek Harness 插件,名称为 FileScope · 文件视界,包名为 dsh-filescope

它解决的问题是:在 DSH Web 会话里,不离开当前页面,直接查看当前会话所属工作区的目录结构、文件大小、文本文件内容、二进制文件摘要和超大文件提示。

仓库地址为:

https://github.com/KunIsMe/dsh-filescope

许可证为 MIT;许可证标注为 © 2025 zhangkun,GitHub owner 为 KunIsMe

核心功能

下面按实际使用过程列出已核实的能力。

入口与布局

  • 右侧全高抽屉式文件浏览器。
  • 可从侧边栏底部打开。
  • 可从会话顶部操作栏打开。
  • 点击遮罩可收起抽屉。
  • 抽屉左边缘竖条可调整宽度,范围为 320px–85vw
  • 目录树与预览区之间的横条可调整高度。

工作区跟随

  • 切换会话时,目录树自动跟随该会话所属工作区。
  • 匹配逻辑是读取当前会话 cwd,并匹配已注册工作区。
  • 也可以手动切换工作区。
  • 顶部下拉可选择工作区。
  • 也可以输入绝对路径后回车。

目录浏览

  • 支持完整目录层级的展开和折叠。
  • 目录优先排序。
  • 显示文件大小。
  • 「全部展开」会递归加载子孙层级,上限为 3000 节点。
  • 「隐藏点文件」可过滤以 . 开头的条目。

文件预览

  • 文本文件实时预览,带行号。
  • 文本预览带行号的范围是前 2000 行。
  • 二进制文件显示 hex 摘要。
  • 超大文件显示提示。

实时刷新

开启实时刷新后:

  • 当前打开文件每 2s 检测版本变化,并自动重读。
  • 已展开目录每 5s 刷新。

安装与启用

插件会以当前 dsh 进程权限运行。安装前建议先检查源码、只读接口边界和许可证。

安装命令:

dsh plugin --profile web add dsh-filescope

安装后,停掉当前 dsh web 进程,再运行:

dsh --profile web

Host 组合在进程启动时加载,因此新内容需要重启 dsh web 进程后才会挂载。重启后刷新浏览器页面:

Cmd+Shift+R

刷新后即可看到入口。

环境要求:

  • dsh 版本应与本包构建时的源码树一致。
  • Web profile 已挂载 dsh-web-app 层,即 @deepseek-ai/dsh-web-app

典型用法

1、通过侧边栏底部或会话顶部操作栏的「文件视界」按钮打开抽屉。

2、切换会话时,目录树自动跟随该会话所属工作区。

3、在顶部下拉选择工作区,或输入任意绝对路径后回车。

4、使用「全部展开」递归加载所有层级,注意上限为 3000 节点。

5、使用「隐藏点文件」过滤 . 开头条目。

6、点击文件查看预览:文本文件带行号,二进制文件显示 hex 摘要,超大文件显示提示。

7、开启「实时刷新」后,当前文件每 2s 检测变化,已展开目录每 5s 刷新。

8、拖拽抽屉左边缘调整宽度,拖拽目录树与预览区之间的分隔条调整高度。

适用场景与注意

  • 适合在 DSH Web 中只读查看当前工作区的目录、文件、文件大小和文件内容。
  • 适合会话之间切换后快速确认当前工作区结构。
  • 不提供任何写操作。
  • 接口边界为 GET-only JSON API
  • 文本预览只展示前 2000 行。
  • 「全部展开」递归加载上限为 3000 节点。
  • 修改插件配置或 Host 组合后,需要重启 dsh web 进程并刷新浏览器页面。
  • 已核实资料中,README 手动接入示例依赖版本写为 0.1.2,而 package.jsonversion 字段为 0.1.3。安装前可确认目标 profile 实际解析到的包版本。

链接

  • GitHub:https://github.com/KunIsMe/dsh-filescope
  • 社区目录:社区目录中的 dsh-filescope 条目;本文未给出具体目录页 URL。
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜