DeepSeek Harness 插件

dsh-dock

A workbench-quality docking system for DeepSeek Harness Web plugins(英文原文)

跳到安装方式

来源信息

GitHub 仓库
mattismegevand/dsh-dock
最近更新
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/mattismegevand/dsh-dock
插件名:dsh-dock
作者:mattismegevand

检查来源文件

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

文件资源管理器4 个文件
README.zh.md来源说明 · 只读预览
README 语言

dsh-dock

English | 中文

> 面向 DeepSeek Harness Web UI、由插件自行拥有的停靠系统。它为浏览器插件提供稳定的 keyed 面板 slot 和 ctx.dock 服务,无需修改 Harness 仓库。

![MIT License](LICENSE) ![dsh-plugin](https://github.com/topics/dsh-plugin)

!面板并排停靠的 dock 工作台

功能

  • 支持左侧、右侧、底部和浮动面板,并可将同一区域的面板组成标签组。
  • 支持指针与键盘调整大小、拖动标题栏、边缘预览以及 Alt+Shift+方向键 停靠。
  • 支持延迟分离子项,并在拖动取消时回滚。
  • 按会话保存带版本的 localStorage 布局,并限制保留的 scope 数量。
  • 在低于配置的紧凑断点时折叠侧边面板。
  • 面板移动、隐藏或切换标签时保持组件挂载。
  • 提供会话标题栏启动器,以及供多面板功能使用的逻辑启动器组。

面板 API

先通过 ctx.dock 注册元数据,再使用相同 id 向 keyed dock.panel slot 提供内容:

const disposePanel = ctx.dock.registerPanel({
  id: 'terminal',
  title: 'Terminal',
  icon: '>_',
  defaultLocation: 'bottom',
})

ctx.slots.inject('dock.panel', () => ctx.slots.register({
  name: 'dock.panel',
  key: 'terminal',
}, TerminalPanel))

面板组件会收到 panelIdvisiblelocationclosePanelactivatePanelsetPanelTitlebeginPanelDrag。隐藏面板仍保持挂载。子项拖动可以返回新的 panelIdrollback;取消或卸载时 dock 会调用回滚。

Harness 兼容性

插件使用 shell.overlayconversation.session.header.utilitiesconversation.input.right。可逆 frame adapter 会寻找 sidebar、conversation 与 details 的语义锚点,插入网格占位,并在卸载时恢复所有被修改的内联样式。

安装

需要 dsh CLI(Node.js 22.19+ 或 24)和 pnpm 10+。

从 npm 安装

dsh plugin --profile web add @mattismegevand/dsh-dock

从 GitHub 安装

dsh plugin --profile web add github:mattismegevand/dsh-dock

从 Git 安装拉取的是源码,因此首次 add 时 pnpm 会运行包的 prepare 构建。pnpm ≥10 会先拒绝该行为:请把 pnpm 打印的精确包名复制到 profile 的 pnpm-workspace.yamlallowBuilds 条目中,然后重新运行同一条 add 命令。

本地开发

git clone https://github.com/mattismegevand/dsh-dock.git
cd dsh-dock
corepack pnpm install
corepack pnpm check:all
dsh plugin --profile web add .

配置

所有会随部署变化的尺寸与阈值都属于经过验证的 Loader 配置,包括紧凑断点、拖动阈值、持久化上限、默认停靠尺寸、最小尺寸和浮动边界。

- id: dock
  name: '@mattismegevand/dsh-dock'
  config:
    compactBreakpoint: 860
    maxPersistedScopes: 64
    defaultBottomSize: 340

相关插件

  • dsh-terminal — VS Code 风格的 Ghostty 终端面板。
  • dsh-open — 会话标题栏中 Codex 风格的工作区“打开”菜单。
  • dsh-git — 按会话隔离的工作树 Review 面板。

模型体验

Dock UI 贡献

#### 模型看到的内容

无。插件只注册浏览器布局、界面、持久化和客户端服务;不会增加提示词、工具 schema、消息或模型可见结果。

#### Token 影响

不会向模型请求或响应增加 token。

#### KV Cache 影响

无。插件不会改变模型输入,因此不会使主请求缓存前缀失效或位移。

已知限制

  • Frame adapter 依赖当前 AppFrame 的语义锚点和三列模板;宿主不满足该契约时会明确报错。
  • Dock 有意不实现任意嵌套的编辑器分屏或弹出浏览器窗口。
  • 布局仅保存在当前浏览器,不会跨 profile 或设备同步。

许可证

MIT