jing-hy/dsh-task-runner
jing-hy★ 0JavaScript最后同步: 2026-08-16
DSH plugin: project/task dual-mode workspaces. Tasks skip the workspace picker - every task conversation gets a fresh scratch dir under D:\dsh_working\<name>-<timestamp> (Codex-style).
README 摘要
dsh-task-runner DSH(DeepSeek Harness,含 DSH EAC 桌面版)插件:把侧边栏升级为「项目 / 任务」双模式。 - 项目(Project) :现有行为不变 —— 侧边栏「工作区」标题下新增「项目」分组,各工作区文件夹与会话照常显示。 - 任务(Task) :与项目平级的独立分组 —— 不绑定任何工作区,每次新建任务自动在 D:\dsh working\ - \ 下创建独立临时目录作为会话工作目录,像 Codex 一样即开即用;所有无工作区会话(含旧 Ungrouped)都显示在「任务」组下,空时显示「暂无任务」。 新建对话走 官方流程 :点「新建会话」→ 空状态 →「选择工作区」菜单里除了各工作区,还多了一项 「无工作区(任务)」 ,点击即在任务根目录下创建新会话并直接打开。 工作原理(为什么不需要 hack 核心) DSH 的 session.create API 原生支持 cwd 参数(与 workspaceId 互斥): 传 cwd 创建的会话 不 attach 任何工作区 ,且 host 会自动 mkdir 该目录。 本插件只是把这个被 UI 隐藏的能力接出来: - host 侧维护任务清单( D:\dsh working\.tasks.json ),提供 fenced JSON API 与 /task 命令; - client 侧通过官方选择器/侧边栏的「任务」分组提供「无工作区」入口,用 sessions.create({ cwd }) 创建无工作区会话; - host 钩子兜底:任何 cwd 落在任务根目录下的会话都会自动登记/回收,即使绕过了 UI。 安装 仓库:https://github.com/jing-hy/dsh-task-runner 装完 完全退出并重启 DSH (EAC 桌面端:正常关闭后重新打开)才会生效。 验证:侧边栏底部出现「任务」按钮;profile 的 package.json 里 dsh.profile.bundles 已包含 dsh-task-runner 。 使用 任务面板(推荐) 1. 点侧边栏底部的「▦ 任务」按钮打开任务面板; 2. 输入任务名称(可留空,留空自动命名 task- ),点「新建」; 3. 新会话立即打开,工作目录为 D:\dsh working\ - \ ; 4. 面板里每个任务可「打开」(恢复其会话;会话已删除则在 原目录 新开)或「清理」(删除目录与登记); 5. 「清理全部已结束任务」只清理 finished / missing 状态的任务;活跃任务需先结束其会话,面板不会误删。 /task 命令(会话内管理) 配置 默认值开箱即用(Windows 任务根目录为 D:\dsh working ,其他平台为 /.dsh/tasks )。 需要覆盖时…
在 GitHub 查看完整 README →