dsh-ide-vscode:在 DSH 右侧栏读写工作区文件

前言

DeepSeek Harness(DSH)右侧栏自带的工作区文件面板只能浏览,宿主提供的 workspaceFiles 服务是只读的。要在会话里改一行配置、新建脚本或快速存盘,往往得切到外部编辑器。下面介绍社区插件 dsh-ide-vscode(维护者 wang6077),它在 DSH 右侧栏标签页里提供「左文件树 + 右编辑区」,改完 Ctrl+S 即可落盘,不必离开 DSH。

这是什么

dsh-ide-vscode 是 DSH 的客户端类插件:左侧展示当前会话工作区的文件树,右侧按文件类型打开文本编辑器、图片预览、音视频播放或压缩包列表。分类上属于客户端;插件市场目录页见 skillhub.cn/plugins/wang6077/dsh-ide-vscode,源码与说明在 GitHub。许可证为 MIT;当前 package 版本为 0.1.1。

它通过插件自建的本地 HTTP 路由(挂在宿主 web server 上,路径前缀 /api/ide-vscode)完成读写,因为内置文件服务无法写入。

核心功能

文件树(左)

  1. 展开、折叠目录;点击文件在右侧打开。
  2. 目录右键:新建文件、新建文件夹、打包成 zip、刷新。
  3. 文件右键:重命名、改后缀、删除、打包成 zip;树空白处右键作用于当前选中目录。
  4. 新建文件时提供后缀胶囊(如 .txt、.md、.json、.js、.py 等),也可手打任意后缀。
  5. 顶部搜索框:输入文件名回车可跨子目录搜索(最多 60 条);粘贴带斜杠或盘符的路径可跳转到对应层级,若是文件则一并打开。

在 Windows 上,文件夹与文件名使用同一正文色,文件夹为黄色填充图标;文件图标通过系统 SHGetFileInfo 按后缀获取。macOS / Linux 上 host 不调用 Win32,前端使用自带中性图标。

编辑器(右)

  • 行号与语法高亮(宿主 shiki,按扩展名识别)。
  • Tab 插入两个空格;Ctrl+D 复制当前行(多选时复制整段);Ctrl+S 保存(另有「保存」按钮)。
  • 焦点不在编辑器内时,Ctrl+D 为打开本面板的全局快捷键(macOS 为 ⌘D;网页版为 Ctrl+Alt+D);焦点在编辑器内时仍为复制行。
  • 状态栏显示行数、字符数、字节数及已保存 / 未保存;切换文件时若有未保存修改会提示保存、放弃或取消。

图片、音视频与压缩包

  • 图片(.png、.jpg、.jpeg、.gif、.webp、.bmp、.ico、.avif):面板内预览,可切换原始大小或适应窗口;单张上限 64 MB,经 GET /api/ide-vscode/raw 读取。
  • 音频 / 视频:常见后缀在面板内用浏览器原生控件播放,状态栏标明只读播放。
  • 压缩包(.zip、.tar、.tar.gz 等):列出包内成员(最多 1000 项);支持「解压到旁边」、右键「打包成 zip」;底层使用系统自带 tar(Windows 10+ 自带 bsdtar),无额外运行时依赖。

删除与回收站

默认删除为移到回收站(非立即物理删除);对话框可选「彻底删除」并二次确认。回收站默认位于 <工作区根>/.dsh-ide-vscode/trash,可通过环境变量或 ide-root.json 配置(见 README)。

安装与启用

推荐从 DSH 插件市场安装:设置 → 插件 → 插件市场 → 搜索 dsh-ide-vscode → 安装。

命令行安装示例(profile 名按实际环境替换):

dsh plugin --profile desktop add dsh-ide-vscode

使用 dsh web 时将 desktop 换为 web 对应的 profile。安装后需重启 DSH 一次;插件包列表仅在启动时加载。

兼容性(来自 README):DSH >= 0.1.5-rc.1(web / desktop);Node >= 22;解压 / 打包需系统提供 tar。

典型用法

打开面板

  1. 右侧栏点 +,在起始页选择「工作区 IDE」卡片。
  2. 任意位置按 Ctrl+D(网页版 Ctrl+Alt+D)直接打开。
  3. 在会话中点击 .js、.ts、.py、.json、.ps1、.yaml 等代码或配置文件时,也会在本 IDE 中打开;.md、.html 仍由 DSH 自带文档预览处理。

编辑并保存

在右侧编辑器中修改内容,按 Ctrl+S 或点「保存」写入工作区。文件树跟随当前面板所属会话的工作区,切换会话或工作区后树会随之变化,一般无需单独配置根目录。

可选:在本机插件包目录放置 ide-root.json(不进 git、不进 npm 包),例如 {"root": "D:\\my\\project"},或设置环境变量 DSH_IDE_ROOT 固定根目录;解析顺序见 README「工作区根目录」一节。

适用场景与注意

适合:在 DSH 内快速查看、修改工作区里的文本与配置;预览图片与媒体;列出或解压 / 打包 zip 等常见归档;不想为改一行配置频繁切换外部 IDE 的开发者。

务必知晓:

  • 插件以当前 dsh 进程权限访问工作区;安装前请自行查看 源码 与 MIT 许可证,评估是否满足你的安全要求。
  • 路径相对工作区根解析,越界请求返回 403;node_modules、.git 等目录禁止写入 / 新建 / 删除。
  • 这不是完整 VS Code:无 Monaco、无 LSP、无终端与 Git、无多标签;一次只编辑一个文件。
  • 读单文件上限 2 MB,写上限 8 MB;.rar 等格式能否解压取决于系统 tar 能力。

DSH 生态强调「一切皆插件」;SkillHub 等社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系。

结尾

dsh-ide-vscode 把可读写的工作区 IDE 放进 DSH 右侧栏,补齐只读文件面板的缺口。需要安装步骤与 API、安全边界细节时,以 README 为准。

羽毛球分组比赛记分
小程序二维码

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

小夜