DeepSeek Harness 插件

dsh-cli-workspaces

dsh profile bundle: workspace-switching one-shot CLI mode — dsh --profile cli -w <workspace> -c <task>, plus `ws` management subcommands.(英文原文)

跳到安装方式

来源信息

GitHub 仓库
qingkong143/dsh-cli-workspaces
最近更新
2026年8月16日
分类
工具与能力
GitHub stars
1
载体类型
plugin
目录证据
上游声明已找到 dsh.bundle
证据路径
package.json#dsh.bundle
核对版本
0.1.0-rc.8
上游核对日期
2026-08-20

该证据由上游目录提供。本站没有安装、运行或安全审核这个插件。

安装

默认先复制一段 Prompt,让 Agent 读 GitHub 仓库和源码;需要自己装时再切到命令。

复制这段 Prompt,发给 DSH、Codex 或其他 Agent,让它先读 GitHub 仓库和源码。

请先不要安装或执行任何命令。阅读这个插件的 GitHub 仓库、README 和关键源码,然后用清楚、直接的方式回答以下问题,帮助我判断它是否适合我的需求:

1. 这个插件是什么,解决什么问题;
2. 适合哪些用户和典型使用场景;
3. 安装后如何使用,并给出一个最小使用示例;
4. 有哪些已知限制,以及隐私、安全、兼容性或维护风险;
5. 给出“推荐 / 有条件推荐 / 不推荐”的明确建议和理由。

请区分仓库明确说明、根据源码推断和未知信息。证据不足时请明确说明,不要猜测或照抄 README。

GitHub:https://github.com/qingkong143/dsh-cli-workspaces
插件名:dsh-cli-workspaces
作者:qingkong143

检查来源文件

安装前先看这个插件目录里的 README 和其他文件。

文件资源管理器2 个文件
README.md来源说明 · 只读预览

dsh-cli-workspaces

给 dsh 的 cli profile 用的一键命令行模式:预置若干工作区,用 -w 切换 agent 的 运行目录(环境上下文),-c 或位置参数给任务文本,最终回复打到 stdout、退出码 0=完成/1=出错。附带 ws 子命令管理工作区注册表。

这是 dsh 的 bundle 包:包内 dsh.bundle.patch 声明了补丁层,安装后会自动加入 profile 的 dsh.profile.bundles 层栈。

依赖(bundle 层要求)

profile 的 bundles 中必须先于本包包含:

  • @deepseek-ai/dsh-base — 核心运行层
  • @deepseek-ai/dsh-headless — 提供 headless-runner(真正的 agent 执行)

本包只替换 headless 层的启动器并补上工作区切换,不自己实现 agent 循环。

安装

# 1. 建 profile 并装上依赖层(自动加入 bundles)
dsh plugin --profile cli add @deepseek-ai/dsh-headless
# 2. 装本包(registry 包名,或 git+https://...,或本地路径 ./dsh-cli-workspaces)
dsh plugin --profile cli add dsh-cli-workspaces

首次运行会把示例工作区表复制到 profile 目录,之后用 ws 命令管理:

dsh --profile cli -w 2 -c "git status"        # 切到第 2 个工作区执行任务
dsh --profile cli -c "帮我检查这个文件夹"      # 当前目录执行(或 default 工作区)
dsh --profile cli ws list                     # 列出工作区
dsh --profile cli ws add blog ~/blog          # 新增
dsh --profile cli ws rm blog                  # 删除
dsh --profile cli ws default 2                # 设置默认工作区
dsh --profile cli ws --help                   # 全部管理命令

想省掉 --profilealias dsh='dsh --profile cli'(launcher 要求 --profile,插件改不了)。

开发 / 发布

npm pack --dry-run      # 查看最终打进 tarball 的文件
npm publish             # 发布到 registry(或推 git 仓库,消费方用 git+https://... 安装)

结构

cordis.patch.yml          # bundle 补丁:禁用 headless-startup + 插入 cli-startup
lib/cli-startup.mjs       # 启动器插件(commander 解析 -w/-c;ws 子命令管理注册表)
example-workspaces.yml    # 首次使用时复制到 profile 目录的示例注册表

工作区数据文件(workspaces.yml)始终位于 profile 目录,由插件按 loader 的 ctx.baseUrl 定位;包目录只装代码与示例,不存用户数据。