← 返回列表
D

dsh-task-runner

v1.0.2 · 0 天前发布

DSH plugin: project/task dual-mode workspaces. Tasks skip the workspace picker — every task conversation gets a fresh scratch directory under D:\dsh_working\<name>-<timestamp> (Codex-style), while projects keep the existing workspace flow.

dshdsh-plugindeepseek-harnessworkspacetaskscratchproject

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 落在任务根目录下的会话都会自动登记/回收
  • 查看完整 README →

    版本兼容矩阵

    DSH 版本状态说明
    dsh@0.1.0-rc.6 ✅ 兼容 cordis patch ✅
    dsh@0.1.0 ✅ 兼容 标准 patch ✅
    dsh@0.2.0 ⚠️ 待验证 待实测(API 可能在变)
    dsh@0.3.0+ ❓ 未知 尚未发布

    💡 兼容矩阵每周末自动跑实测,欢迎 PR 修正

    元数据

    License
    MIT
    npm
    dsh-task-runner
    Repo
    git+https://github.com/jing-hy/dsh-task-runner.git
    Engines
    {"node":">=20"}
    Weekly DL
    0
    Monthly DL
    0
    dsh.bundle
    {"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-client-runtime","@deepseek-ai/dsh-client-ui-slots","@deepseek-ai/dsh-client-locale"],"platform":"web"}}