DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Client Ui Details Host — DeepSeek Harness 插件(DSH Plugin)
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins
C

@dsh-electron/dsh-client-ui-details-host

Client Ui Details Host

可移植的 DSH 客户端插件,在 AppFrame 详细信息栏中承载一个活动的详细信息界面

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add github:cherrchen/dsh-client-ui-details-host#cd47ab672c60383bde7030982a17aac7594bf029
README兼容性版本

兼容性与来源证明

Client Ui Details Host 以 @dsh-electron/dsh-client-ui-details-host 发布,当前版本为 0.2.0。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
web
发布来源
github
Registry 更新时间
2026/8/25

版本

0.2.0stable
2026/8/25

相关插件

正在加载相关插件…

最新版
0.2.0
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
未提供
文件数
未提供
Surface
web
许可证
MIT
发布源
github
GitHub
★ 1
周下载
0
最近提交
2026/9/8
查看源码 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

相关插件

继续浏览 ui-customization 分类下经过校验的插件。

Deepseek Idesigndeepseek-idesign作为原生 DeepSeek Harness 对话视图的 iPolloWork Design Studio 及其精选设计模板。Deepseek Ipptdeepseek-ipptiPolloWork PPT Studio 及其精选幻灯片模板,作为原生 DeepSeek Harness 对话视图。Codex Ui@michengai/dsh-codex-uiDSH Codex UI — 为 DeepSeek Harness Web 提供 Codex 风格侧栏、工作区会话树、全局搜索和轮次导航Dream Skindsh-dream-skinDeepSeek Harness 换肤插件(Dream Skin for DSH):8 套 iOS / Linear 式清透冷调的高质感主题 + 弥散光壁纸 + 每款皮肤智能背景 + 强调色 + 主题包分享,把换肤做成材质与配色克制的高级感工艺,而非贴图。在原生 DSH Web 和第三方桌面客户端(DSH Desktop)中运行:8 款原创高端主题、玻璃材质、壁纸 2.0

README

dsh-client-ui-details-host

English | 中文

Portable DSH/Cordis Client plugin that hosts one active details surface in the AppFrame details column. The package is platform:web UI infrastructure with no Electron, Node, or Desktop dependency. The npm scope @dsh-electron/ identifies the publisher, not a runtime requirement.

This repository is the canonical source. DeepSeek Harness Desktop mirrors it with git subtree and mounts Details Host as required built-in infrastructure. The same package runs unchanged in DeepSeek Harness Desktop and in a standard DSH Web host.

Installation

The package is in experimental development. A public npm release under @dsh-electron/dsh-client-ui-details-host is planned; until then, install from this repository.

DeepSeek Harness Desktop — Details Host is always enabled. No separate install step.

DSH Web — add the package to a profile after building lib/:

pnpm install
pnpm build
dsh plugin --profile web add .

Or install directly from GitHub:

dsh plugin --profile web add github:cherrchen/dsh-client-ui-details-host

dsh plugin add activates the bundled cordis.patch.yml layer, which inserts the plugin row into the composed configuration. No manual cordis.yml edit is required.

The Client half resolves through the package exports["./client"] entry. Peer dependencies (@deepseek-ai/dsh-client-runtime, @deepseek-ai/dsh-client-ui-layout, @deepseek-ai/dsh-client-ui-slots, and React) must already be present in the host composition.

User experience

Loading Details Host does not open the details column. The upstream DetailsPanel remains visible until a consumer calls ctx.shellDetails.open().

End users see the AppFrame third column only after a feature plugin opens a registered shell.details.surface. Details Host supplies the column chrome (resize handle, close control, header actions) and routes the active surface body. Closing the column returns control to the upstream DetailsPanel.

Public API

ctx.shellDetails

The Client plugin provides ctx.shellDetails, a ShellDetailsController with apiVersion 2 and the full P2 features set. Import types and constants from @dsh-electron/dsh-client-ui-details-host/client.

Method / propertyRole
open(id)Open a registered surface by id (compatibility overload).
open({ surfaceId, payload?, navigation? })Preferred open form when the surface needs arguments or navigation mode.
close()Close the column, clear session navigation, and restore the upstream occupant. Idempotent.
back() / canGoBack()Restore the previous instance from the session back stack.
toggle(id)Open when inactive; close when already active.
registerSurface(descriptor)Optional lifecycle and dedupe metadata for a surface id.
getSnapshot() / subscribe()Reactive state for useSyncExternalStore.

Key slot constants: DETAILS_SURFACE_SLOT (shell.details.surface) and DETAILS_HEADER_ACTIONS_SLOT (shell.details.header.actions).

Surface contributions

Other Client plugins register renderable surfaces with declaration-aware injection:

ctx.slots.inject('shell.details.surface', () =>
  ctx.slots.register({
    name: 'shell.details.surface',
    id: 'example.alpha',
    label: 'Example Alpha',
  }, ExampleSurface))

// ExampleSurface props include detailsInstance from PropsRuntime<'shell.details.surface'>

Optional payload typing uses declaration merging on the Client entry:

declare module '@dsh-electron/dsh-client-ui-details-host/client' {
  interface DetailsSurfacePayloadMap {
    'example.alpha': { tab?: string }
  }
}

Unknown external surfaces and payloads remain supported without augmentation.

Composition rules

The Host plugin is an empty Loader seat. The Client plugin requires slots, layout, and sessions.

open() validates the surface, creates a surface instance, registers DetailsHost into the single details slot at a lower shadowing priority than the upstream occupant, verifies DetailsHost won the cell, commits the instance, and then calls ctx.layout.openDetails(). Missing or duplicate surface ids, and takeover conflicts, throw typed errors and roll back. Switching to another registered id keeps DetailsHost mounted and does not close the column.

Each session keeps an in-memory active instance and bounded back stack (default push, optional replace, with back() and dedupe). Panel geometry stays with ctx.layout; this package only occupies details while a surface is open.

Unloading the active surface, switching the current session, a surface render crash, or unloading Details Host all close takeover and restore the upstream occupant.

npm publication

The package will publish to npm as @dsh-electron/dsh-client-ui-details-host. Publication is not available yet; treat API and versioning as pre-release.

Development

Use Node.js ^22.19 or >=24 with pnpm 11.

pnpm install --frozen-lockfile
pnpm typecheck
pnpm test
pnpm build
pnpm pack --dry-run

Model Experience

None, as this package contributes human-facing Client UI infrastructure without registering model tools or prompt content.

KV Cache effect

None. The package does not add, replace, or retain model-request tokens.

Known Limitations and Deferred Work

  • Single active surface — only one shell.details.surface instance renders at a time; split, stacked, or pinned details columns are not implemented.
  • Memory-only session state — navigation history is cleared on process restart; there is no localStorage, IndexedDB, or file persistence.