DSH Plugins Marketplace

DSH Plugins

Plugins

/

UI & Experience

/

dsh-web-preview-float

d

dsh-web-preview-float

Manifest valid

Google AI Studio-style floating preview for the Web UI: a draggable/resizable iframe preview with aspect-ratio and resolution presets, plus a VS Code-style code window with direct editing, confirmed w

ToolsUI (client)SkillshasBundlePatch

dsh-web-preview-float

DeepSeek Harness(DSH)Web UI 的悬浮预览插件:两个独立、可拖拽、可拉伸、可缩小的悬浮窗,让你在等待模型回复或改代码时实时预览项目,类似 Google AI Studio。

  • 预览窗:<iframe> 直连项目 dev server,URL 自动从项目 package.json 脚本探测(Vite→5173、Next/CRA→3000、Astro→4321,可手改)。
  • 代码窗:工作区文件树 + 只读代码预览(懒加载目录,点文件看内容)。

只依赖官方扩展点(ctx.webServer / ctx.fs / ctx.sandboxPolicy + 自包含 DOM portal),不改 DSH 核心,因此可作为独立插件发布、被 dsh-plugin 生态收录。

安装

作为 profile 的 patch 层安装(DSH 官方插件市场 / bundle 机制):

# 该插件自带的 cordis.patch.yml 会插入这一行
- id: dsh-web-preview-float
  name: '@dsh-external/dsh-web-preview-float'

安装后重启 dsh web,浏览器里会出现两个悬浮窗。

开发

pnpm install
pnpm run typecheck
pnpm run test
pnpm run build      # 产出 lib/index.js(node 半)+ lib/client.js(浏览器半)

@deepseek-ai/cordis 是 vendored 包、不在 npm 上,本地开发请把 package.json 里 devDependencies 的 link: 指向你的 harness checkout 的 vendor/cordis。

结构

src/index.ts            # node 半:/__web_preview_float_fs 路由(list/read/dev)
src/invariant.ts        # invariant companion
src/client/index.tsx    # 浏览器半:挂载两个悬浮窗到 document.body
src/client/FloatingWindow.tsx  # 拖拽/拉伸/缩小
src/client/PreviewWindow.tsx   # 预览窗(iframe)
src/client/CodeWindow.tsx      # 代码窗(文件树 + 代码)
src/client/CodeView.tsx        # 文件树 + 代码阅读器
dsh.plugin.json         # 插件清单
cordis.patch.yml        # profile patch 层

说明

  • 预览窗支持常用宽幅比预设(16:9 / 4:3 / 3:2 / 21:9 与手机竖屏 9:16 / 9:18 / 9:19.5),可选「锁定比例」让手动拉伸保持比例,也可直接输入宽×高自定义;另有常用分辨率预设(1920×1080 / 1366×768 / 390×844 等),一键把窗口放大到指定分辨率(超出屏幕时自动缩放适配)。
  • 代码窗采用接近 VS Code 的布局:编辑器标签页、活动栏(可开关资源管理器)、文件树侧栏、带行号的可编辑编辑器 + 状态栏(Ln/Col、语言、UTF-8)。
  • 代码窗可直接编辑:点「编辑」进入编辑态,改完后点「保存」(或 Ctrl+S)弹出确认框;确认后写入文件,并作为 web-preview/code-edit 会话事件记录到 DSH 日志;「取消」保留草稿,「还原」丢弃修改。
  • 两个悬浮窗标题栏都有放大/还原按钮(⛶ 一键放大到贴合屏幕);最小化成胶囊后也可直接拖动。
  • 二进制/超大文件(>256KB)会提示「文件过大」;写操作限制在 1MB 内。
  • 语法高亮未做(纯文本显示),后续可加 shiki。
  • 悬浮窗位置/大小状态在内存中,刷新后回到默认位置。

License

MIT

Compatibility

DSH 0.1.7-rc.1: failedDSH 0.1.7-rc.2: failedDSH 0.2.0-rc.1: failed

Versions

Latest versionPublishedSize
0.1.0——

Comments

Loading…

Similar plugins

dsh-ui-web

by CAPTAIN1275

DSH web GUI right-panel system: a pixel-faithful re-implementation of AionUi's Explorer + Preview columns (file tree, filename search, git changes, multi-tab preview of 10+ formats) driven by real hos

UI & ExperienceManifest valid

★ 41

↓ 81/wk

Apache-2.0

TypeScript

Oct 27, 2026

dsh plugin --profile web add @captain1275/dsh-client-ui-aionui-panel

by yishengjun8

允许显示工作区的文件树、浏览文件内容、并且允许对话中嵌入引用的文件内容、自由切换思维分支视图,目标是和VSCode相类似的开发体验

UI & ExperienceTerminal & ClientsManifest valid

★ 4

MIT

JavaScript

Oct 19, 2026

dsh plugin --profile web add @yishengjun8/dsh-workspace-studio

by sunyuhuirong

Codex-style right-edge workspace for the dsh web UI: file tree with preview tabs (Markdown/source), an embedded browser (direct/proxy iframe), and a side chat streaming from the host LLM — all as swit

UI & ExperienceManifest valid

★ 0

MIT

JavaScript

Sep 3, 2026

dsh plugin --profile web add fsviewer
dsh-md-preview

No screenshots

Dockable Markdown preview for the DSH Web UI: side-by-side with the conversation, a per-session recently-read .md list, local relative-path images render in place, and clicking an in-chat .md referenc

Themes & SkinsDevelopment & InfrastructureManifest valid

★ 0

dsh plugin --profile web add dsh-md-preview

by heiheiha798

Web UI plugin that folds each staged response's think and tool calls into per-segment bounded, scrollable slide windows with a configurable height, keeping every intermediate response visible.

UI & ExperienceDevelopment & InfrastructureTerminal & ClientsManifest valid

★ 1

MIT

JavaScript

Sep 12, 2026

dsh plugin --profile web add dsh-plugin-response-window

A Codex-style right side panel for the DSH Web UI — session artifacts browser (live file tree, scan include, preview, reveal) plus a side chat that forks the current session with a model picker, human

Workflow & AutomationUI & ExperienceManifest valid

★ 0

dsh plugin --profile web add dsh-sidepanel