DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

Momojie-S /

Momojie-S/dsh-right-dock

Verified

This plugin has no description yet.

★ 0 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: master@36660874

dsh-right-dock

DeepSeek Harness Web UI 的右侧栏平台:右缘常驻图标 rail(容器级入口,VS Code activity-bar 形态)+ 从右侧推挤对话区的多标签 dock——面板不遮挡对话,而是像左侧栏一样压缩主区宽度;窄屏(<1024px)自动切换为浮层抽屉(带点击关闭背景)。其他插件通过 rightdock.tab 坐席挂载自己的标签页。

一句话作用

给 DSH web 一个可扩展的右侧工具栏平台——容器有自己的常驻入口,打开 dock 永远不依赖任何单个 tab 插件的按钮。

环境要求

  • DeepSeek Harness >= 0.1.0-rc.6(web profile;已验证至 0.1.1-rc.2)
  • Node.js >= 20(构建期;构建零 npm 依赖,离线可跑)

用法(插件作者)

挂一个标签页:

// 你的插件 client 半部
const inject = ['slots']
function apply(ctx) {
  const slots = ctx.get('slots')
  slots.inject('rightdock.tab', () => {
    // rail 图标走 rightdock 服务声明(slot options 被 ledger 白名单化,带不了自定义字段);
    // 挂载回调触发时 dock 服务必然已就绪(坐席的父条目就是 dock 的 apply)
    ctx.get('rightdock')?.setTabIcon('my-tab', MyIcon16)
    return slots.register(
      { name: 'rightdock.tab', id: 'my-tab', order: 10, label: '我的标签' },
      (props) => {
        // props.activeTabId: 当前激活的 tab id —— 非激活时建议 display:none 保活状态
        // props.dockWidth: 宽屏模式下面板宽度(px);窄屏浮层模式为 undefined
        // 标准全局 hooks(useSessions / useWorkspaces 等)照常可用(root 作用域)
        return React.createElement('div', { style: { display: props.activeTabId === 'my-tab' ? 'flex' : 'none', height: '100%' } }, '...')
      },
    )
  })
}

打开/切换/关闭(任意插件的 client 半部):

const dock = ctx.get('rightdock')   // 可选服务,dock 未安装时为 undefined
dock?.openTab('my-tab')

入口模型

  • 容器级:右缘图标 rail 常驻(有 tab 就显示),点图标直达对应 tab;点当前激活图标收起 dock。dock 关闭后 rail 仍在——重开永远有入口。
  • tab 级(可选):各 tab 插件自己放的快捷按钮(如 workspace-files 的会话标题栏「文件」按钮),语义是 toggleTab(id)——快捷方式而非唯一入口。
  • rail 是布局(非浮层):宽屏下对话区始终为 rail 让出 40px,dock 打开时再让出面板宽度,两者一起推挤主区。

安装

dsh plugin --profile web add ./plugins/dsh-right-dock
dsh web

配置

无。

验证

浏览器端:右缘出现图标 rail(挂了 workspace-files 时是文件夹图标);点图标打开右侧栏并定位到对应 tab——对话区被推挤变窄而非被遮挡;面板左缘可拖宽(280–900px);再点同一图标收起面板,rail 仍在。窗口缩到 <1024px 后面板转为浮层抽屉(rail 暂隐),点击背景关闭。

机制与设计取舍见 docs/design/overview.md。

—/ 5

No ratings yet

Verified DSH bundle

Commit 36660874f7cd

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout