DeepSeek Harness Plugin Hub

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

探索

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

社区

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

相关链接

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

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

Wide Conversation — DeepSeek Harness 插件(DSH Plugin)
← Plugins
W

dsh-wide-conversation

Wide Conversation

DSH web client 插件:将对话栏固定为其宽度的可配置百分比(默认为 100%,即全宽),而不是使用内置的 680-920px 自适应阅读宽度,并在 Settings > Plugins 下提供一个卡片。

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

npx -y @deepseek-ai/dsh plugin --profile web add github:yunxiyang/dsh-wide-conversation#dc5960645294db26374ce656ea119bff40da83c4
README兼容性版本

兼容性与来源证明

Wide Conversation 以 dsh-wide-conversation 发布,当前版本为 0.2.0。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

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

版本

0.2.0stable
2026/9/14

相关插件

正在加载相关插件…

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

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

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

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

认领这个 Plugin →
报告问题
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录

相关插件

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

Web App@deepseek-ai/dsh-web-appdsh 浏览器界面捆绑包:位于 dsh-base 之上的 Web 补丁层,加上运行时粘合插件(提供前端 dist、Web 界面提示符、bash 运行时变量和 URL 行)Experimental Agent Team Web Profile@deepseek-ai/dsh-experimental-agent-team-web-profile用于 Agent Teams Remote 和 UI 插件的实验性 Web 配置层Client Ui Task Board@linxin666/dsh-client-ui-task-board面向 DSH Web GUI 的主机权威任务面板,支持实际会话执行、主机 cron 调度以及可选的跨平台空闲睡眠保护;以挂载方式提供,无需修改 DSH 源代码。Pet@linxin666/dsh-pet适用于 dsh Web GUI 的多宠物伴侣插件:由注册表驱动的浮动宠物,可响应模型活动,支持为每只宠物命名、抚摸/喂食互动以及亲密度评分

README

dsh-wide-conversation

Give the DSH web client a conversation column that uses the width it has.

The built-in layout sizes the transcript from --dsh-chat-content-width: clamp(680px, 64% of the column, 920px): on a wide window a long conversation still reads in a narrow strip with large empty margins. This plugin pins that axis to a configurable percentage of the conversation column — 100% means the transcript spans the whole column — and exposes the percentage as a collapsible card under Settings > Plugins.

简介 / 快速上手(中文)

这个插件让 DSH 桌面/网页客户端的对话列按可用宽度铺开。

  • 内置布局把正文宽度锁在 clamp(680px, 列的 64%, 920px) —— 宽窗口下长对话仍挤在一条窄栏里,两侧留大片空白。本插件把这条宽度轴改成对话列宽度的百分比,100% 即铺满整列。
  • 百分比存在 Host 设置文档里(wide-conversation 命名空间),因此 设置 > 插件 里会出现一张 Wide Conversation 卡片:默认收起,点标题行展开后可在 40–100 之间调整,改完立即生效。收起时标题行右侧直接显示当前百分比。
  • 安装:dsh plugin --profile <name> add dsh-wide-conversation,然后重启该 profile。
  • 插件只影响客户端布局,不碰模型、网络或会话日志,也不写入任何自定义会话事件。

Install

Install into a profile with the dsh CLI. Its plugin subcommand forwards to pnpm inside the profile directory, so add/remove behave as usual:

dsh plugin --profile <name> add dsh-wide-conversation

Then restart the profile (desktop: Settings → Desktop settings → Restart, or quit and reopen). The profile's package.json gains the dependency and the dsh.profile.bundles entry, and the bundled cordis.patch.yml inserts the plugin into the layer stack — no manual patch editing is required.

To remove it:

dsh plugin --profile <name> remove dsh-wide-conversation

Working from a local checkout instead? Point the profile at the directory:

dsh plugin --profile <name> add link:/path/to/dsh-wide-conversation

Config

Settings card Wide Conversation (Settings > Plugins) — collapsed by default, opened by clicking its header, which also shows the current percentage while collapsed. Or edit the same namespace directly in the Host settings document. Both surfaces write the same namespace; the Host schema below is the authority the value is validated against.

fielddefaultrangemeaning
widthPercent10040–100Width of the conversation content as a percentage of the conversation column. 100 spans the whole column.

Values outside the range are rejected by both the card and the schema, so a hand-edited settings document cannot drive the column outside it.

How it works

The conversation skeleton resolves its entire horizontal axis from --dsh-chat-content-width, declared on its own root and overridden by a dragged --dsh-chat-user-width. Both land as inline styles on the skeleton root, so an ordinary stylesheet rule loses to the style attribute — the override carries !important.

  1. lib/client.js injects one stylesheet that pins both custom properties to calc(var(--dsh-wide-percent, 100) * 1%), reclaims the clearance the read column reserved for the old centred 920px measure, and hides the drag handles the percentage now supersedes.
  2. The live percentage is published once onto document.documentElement as --dsh-wide-percent, so a change repaints on the next style recalculation instead of re-creating the stylesheet or re-rendering React.
  3. lib/index.js registers the wide-conversation settings namespace on the Host. That namespace is what makes the card appear: the configurable tab dispatches its cards by settings namespace, so a namespace the Host serves and a card claiming it are the two halves of one entry. This is also why the preference lives in the settings document rather than in localStorage.
  4. The card itself is a disclosure, matching the built-in plugin cards: a collapsed row using their tokens and radii, opening to the single width field. A contributed card inherits no styling from the settings section, so it restates what they use.

The composer card is derived as content + 32px, so it follows the axis automatically.

No build step

The browser half is a hand-written window.__ModuleLoader__.load closure factory — the only shape the client module system accepts — so the package ships no bundler, no build script, and no client dependencies of its own. react arrives through the injected require table; @deepseek-ai/schemastery resolves through the profile's own node_modules, the same way the shipped client plugins reach it.

Compatibility

  • Client platform: web (dsh.client.platform, i.e. the desktop and browser GUI). There is no terminal-face behavior.
  • Writes no session events, so it cannot affect session-log loading.
  • The stylesheet rescapes nothing outside the conversation area, but it does target the skeleton by attribute ([data-phase] + [data-conversation-scroll]) rather than by hashed CSS-module class name, so it keeps working when class names change. If a future build renames those attributes, the plugin degrades to a no-op rather than breaking the layout.

License

MIT