DeepSeek Harness 插件:dsh-quick-session(无工作区快速会话)

前言

DeepSeek Harness(DSH)的标准工作流通常要求在开始会话前选择一个 Workspace。对于处理临时或一次性任务时,这种操作显得繁琐。dsh-quick-session 插件解决了这一痛点,允许用户在 Web GUI 中不指定工作区即可启动会话,并自动分配独立的临时目录作为执行边界。

核心定位

这是一个客户端插件,由 GRmaid 维护。它通过侧栏快捷入口提供会话启动能力,不注册正式 Workspace,而是将临时目录作为沙箱边界。

核心功能

  • 无工作区启动:在 DSH Web GUI 中不指定工作区即可开始会话。
  • 独立临时目录:每个快速会话拥有独立目录,位于 %DSH_HOME%\scratch。
  • 会话边界:该目录既是工作区写入边界,也是 Shell 的工作目录(CWD)。
  • 侧栏归类:不注册 Workspace,侧栏将其归类为「未分组」。
  • 快捷入口:侧栏底部提供快捷会话图标,点击打开输入框。
  • 权限控制:Agent 权限沿用现有四档,默认开启「工作区写入 + 变更前确认」。
  • 架构分工:
    • 宿主半边:注册路由 POST /plugins/dsh-quick-session/prepare,负责目录创建。
    • 浏览器半边:负责 UI 与会话创建流程。
  • 技术依赖:依赖 React ^18.2.0。

安装与启用

通过命令行安装:

dsh plugin add github:GRmaid/dsh-quick-session

注意:桌面端安装边界仅接受 npm 发布的插件。若需在桌面端安装,需使用 link: 方式安装,或等待插件发布至 npm。

典型用法

  1. 点击侧栏底部的快捷会话图标(设置旁),打开输入框。
  2. 输入内容后提交。
  3. 宿主会在 %DSH_HOME%\scratch 下新建目录(格式为 quick-<日期>-<随机>)。
  4. 该目录被设为 Shell 的工作目录,Agent 只能在此范围内读写文件。

开发与调试

若需修改宿主半边代码:
1. 将 lib/entry.js 复制为新文件名并修改内容。
2. 更新 cordis.patch.yml 中的 name 指向新文件名。
3. 在插件管理页(或通过 plugin_manager 的 set_bundle)关闭再打开组合包,触发重载。

若只修改浏览器半边代码,无需重启宿主,刷新页面即可。

注意事项

  • 临时文件清理:临时目录里的文件不会自动清理,需手动管理。
  • 图标回退:快捷会话图标有一层回退阶梯:鲸鱼尾巴 GIF -> 官方尾鳍裁切 -> 🐋 字形,确保按钮内容可见。
  • 权限执行:插件以当前 DSH 进程的权限运行。

结尾

该插件为处理零散、临时任务提供了便捷入口,避免了频繁切换工作区的开销。更多细节与源码可查阅项目主页。

项目主页
插件目录

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

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

小夜