前言¶
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。
典型用法¶
- 点击侧栏底部的快捷会话图标(设置旁),打开输入框。
- 输入内容后提交。
- 宿主会在
%DSH_HOME%\scratch下新建目录(格式为quick-<日期>-<随机>)。 - 该目录被设为 Shell 的工作目录,Agent 只能在此范围内读写文件。
开发与调试¶
若需修改宿主半边代码:
1. 将 lib/entry.js 复制为新文件名并修改内容。
2. 更新 cordis.patch.yml 中的 name 指向新文件名。
3. 在插件管理页(或通过 plugin_manager 的 set_bundle)关闭再打开组合包,触发重载。
若只修改浏览器半边代码,无需重启宿主,刷新页面即可。
注意事项¶
- 临时文件清理:临时目录里的文件不会自动清理,需手动管理。
- 图标回退:快捷会话图标有一层回退阶梯:鲸鱼尾巴 GIF -> 官方尾鳍裁切 -> 🐋 字形,确保按钮内容可见。
- 权限执行:插件以当前 DSH 进程的权限运行。
结尾¶
该插件为处理零散、临时任务提供了便捷入口,避免了频繁切换工作区的开销。更多细节与源码可查阅项目主页。