dsh-ui-scale
キュレーション掲載メンテナンス: 活発juliankang4/dsh-ui-scale
DeepSeek Harness の Web UI とデスクトップアプリの表示倍率を 50%〜200% で設定できます。
$ dsh plugin add dsh-ui-scale1
スター
0
フォーク
TypeScript
言語
MIT
ライセンス
2026-10-04
作成日
2026-10-17
最終プッシュ
README
dsh-ui-scale
Make the DeepSeek Harness interface larger or smaller, from 50% to 200%. Works in the browser (dsh web) and in the Desktop app.
Install
dsh plugin --profile web add dsh-ui-scale
In the Desktop app, open Plugins, choose Add plugin, enter dsh-ui-scale and install it.
Use
Open Settings > General > Interface scale. There are three ways to set the scale:
- Drag the slider. It moves in 5% steps and applies the scale when you release it.
- Type a percent in the field and press Enter or click elsewhere. The value is rounded to a whole percent, and a value below 50 or above 200 is set to the nearest limit.
- Click a preset: 100, 110, 125, 150, 175 or 200%.
The scale is saved in the profile configuration. It survives restarts and is applied before the main window appears. Each profile (web, desktop) keeps its own value, and every browser signed in to the same profile shares it. In dsh 0.2.0 a page opened from another computer can change the scale only for itself until it reloads, because that version does not save settings from such pages.
What scales
Everything in the window: sidebars, conversation, composer, pages, Settings and other dialogs, and the menus, tooltips and pop-ups attached to them. The layout behaves as it would under browser zoom: at a high scale in a small window the left sidebar collapses, panels keep their share of the window, and dragging a divider follows the pointer.
The Desktop app's native menus and window controls keep their normal size.
Desktop window size
The Desktop app opens its window at the same default size on every start. With this plugin enabled it opens at the size and position you left it in. The window is not resized past the screen, and a position on another display is not restored, so the window opens on the main display at the saved size. Full screen is not saved.
Limits
The plugin applies CSS zoom and converts what the page measures to the zoomed scale: element positions and sizes, the window and page viewport size, pointer positions, SVG screen matrices, wheel deltas, media queries (widths and resolutions) in style sheets and matchMedia, and the viewport units in style sheets and inline styles. Some things fall outside that conversion:
- A viewport size (
vw,vh) in a style rule added from script withinsertRule, in a constructed style sheet added withadoptedStyleSheets.pushinstead of assignment, inside a shadow root, or on a MathML element is not converted. Such an element can come out larger than the window. IntersectionObserverrectangles and touch coordinates still use the real window size.- A size measured in the same script step that sets an inline viewport size or adds a style element still sees the unconverted value; the next step sees the converted one.
- Every script on the page sees the converted values, including other plugins. The one exception is the Desktop account Usage and Top up area, whose position and size read in window pixels so the app can place those pages.
- A PDF that is already open keeps its sharpness from before a scale change until it is reloaded, opened again or zoomed in the preview.
In a browser you can also use the browser's own zoom; the two multiply.
Configuration
| Field | Default | Description |
|---|---|---|
scale |
100 |
Interface scale in percent, a whole number from 50 to 200. |
The settings row writes this field. You can also set it in the profile's cordis.patch.yml:
- id: ui-scale
name: dsh-ui-scale
config:
scale: 125
Development
Use Node.js 24. Install dependencies with npm ci. Run npm run check for formatting, lint, JavaScript syntax and strict TypeScript checks. Run npm test to build and test the shipped bundle.
Type suppressions must use @ts-expect-error: <reason>. Inline lint suppressions must name one rule: biome-ignore lint/<group>/<rule>: <reason>. Blanket and file-wide lint suppressions are rejected. Non-null assertions remain allowed where TypeScript cannot follow an existing guard. The npm-generated lockfile is not reformatted.
Pull requests and pushes to main run the same check and test commands. The CI passed summary succeeds only when both jobs succeed; failed, cancelled and skipped jobs fail the summary.
Tested with dsh 0.2.1-rc.2 (web in Chrome and the macOS Desktop app) and dsh 0.2.0-rc.2 (web in Chrome).
UI・体験 の他のプラグイン
dsh-tui
by ccch1mneyyy
Claude Code 風の全画面 TUI プラグイン。鯨トップバー、リアルタイム状態行、思考ストリーミング、Esc 二連打の巻き戻し、コンテキスト進捗バーと TPS メーター搭載。npm で一発インストール
dsh-better-sidebar
by omdsh-dev
ファイル表示・編集、ターミナル、Git、サブエージェントのページを内蔵し、サードパーティによる新規サイドバーページの登録にも対応する拡張可能なサイドバー基盤
dsh-tianshu-tui
by huiliyi37
DeepSeek Harness 向けインタラクティブ TUI:セッションワークスペース、画像 E2E(クリップボード/ビジョン橋)、スラッシュ補完、承認カード、推論可視化の純粋な表示層
dsh-claude-style
by nwflower
DeepSeek HarnessのWeb GUIをClaude Code Desktop風に整えるテーマ。見慣れた配色とデスクトップ感のある操作環境を提供します。
