PeekFile for DSH:全盘文件搜索、目录浏览与多格式预览

前言

在 DSH 会话里处理文件时,常见的问题是文件并不只在当前工作目录中:一部分在本地磁盘,一部分在 WSL 文件系统里,还有一些是当前项目中的资料。已有做法通常更围绕工作目录展开,跨目录、跨文件系统时需要手动查找,再切换到其他窗口预览。

PeekFile 是一个面向 DeepSeek Harness(DSH)的插件,提供全盘文件搜索、目录浏览和多格式预览。它把搜索、浏览、预览、引用、截图、OCR、格式转换等操作放进 DSH 会话内,减少文件分散带来的来回切换。

基本信息

  • 插件:fastengiel-kurai/dsh-peekfile-everything
  • 维护者:fastengiel-kurai
  • 许可证:AGPL-3.0-only
  • GitHub:https://github.com/fastengiel-kurai/dsh-peekfile-everything
  • 已验证环境:DSH 0.1.0-rc.8、Node.js >= 22、Windows 11 + WSL2 Ubuntu 24.04

Better Sidebar、Everything、文档转换与 OCR 工具均为可选组件。不安装这些组件时,仍可使用工作目录/WSL 搜索、目录浏览和基础格式预览。

核心功能

全盘文件搜索

PeekFile 支持三类文件搜索来源:

  • 工作目录
  • WSL
  • Windows Everything

三类来源可以组合使用。搜索结果支持多来源分页和排序,并保留最近 10 条去重历史。搜索结果只缓存在当前页面内存中,不写入磁盘;开始全新搜索时释放旧缓存。

如果已有结果需要进一步缩小范围,可以在原查询后追加 +关键词 二次筛选,例如:

动画片 +合集

目录浏览

PeekFile 支持继续浏览目录。对于压缩包等不支持内嵌预览的文件,PeekFile 不自动解包,而是交给系统关联程序打开。

对话路径接管

如果模型在对话中输出了有效本地路径,PeekFile 会自动识别这些路径,并将其转换为可点击的预览链接。支持的路径类型包括:

  • Windows 路径
  • WSL/POSIX 路径
  • 工作区本地路径

PeekFile 还支持 DSH 原生文件引用胶囊,以及类似下面的行号范围引用:

@路径:起始行-结束行

非图片文件可拖入输入框,并保存到工作区 .dsh-drops/;默认单文件上限为 10 MB

浮动预览窗口

PeekFile 默认使用浮动预览窗口,而不是固定侧边栏。窗口支持:

  • 多 Tab
  • 中键关闭
  • 刷新
  • 另存为
  • 系统打开

本地预览默认不限制文件大小,预览上限可单独配置。

文件预览与转换

PeekFile 支持预览以下类型:

  • 文本
  • 代码
  • Markdown
  • CSV
  • 图片
  • 视频
  • PDF
  • Office
  • EPUB
  • Calibre 可转换的电子书

同时提供以下能力:

  • 截图
  • 画框截图
  • OCR
  • FFmpeg 转 MP4
  • OfficeCLI 转 HTML 预览
  • AnyDoc 全文发送

视频无法播放时,可显示“转 MP4”,由 FFmpeg 转为 H.264/AAC 的 MP4 后自动播放。

与 Better Sidebar 配合

PeekFile 可与 Better Sidebar 配合。可按文件类型指定由 PeekFile 或 Better Sidebar 处理。

需要注意,Better Sidebar 只能预览工作目录内文件;工作目录以外的文件始终由 PeekFile 预览。

安装与启用

使用 DSH 插件命令安装:

dsh plugin --profile web add @fastengiel/dsh-peekfile-everything

安装后需重启 DSH Web,并在浏览器中执行硬刷新。

如果启用外挂工具,PeekFile 不会自动修改操作系统环境。需要在设置中启用对应工具,并填写命令路径。

典型用法

  1. 启动 DSH Web,进入任意会话后点击会话右上角的 PeekFiles
  2. 在搜索框输入文件名,例如:
   report.pdf

保持“工作目录 / WSL / Everything”全选,并点击搜索。
3. 点击目录可继续浏览;点击文件会切换到预览区。
4. 如果 Everything 未安装,可在搜索按钮后的范围菜单中取消 Everything,仍可使用工作目录和 WSL 搜索。
5. 如果需要对当前缓存结果继续筛选,可在原查询后追加 +关键词,例如:

   动画片 +合集
  1. 让模型在对话中输出有效本地路径,然后直接点击路径预览。
  2. 如果视频无法播放,点击“转 MP4”,由 FFmpeg 转为 H.264/AAC 的 MP4 后自动播放。

适用场景与注意

适合在 DSH Web 中使用,并且经常需要查找当前工作目录之外的文件,例如 Windows 本地磁盘、WSL 文件系统中的文档、PDF、Office、图片、视频或电子书。

使用前需要注意以下几点:

  • Better Sidebar、Everything、文档转换与 OCR 工具均为可选组件。
  • 其他 Linux 环境可能可以运行,但尚未完成同等实机验证。
  • macOS 目前隐藏画框截图入口。
  • Everything 1.5 才能加载 CLI;低于 1.5 的版本不能加载 CLI。
  • 搜索结果只缓存在当前页面内存中,不写入磁盘。
  • 非图片文件拖入输入框后会保存到工作区 .dsh-drops/,默认单文件上限为 10 MB
  • 插件以当前 dsh 进程权限运行。安装前应检查源码与许可证;本插件许可证为 AGPL-3.0-only,可在 GitHub 仓库中查看源码。

链接

  • GitHub:https://github.com/fastengiel-kurai/dsh-peekfile-everything
羽毛球分组比赛记分
小程序二维码

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

Xiaoye