DeepSeek Harness 插件

Canary-Builds/dsh-mobile-ui

Star 数 ★ 0 下载量(近 30 天) 868 分类 UI 增强 收录于 2026-09-06 npm @canary-builds/dsh-mobile-ui

为 DeepSeek Harness 现有 Web 界面加上触屏友好的导航、布局微调与独立 PWA 样式。

安装

# npm 包(预构建)

dsh plugin --profile web add @canary-builds/dsh-mobile-ui

# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)

dsh plugin --profile web add github:Canary-Builds/dsh-mobile-ui

装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。

README

该插件的 README 只有英文版本。

A mobile/PWA-first UI redesign for the DeepSeek Harness (DSH) web GUI, delivered as one Cordis plugin with a host half and a browser half. minimal, app-like: the sidebar gets out of your way, the reading area wins, and the app installs as a proper standalone window.

Everything visual is scoped to app windows and touch devices (display-mode: standalone/fullscreen/minimal-ui, or hover:none + pointer:coarse). Desktop browser tabs are untouched and render the stock UI.

Screenshots

Select a screenshot to view it at full size.

The connector settings example shows DSH Connect, installed separately. Mobile UI changes the layout of the existing Harness interface.

Features

Sidebar (app-style)

  • Collapsing the sidebar hides the 56px icon rail entirely — the chat area spans the full screen width
  • A floating whale launcher (the DSH whale mark, theme-following) appears centered in the first column's header band; click to expand
  • Expanding opens the sidebar as a fullscreen overlay covering the chat instead of pushing it
  • Opening a session from the list auto-collapses the sidebar (workspace group rows and row menus are ignored)

Top bar

  • Title row spans the full width; tab row (Chat / Trajectory) gains two right-aligned controls: the agent-preset mode chip (abbreviated to STD / PTC / MIN / CTR, en+zh) and the session-log export as a bare icon-only button

Settings

  • The settings sheet fills the entire screen (no margins, no radius)
  • Section nav collapses to an icon-only rail (labels stay in the accessibility tree)
  • Picker rows (Permission / Agent preset / Enter behavior): selector on top full-width, description filling the area below

Chat area

  • Side padding reduced (32px → 12px left / 6px right), reserved scrollbar gutter removed
  • User bubbles: fit-content size, right-anchored, uncapped width (extend all the way left when long), square right corners, overflow-safe

PWA

  • Host route serves a standalone-window manifest (display: standalone + display_override), so the GUI installs as a real app window — the Android notification bar stays visible (the shipped manifest uses fullscreen, which hides it)

Install

Requires Node.js 22.19+ and DeepSeek Harness. Install into your web profile:

dsh plugin --profile web add @canary-builds/dsh-mobile-ui

Restart DSH and refresh the browser. To update, run the same command again and restart. The package includes its Profile Bundle patch and prebuilt browser module; no separate installer, build, or manual composition row is needed for a fresh install.

Migrating from Splash

This is the successor to dsh-plugin-splash in the renamed Canary-Builds/dsh-mobile-ui repository. Remove the old splash row that names dsh-plugin-splash from your profile's cordis.patch.yml, then run:

dsh plugin --profile web remove dsh-plugin-splash
dsh plugin --profile web add @canary-builds/dsh-mobile-ui

If you installed the interim @canary-builds/dsh-wpa package, remove it with dsh plugin --profile web remove @canary-builds/dsh-wpa before installing Mobile UI.

Restart DSH. Keep other profile overrides intact. Do not load both packages together; both own the same UI behavior and manifest route. GitHub redirects the previous repository URL, but npm package names do not redirect automatically.

Compatibility

The redesign is implemented as scoped CSS keyed off the shipped UI's DOM: stable public attributes (data-sidebar-collapsed, data-details-collapsed, slot wrappers) wherever possible, plus CSS-module class hashes for elements that expose nothing else. Those hashes are build-specific — the plugin targets the 0.1.1-rc.x DSH web frontend and may silently no-op (never break) on a version whose bundles re-hash. If a feature stops applying after a DSH upgrade, update the hashes in lib/client.js (serve /plugins/@deepseek-ai/dsh-client-ui-*/client.js on your install and grep the new prefixes).

Behavior notes

  • The manifest override takes precedence over the dist fallback server; disabling the plugin row restores the shipped manifest on restart
  • All effects are fiber-owned: removing the plugin row cleanly reverts every style, slot entry, listener, and route
  • The floating launcher and auto-collapse never run in desktop browser tabs

License

MIT

Development and releases

Run npm test and npm run test:package. See RELEASING.md for automated npm publication and GitHub releases. Report an issue · Canary Builds.

内容来自项目 README(GitHub)↗

链接

同类插件

查看整个分类 →

社区评论

评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。