前言¶
在 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。