前言¶
在 DSH 的浏览器插件场景里,工作区类界面通常会反复出现几类基础交互:面板堆叠、文件树、标签式编辑器、文档渲染和操作入口。dsh-ui-workspace 把这些能力做成一组可组合的 UI 原语,先解决“界面骨架怎么搭”的问题,再把产品特定的导航、数据提供者、命令和样式留给使用方。
它建立在 dsh-ui-container 之上。下面介绍它的定位、能力、安装方式和典型引用方式。
这是什么¶
@ch4acko3/dsh-ui-workspace 是由 CH4ACKO3 维护的 DeepSeek Harness UI 插件,资料中的包版本为 0.1.0。它的描述是:
Composable workspace primitives for DeepSeek Harness UI plugins
它面向浏览器插件,提供可组合的工作区原语,并把产品特定部分留给消费者实现。依赖关系也是有意保留的:Workspace 的 document surfaces 在运行时调用 container 的 useUiSurface(),并共享其 DocumentRef 和 DocumentSnapshot contracts。
核心功能¶
下面列出的能力来自已核实的 README 与包信息:
- Draggable pane stacks
- Recursive tree views
- Tabbed document editors
- Document renderers
- Actions
- VS Code-style explorer behavior
- Client 导出可被浏览器插件导入,并组合为产品特定页面
与 dsh-ui-container 的分工如下:
- Container 仍是独立安装的插件,拥有提供共享
uiContainerservice 的单个 bundle row。 - Workspace 消费该 service。
- Workspace 启用时,Container 需要保持安装。
安装与启用¶
先在同一 DSH profile 中安装 Container,再安装 Workspace:
dsh plugin --profile web add github:CH4ACKO3/dsh-ui-container
dsh plugin --profile web add github:CH4ACKO3/dsh-ui-workspace
这些命令是 profile-scoped,可以在任意目录执行。
如果从 Git 依赖安装,两个包都会运行 prepare builds。使用 pnpm 10 或更高版本时,需要批准第一次安装报告出的精确 package keys,批准位置是该 profile 的 pnpm-workspace.yaml,之后重复安装命令。Registry releases 和 packed artifacts 不需要这个批准。
环境要求如下:
engines.node: ^22.19.0 || >=24.0.0
packageManager: pnpm@11.19.0
peerDependencies 声明如下:
@ch4acko3/dsh-ui-container ^0.1.0
@deepseek-ai/dsh-client-runtime 0.1.0-rc.6
@deepseek-ai/dsh-client-ui-primitives 0.1.0-rc.6
react ^18.2.0
package.json 中的 dsh.client 配置如下:
{
"dsh": {
"client": {
"immediately": true,
"platform": "web",
"inject": [
"@deepseek-ai/dsh-client-runtime",
"@deepseek-ai/dsh-client-ui-primitives",
"@ch4acko3/dsh-ui-container"
]
}
}
}
典型用法¶
经过上面的安装步骤后,浏览器插件代码可以从 client 导出中引用组件。README 给出的示例是:
import {
DocumentSurface,
ExplorerPaneStack,
TabbedEditor,
TreeView,
} from '@ch4acko3/dsh-ui-workspace/client'
这个包保持可被浏览器插件导入,用于把这些原语组合为产品特定页面。
适用场景与注意¶
适合在 DSH web profile 中构建浏览器 UI 的开发者,尤其是希望复用 pane stack、tree view、tabbed editor、document renderer、actions 和 VS Code-style explorer behavior 的场景。
使用前注意:
dsh-ui-workspace依赖dsh-ui-container提供的共享 service;Workspace 启用时,Container 需要保持安装。- 产品特定导航、数据提供者、命令和样式没有由 Workspace 代为实现,需要消费者接入。
- 该插件以当前
dsh进程权限运行;安装前应先检查源码与许可证。 - 资料未明确许可证类型,仅
package.json的files中出现LICENSE。 - 从 Git 安装时需要关注
preparebuilds 和 pnpm 批准流程。
结尾¶
dsh-ui-workspace 的价值在于把浏览器插件里常见的工作区界面拆成可组合原语:面板、树、编辑器、渲染器、操作和 explorer 行为可以先落地,再由产品侧补齐数据、命令、导航和样式。
GitHub:https://github.com/CH4ACKO3/dsh-ui-workspace。社区目录(独立站点)可按包名查找;本文资料未提供具体目录页 URL。