dsh-design-studio

DSH PLUGINUI 与外观

仓库 OrderG-X/dsh-design-studio

UI 与外观 L4 · 沙盒安装通过 安全审查:低风险 可信度:银 可安装插件
安装这个插件

Design canvas for DeepSeek Harness (DSH): screens in device frames, click an element to edit it, versions, export, phone preview. · DSH 设计工作台:模型画的界面摆上画布,点一下就改。

一句话选型结论

按资料字段整理

dsh-design-studio 是UI 与外观类的 DSH 可安装插件,验证等级 L4 · 沙盒安装通过,安全审查为低风险,有可直接复制的安装命令。验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么;涉及密钥或系统权限的,建议先在隔离环境试装。

分类UI 与外观 收录类型可安装插件 验证等级L4 · 沙盒安装通过 安全审查低风险
验证等级 L4 L4 · 沙盒安装通过
GitHub 星标 11 复刻 0 · 未关闭 issue 1
最近更新 2026-10-29 创建于 2026-10-19
README 35.5 KB 正文体量,越大说明说明书写得越细

安装

可安装插件
在 DSH 里执行,装完用 dsh plugin list 确认已挂上;标了 L4 / L5 的命令已在沙盒里真实跑通
dsh plugin --profile web add github:OrderG-X/dsh-design-studio
  1. 1
    确认版本与运行环境

    仓库没有标注兼容版本与 Node.js 要求,先确认你的 DSH 版本能装,再继续。

  2. 2
    执行安装命令

    在 DSH 里执行上面的命令;多包仓库要注意区分具体子包名,别装错包。

  3. 3
    确认已挂载

    用 dsh plugin list 查看列表里是否出现这个插件,出现即挂载成功。

  4. 4
    试跑并检查权限

    加载后跑一个最小用例,确认它能正常工作;同时看它申请了哪些文件、命令或网络权限。

兼容 DSH 版本未标注版本不匹配时安装会报错
Node.js 要求未标注来自仓库 package.json 的 engines 字段
前置依赖无需要同时安装的同级依赖
npm 包名未发布到 npm可用 npm view 查看包信息

能做什么

UI 与外观
字段来自项目仓库与公开索引,中文说明由本站标注

适用场景

内容创作

上游标签

ai-agentcanvasdeepseekdeepseek-harnessdesign-canvasdesign-toolsdshdsh-pluginhtml-previewlive-previewmockupprototypingui-design

验证等级与安全审查

L4 · 沙盒安装通过
自动化流程结论,不是人工审核
验证等级L4 · 沙盒安装通过安装命令在隔离沙盒内真实执行成功,无依赖错误
安全审查低风险静态分析结论,未标注不代表已通过审查
仓库健康度活跃按仓库活跃度与最近更新时间给出
可信度银综合仓库活跃度与验证结果

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 验证等级 L4:在沙盒里真实装过,依赖能装上,不是纸面声明。
  • 静态安全审查为低风险,没有发现明显可疑行为。
  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有声明 Node.js 版本要求,版本不匹配可能装不上。
  • 验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么。

更适合

  • 需要在UI 与外观场景里给 DSH 补能力的人。
  • 想装完就能用、不想自己排依赖的人。
  • 能接受在本地装依赖、愿意自己确认权限的人。

不太适合

  • 只使用 DSH 官方内置能力、不接受第三方插件的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
插件验证等级安全审查星标兼容版本安装命令
dsh-design-studio当前 L4 · 沙盒安装通过 低风险 11 未标注 有
awesome-dsh-plugin L4 · 沙盒安装通过 低风险 1.8 万 0.1.1-rc.2 有
deepseek-balance-whale-widget L4 · 沙盒安装通过 低风险 4,492 0.1.7-rc.2 等 2 个 有
dsh-better-sidebar L4 · 沙盒安装通过 低风险 4,112 0.1.7-rc.2 等 10 个 有
dsh-deep-whale L4 · 沙盒安装通过 低风险 2,470 未标注 有
deepseek-design L4 · 沙盒安装通过 低风险 1,438 未标注 有

仓库档案

UI 与外观
字段来自项目仓库与公开索引,中文说明由本站标注
作者 / 维护方OrderG-X仓库 dsh-design-studio · 默认分支 main
分类UI 与外观ui
收录类型可安装插件声明了 dsh.bundle、可用 dsh plugin add 安装的条目
开发语言未标注仓库主语言
许可证MIT商用或二次分发前请确认条款原文
星标 / 复刻 / issue11 / 0 / 1收录时的数值,非实时
创建 / 更新2026-10-19 · 2026-10-29最后推送 2026-10-27
本站收录2026-10-30首次进入本站目录的时间

README 全文

35.5 KB
作者原文,中文版优先;只做安全转义,不改内容

简体中文 ·
English

> 一句话:DeepSeek Harness(DSH)插件,模型做网页、App 界面、海报、幻灯片时,右侧栏画布实时显示每一屏,套上手机 / 浏览器外框;点一下元素或框一块区域,补一句话就改。每轮自动存版本,能导出展示图、PDF、PPT,手机扫码看;一键体检文字溢出、对比度、点击区。
>
> 什么时候用:「做个落地页」「设计一个 App 界面」「做张海报」「做几页幻灯片」。新会话可以直接选「设计模式」。
>
> 安装:dsh plugin add https://github.com/OrderG-X/dsh-design-studio/releases/latest/download/dsh-design-studio.tgz,重启 DSH。

让 DSH(DeepSeek Harness)做界面设计时像 Google Stitch / Claude Code 桌面端那样:模型做网页、App 界面、海报、幻灯片时,右侧栏「设计工作台」实时显示——一屏一屏生成出来,在画布上并排摆好,套上手机 / 浏览器外框;看到哪里不对,点一下那个元素、或拖出一块区域,它就整理成一段文字放进输入框,补一句「改成橙色」发出去,模型照着源码改,改过的地方在预览里闪一下。

改一句「主色换成深海蓝」→ 三屏一起变;翻到上一版、左右拖动对比;一键导出整套展示图:

导出的展示图(插件直接生成,没有再加工):

安装

dsh plugin add https://github.com/OrderG-X/dsh-design-studio/releases/latest/download/dsh-design-studio.tgz

装完重启 DSH(客户端代码在 DSH 启动时打包)。DSH「插件」页里显示为「设计工作台」。

开发时可以直接链到本地目录:dsh plugin --profile desktop add link:/path/to/dsh-design-studio,改了客户端代码同样要重启(lib/picker.js 每次现给,不用重启)。

用起来是什么样

  1. 做设计时自动打开:模型加载了设计技能、调了 preview_page,或页面写了设计类型标记(`)之后,再写.html文件或用命令起开发服务器(npm run dev这类),右侧栏自动弹出「设计工作台」。别的任务写的网页不弹,只在标题栏按钮上亮个蓝点,点开能一键预览;curl`、浏览器工具去看别的端口,一律不当成要预览的页面。
  2. 分类型显示:网页(浏览器窗口)、App(手机外框带灵动岛)、平板、海报(1080×1350)、幻灯片(16:9)、邮件。模型调工具时说明类型,或在页面里写 `(可带尺寸,如poster 1080x1920`);工具栏「类型」菜单随时能换。
  3. 多屏画布:同一个目录里的几个 HTML 文件按生成顺序排成网格,能拖、能缩放(触控板双指滑 = 平移,捏合 / ⌘ 滚轮 = 缩放,右下角适合画布)。点一下选中一屏,双击只看这一屏;工具栏「画布 / 单页」切换。开发服务器可以让模型给几个路由并排看。
  4. 看着它生成:模型干活时右侧先放一个占位;新的一屏写出来,元素从上到下依次浮现,一道扫描光带过去;这一轮里还在出新屏时,画布末尾留一个「生成中…」的占位。模型用提问卡问你时,底部提示换成橙点「模型在等你回答」,不再转圈。
  5. 实时刷新,不白屏:本地 HTML 所在目录里任何文件一改,后台先载好新的一帧,再淡入换上来(滚动位置不丢);开发服务器走它自己的热更新(Vite / Next 等的 WebSocket 照常通)。
  6. 改了哪里一眼看到:刷新 / 热更新前后各记一份页面「指纹」,改过、新加的元素在预览里亮一下(带一道扫光),都不在屏幕里就先滚过去;底下报「已更新 index.html · 1 处改动」。改的是共用的 CSS,画布上每一屏都会换帧、各自闪改动;只改某一屏的 HTML,别的屏不动。
  7. 模型在干活时:预览四周一圈流光,底下标「模型正在工作」或「正在写 style.css」。
  8. 选择:点工具栏「选择」,鼠标移到哪个元素就框哪个(带标签和尺寸,画布缩小时标签照样看得清;画布里点哪一屏都行):
    - 点一下:选这个元素
    - 拖一块:选区域,里面的主要元素一起带上(最多 10 个)
    - Esc:取消
  9. 进输入框:选好的内容整理成一段文字插进输入框(插不进时复制到剪贴板),选中的地方留一个虚线框,例如:
〔选中元素〕a.btn-order「立即点单 →」
文件:/Users/me/site/index.html
位置:section.hero > div.actions > a.btn-order
HTML:立即点单 →
样式:165×56 · color: rgb(255, 255, 255) · padding: 16px 36px · border-radius: 999px

React / Vue / Svelte 的开发模式下还会带上组件名和源码位置。
10. 内置设计规范:插件带一个 DSH 技能 ui-design,模型做界面前会加载:先定类型和画幅、先写 tokens.css(设计变量)、一屏一个文件;排版 / 间距 / 字号阶梯 / 配色 / 对比度 / 中文排版的规则,避开「AI 味」的清单,写完的自查表;网页、App、海报、幻灯片、邮件各有细则。从零做一套新设计时,模型先问两三个关键问题(给谁用、什么气质、要哪几屏),再出三个方向的首屏(home-a/b/c.html,各带一套配色字体)并排摆在画布上,你挑一个它再做全套,没选中的挪进 drafts/(问的时候已经挑了气质,三个方向就都在这个气质里,换版式和重点);说「直接做」、或者需求已经很具体,就跳过这一步。在输入框打 /ui-design 也能手动加载。
11. 设计规范面板:工具栏调色板按钮,列出这套设计 :root 上的设计变量,按颜色、字体、字号、间距、圆角、阴影分组,带色块和样例。点一个放进输入框(〔设计变量〕--brand: #c26a32 加文件位置),补一句「换成墨绿」,模型改这一个变量,所有屏一起变。还没有变量时,一键让模型按规范建一份。
12. 导出:工具栏下载按钮,或画布上选中一屏后标签旁的按钮。可以导出这一屏(带手机 / 浏览器外框,或纯画面)、整页长图,以及几屏合成的一张展示图(品牌名做大标题、背景和主色取自设计变量,适合直接发朋友圈 / 小红书 / 作品集)。也能把所有屏导成 PDF(每屏一页,网页 / 邮件是整页长图,页面尺寸跟着画幅)或 PPT(每屏一张幻灯片,整页图片,幻灯片比例跟着画幅,PowerPoint / WPS / Keynote 都能打开)。屏和屏之间的跳转照样能点:PDF 里点「去点单」翻到菜单那页(每屏还有一条书签),PPT 放映时点了跳到那一张,导出的文件就是能点的原型。文件存到设计目录的 exports/,图片同时复制到剪贴板,点「打开文件夹」直接定位。
13. 版本:每轮对话开始前、结束后各自动存一版(只存设计文件,名字就是你那句话,例如「主色换成深海蓝」;点选元素发出去的,名字是「「3.2 km」 · 改成绿色」这样,不会是一长串选择器)。工具栏时钟按钮列出所有版本;点一版就看当时的样子(画布 / 单页都行),点「对比」左右拖动把手,比较那一版和现在;「回到这一版」把文件写回去(回之前先把现在的存一版,随时能再切回来)。
14. 深色模式:页面写了深色样式(@media (prefers-color-scheme: dark),或 [data-theme="dark"] / .dark),工具栏多一个月亮按钮,一键切换看深色版,导出的图片也是深色的。
15. 再出两版:画布上选中一屏,点标签旁的闪光按钮,让模型给这一屏出两版不同方向的设计(login-b.html、login-c.html),紧挨着原版排在画布上(开局的三个方向 home-a/b/c 也一样,按 a、b、c 排)。挑中哪版就点它标签旁的对勾「就要这个」:输入框里写好「用这一版、其他版本挪进 drafts/、接着做全套」,发出去就行。
16. 在手机上看:工具栏扫码按钮,右侧栏出一个二维码,手机(和电脑连同一个 Wi-Fi)相机一扫就在手机浏览器里打开这套设计,按真机尺寸看、点得动。电脑上点哪一屏,手机跟着跳;模型改了设计,手机自动刷新。面板上看得到「手机已打开」,也能复制链接、随时停止;30 分钟没人看自动关。
17. 可点原型:屏和屏之间用链接连起来(` 或data-href,内置技能会让模型这么写),画布上选中一屏,就画出它跳去哪、从哪跳来的箭头;隔着别的屏的箭头从屏和屏之间的空当、标题上面绕过去,不穿过中间那屏。点工具栏播放按钮进入演示:在预览里点按钮跳到对应那一屏,前进从右边滑进来、返回从左边;顶上能后退、从头来、退出(Esc)。 18. **多尺寸并排**:工具栏第三个视图按钮,把现在这一屏按几档宽度并排看:网页是手机 / 平板 / 桌面,App 是小屏 / 标准 / 大屏(小屏是 SE 那种矮屏,没有灵动岛),平板是三种尺寸,小屏挤不挤一眼看出来。并排时也能选择元素,带上是哪一档屏宽。 19. **预览里直接改字**:工具栏「改字」按钮,点页面里的任意文字就地改,回车保存、Esc 取消。本地 HTML 直接写回源文件(只改那一处,改前改后各存一版,能回退);开发服务器的页面,或源码里找不到那段字时,改成一句「把「…」改成「…」」放进输入框,交给模型改。 20. **参考图**:把图片拖进右侧栏、在右侧栏里粘贴,或在设计规范面板点「照参考图改风格…」。图片存进设计目录的refs/(还没有设计目录时存插件缓存),右侧栏从图里取出主要颜色(带占比,少见的鲜艳点缀色也会单独挑出来)和整体深浅,连同图片路径和一句「照这张图的风格改,先更新 tokens.css」放进输入框。 21. **设计体检**:工具栏听诊器按钮,在画好的页面上实测:文字超出屏幕、被截断、超出框、叠在一起,文字和背景对比度不够(按 WCAG,大字 3:1、正文 4.5:1),点击区太小(App 44、网页 24),字太小,图片没加载出来或被拉变形,一行太长(网页 / 邮件 / 平板,中文超过约 45 字、英文约 90 个字母),按钮、价格这种短字被挤得断了行(「再来一 / 单」),字号太杂。画布上每一屏都查,问题按屏列出来,预览里在对应位置标上编号(严重的标红);点一条就滚过去闪一下。点「交给模型修」,清单(哪一屏、哪个元素、什么问题、差多少)放进输入框,发出去模型逐条改源文件。模型每干完一轮,右侧会自己量一遍:面板开着就直接刷新,关着就在按钮上标出还剩几个问题(没有数字就是都好了)。点一条时,那一屏要是被面板挡着或在画布外面,画布自己挪过来。模型自己也能体检:设计模式里它写完、改完会调check_design——插件在电脑上另开一个看不见的 Chrome / Edge,按真实尺寸打开每一屏量一遍(一次可以量几种尺寸,比如 375×667 的矮屏和 430×932 的大屏,也能量深色),清单里还有每屏的测量数字:页面多高、顶栏 / 底栏多高、离内容多远。这条路另外查四类问题:固定的顶栏 / 底栏压住了内容或贴得太近(滚到底最后一行被底栏挡住这种;滚动中从栏下面经过不算)、页面脚本报错、样式表 / 脚本 / 字体没载到、跳转指向不存在的页面。对比度不够、字太小这两类还写明由哪条样式规则决定、在哪个文件第几行;严重的问题(被栏压住、文字叠在一起 / 被截断 / 超出框、超出屏幕、图片没出来、对比度很低)自动附上那一块的局部截图(最多 4 张,按发现时的尺寸和滚动位置截;红框圈出元素、框上标差多少,叠着的另一个用橙框;被栏压住的把栏调成半透明,透出下面的字;挨着的几条共用一张),模型不用再单独截图对照。文字叠在一起时还找出可能的原因(负 margin、绝对定位、transform),写明那条规则在哪个文件第几行;同一个原因引起的几处并成一条。再量一次时写「比上次修好几个、新出几个」,新出的标出来;有没量成的就明说检查不完整。不用右侧栏开着;电脑上没有 Chrome / Edge 时退回右侧栏量。 22. **调样式**:工具栏滑块按钮,点页面里的一个元素,右边出属性面板:字号、字重、文字颜色、背景、圆角、上下 / 左右内边距(排成一行 / 一列的容器还有间距)。拖滑块页面上马上变;颜色旁边列着这套设计的色块,元素原来用的是设计变量(如--brand)会标出来。「写回文件」把改动写进 HTML 里这个元素的style属性(改前改后各存一版,能回退);「交给模型」把「字号 16px → 18px」这样的清单放进输入框,让模型写进样式表、能用设计变量就用设计变量;还附上每项现在由哪条样式规则决定、在哪个文件第几行(行内 style 盖过了规则也说清楚),模型不用再翻源码找。没写回就退出,页面恢复原样。开发服务器的页面只能交给模型。 23. **风格卡**:九套现成风格——极简白、温暖手作、杂志编辑、深色高级、活泼年轻、清新自然、专业科技、玻璃质感、柔和立体,每张卡是一套配色、字体、圆角、阴影的小样。还没开始设计时,空白页上点一张,输入框里写好〔风格〕和整套配色,再补一句要做什么;已经有设计了,在设计规范面板点「换个风格…」,模型先改tokens.css,再把写死的颜色换掉,版式和文字不动,改完自己体检一遍。 24. **远程也能看**:从手机(dsh-mobile 走外网)或别的电脑打开 DSH 网页时,电脑本机的预览端口那边连不上。本地 HTML 做的设计,插件把一屏连同样式、脚本、图片打成一份传过去,放进沙盒 iframe 显示,选择、改字、调样式、体检、导出照样能用;页面里点跳转就换到那一屏,文件改了跟着刷新(只刷用到这个文件的屏)。开发服务器的页面打包不了,还是只给一句说明。 25. **模型自己看图**:模型想看真实渲染的样子时调look_design`:同样用那个看不见的浏览器,按指定尺寸截一屏——顶上一屏、滚到底、整页分几段,或者只截某个元素(比如底栏),也能截深色——图直接交给模型看。不用自己起服务器、写截图脚本。

工具栏还有:地址(点一下能改,输文件路径 / 端口 / localhost 地址都行)、刷新、在浏览器里打开。右侧栏拉窄时,不常用的几个按钮收进「更多」菜单。会话标题栏右边有个「设计工作台」按钮,随时打开。DSH 重启后,每个会话接着预览原来的页面(类型、视图也记着)。

preview_page 工具的参数:target(文件路径 / 端口 / 地址)、kind(web / app / tablet / poster / slides / email)、size(如 1080x1920,可选)、screens(开发服务器上并排看的几个路由,可选)。check_design:screens(只量哪几屏)、sizes(如 ["375x667","430x932"])、dark、images(false 不附截图)。look_design:screens、size、at(top / bottom / full)、selector(只截这个元素)、dark。

设计模式和开关

新会话的模式菜单里多了一个「设计模式」:标准模式的全部工具,加上设计技能和右侧工作台的预览,人设换成做设计的。做界面时选它;标准、创造等模式照常能用这些功能。

插件拆成几个组件,DSH「插件」→「设计工作台」里每个都能单独开关,马上生效,不用重启:

组件 管什么 默认
设计工作台 右侧栏和预览服务器(关掉就等于不用这个插件) 开
自动打开预览 做设计时写了 HTML、起了开发服务器,右侧自动打开;关掉后只在右侧栏给一个「预览刚写的 …」按钮 开
预览和体检工具(其他模式) 标准、创造等模式也能用 preview_page、check_design 和 look_design 开
设计技能(其他模式) 标准、创造等模式也能加载 ui-design 技能 开
设计模式 模式菜单里的「设计模式」 开

只想在设计模式里做设计、别的模式保持干净:关掉两个「(其他模式)」。设计模式自带工具和技能,不受这两个开关影响。

能预览什么

输入 怎么预览
本地 HTML 文件 / 目录 / file:// 插件起一个本机服务器给这个目录,目录里的文件一改就刷新
端口、localhost:端口、127.0.0.1:端口 插件起一个代理转给开发服务器,热更新照常(只听 IPv6 ::1 的也行,比如 Mac 上的新版 Vite)
外网地址 不支持(只预览本机页面)

安全

每个预览目标一个独立的 127.0.0.1 随机端口,和 DSH 不同源,页面里的脚本碰不到 DSH。

  • 只给这个目录:路径按真实位置算,../、编码过的 ../、指到目录外的软链接都拒。
  • 防 DNS 重绑定:Host 必须是本机名加这个端口。
  • 和右侧栏通信:只和 DSH 自己的源说话(桌面版 dsh-app://app、DSH 网页端的地址):发消息指定收件的源,收消息要来自父窗口且源对得上。别的网站把预览嵌进去,收不到也指挥不动。用反向代理或域名打开网页版 DSH 时,这个地址得写在 DSH 的 trustedHosts(dsh-client-connection 配置)里才认;没写的话点选、改字、导出不起作用。
  • 接口(/dsh-design-studio/api/*):交给 DSH 自己的 connection 服务验登录态;老版本 DSH 没有这个服务时只收本机、同源请求。
  • 手机上看:默认不开,点了才在局域网开一个入口;只监听本机在局域网里的那个地址(不是 0.0.0.0),Host 也得对。链接带一次性的随机口令(128 位),手机第一次打开换成只给这个端口的 Cookie(HttpOnly),地址栏里不留口令;没口令、口令不对一律 403。停止或 30 分钟没人看就关端口,再开换新口令。同一个 Wi-Fi 里拿到这个链接的人也能看,所以别把链接发到群里。
  • 代理开发服务器时会拆掉 X-Frame-Options 和 CSP(不然嵌不进右侧栏),只影响预览端口,开发服务器本身不动。
  • 远程看:打包好的页面放在 sandbox="allow-scripts allow-forms" 的 iframe 里(不透明的源,碰不到 DSH 的 Cookie 和接口),页面里放一个 `` 指着原来的预览地址,拿不到 DSH 网页的地址;只内联设计目录里的文件(越界、软链接到外面的不读),总量 12 MB 封顶;接口回 JSON,不在 DSH 的地址下直接给 HTML。
  • 调样式写回:只收字号、颜色、圆角这几个属性,值里不许有 url(、引号、分号这类东西;按标签、序号、id、class 在源码里认出那个元素,认不准就不写,改成交给模型。

架构

服务端  preview_page 工具 / 自动发现(session/event:写 HTML、命令输出里的地址)
→ tracker(每个会话预览什么、模型在不在干活,存 ~/.dsh/cache)
→ hub(每个目标一个本机端口:静态文件 + 改动推送 / 代理 + WebSocket 透传)
/dsh-design-studio/api/state|open|view|close   右侧栏轮询、地址栏、类型 / 视图 / 换屏
/dsh-design-studio/api/history|restore         版本列表、回到某一版
/dsh-design-studio/api/export|reveal           存导出的图片、在文件夹里显示
/dsh-design-studio/api/phone                   手机上看:开 / 关局域网入口、给二维码、电脑换屏手机跟着跳
/dsh-design-studio/api/edit|ref                预览里改的字写回 HTML、存参考图
/dsh-design-studio/api/style|locate            调样式:写进元素在源码里的 style 属性;按规则找回源文件和行号
/dsh-design-studio/api/bundle                  远程看:一屏连同样式、图片打成一份(放进沙盒 iframe)
check_design / look_design → 无头浏览器(browser.js)按真实尺寸开页面,picker 里量、截图(look.js)
页面    picker.js 注入到 HTML:悬停框选、点选 / 拖选、屏间链接、演示时接住跳转、就地改字、postMessage 回右侧栏、改动后刷新
客户端  右侧栏标签页(sidebarRightTabs)+ 标题栏按钮(session.header.utilities)
  • lib/index.js —— 服务端:工具和技能的定义、接口、自动发现接线
  • lib/tool.js、lib/skill.js、lib/auto.js、lib/preset.js —— 能单独开关的几个组件:挂工具、挂技能、自动打开预览、设计模式(cordis.patch.yml 里列着;设计模式照抄 DSH 标准模式的插件,再挂上工具和技能)
  • lib/core.js —— 地址解析、自动发现、会话状态和存盘、每轮前后存版本、改字写回(只在看得到的文字里找,认 HTML 实体)
  • lib/history.js —— 设计版本:按内容存(没改的文件只存一份),最多 40 版,回到某一版
  • lib/serve.js —— 预览服务器:静态文件 / 代理 / 改动推送 / 注入(picker 和一段收集页面报错、没载到的资源的小脚本)
  • lib/browser.js —— 无头浏览器:找本机的 Chrome / Edge / Chromium / Brave,--remote-debugging-pipe 说话(不开端口),临时用户目录,闲置自己关
  • lib/look.js —— check_design / look_design 的量和截:挑屏、解析尺寸、每种尺寸开一页量问题和测量数字、挑严重问题截局部图、截顶上 / 滚到底 / 整页分段 / 元素,整理成交给模型的字
  • lib/bundle.js —— 远程看:把一屏的样式表(含 @import)、脚本、图片、字体内联成一份 HTML,放 `` 和 picker
  • lib/phone.js —— 手机上看:局域网入口(口令换 Cookie、转发到预览服务器、补 viewport、跟随跳屏、WebSocket 透传、闲置自动关)
  • lib/qr.js —— 二维码生成(字节模式、纠错 M、版本 1–10,不引第三方库)
  • lib/picker.js —— 页面里的脚本:选取、改动高亮(指纹比对)、生成动画、和右侧栏握手换帧(关闭的 shadow DOM,不污染页面样式)、把页面画成 PNG(样式、图片、字体都内联)、深色模式切换、报告屏间链接、演示时把点链接变成跳屏、就地改字、调样式(选中元素、实时套样式、认出用了哪些设计变量、每项由哪条规则决定)、远程看时接住跳页、给无头浏览器用的 window.__dshDesign(量、切深色、滚动、元素位置)
  • lib/client.js —— 右侧栏、工具栏、画布(排版、拖动、缩放)、设备外框、动画、两帧 iframe 交替(新的载好再淡入)、设计规范面板、版本面板和左右对比、导出(套外框、合成展示图)、把选取整理成文字插进输入框、原型箭头和演示、多尺寸并排、改字、参考图取色、窄栏「更多」菜单、调样式面板、风格卡、远程看(打包的页面放进沙盒 iframe,跟着改动重新打包)
  • skills/ui-design/ —— 内置设计规范(DSH 技能):SKILL.md 流程和原则、references/ 各类型细则、tokens.css 起手模板
  • assets/demo.gif、assets/demo-versions.gif —— 演示动图(测试台里跑插件真代码录的);assets/showcase.jpg —— 导出的展示图样例
  • docs/feasibility.zh.md —— 做之前的可行性调研

测试

node test/test-serve.mjs   # 静态文件、跳不出目录、Host 把门、改动推送、代理、WebSocket、只听 ::1 的开发服务器、连不上的提示页
node test/test-core.mjs    # 地址解析、自动发现(只在做设计时,后台跑的开发服务器也认)、模型 / 用户指定的不被顶掉、重放不动手、存盘恢复(恢复中先不显示空状态)、类型 / 几屏 / 换屏、改字写回、调样式写回(认元素、合并 style、只收安全的值)
node test/test-client.mjs  # 右侧栏标签页 / 标题栏按钮注册、只给当前会话自动弹出、选中内容整理成的文字、页面 meta、画布排版、设计变量分组、原型箭头(隔屏的绕开别的屏)、多尺寸排版、矮屏手机没有灵动岛、参考图取色
node test/test-skill.mjs   # 内置技能:名字 / 来源合规、内容读得到、引用的细则文件都在;拆开的几个组件、设计模式带齐标准模式的工具
node test/test-history.mjs # 版本:存一版 / 没变不存 / 只存设计文件 / 回到某一版 / 上限、每轮前后存、版本名(点选 / 变量 / 参考图换成短名字)、旧版本文件、导出的图不算改动
node test/test-bundle.mjs  # 远程看的打包:样式表 / @import / url() / 脚本 / 图片 / srcset 内联,外网的、找不到的、越界的原样留着, 和 picker 放对地方,总量上限,@import 循环
node test/test-phone.mjs   # 手机上看:二维码结构、挑网卡、补 viewport、口令换 Cookie、没口令 / Host 不对 403、转发、跟随跳屏、WebSocket、停止、闲置自动关
node test/test-doc.mjs     # PDF / PPT:JPEG 尺寸、PDF 结构和交叉引用、PPT 的各个部件(解压校验 CRC)、幻灯片比例和居中、接口存进 exports/、重名加序号、坏输入拒掉
node test/test-look.mjs    # check_design / look_design:挑屏、尺寸、整理给模型的字;假浏览器走完工具和附图;本机有 Chrome / Edge 时真开页面:底栏压住最后一行(矮屏报、大屏不报)、App 壳里的滚动区、脚本报错、缺样式表、截图尺寸、元素裁剪、深色、调样式每项由哪条规则决定、严重问题附图(底栏压住、App 壳、叠字,浅色深色)
node e2e/check-page.mjs    # 设计体检(要本机 Chrome):十二类问题都查得出、该放过的放过(省略号、动画中的半透明字、深色页面、限宽的段落、object-fit 的图、正文里跟着折行的字…),干净的页面零问题;加 --dir <设计目录> 拿真设计稿试
node e2e/e2e-studio.mjs    # 真机(要本机 Chrome,会从 npm 装一个临时 DSH):假模型调 preview_page 开三屏 App;干完一轮按钮上标出问题数,体检查出埋的问题、交给模型修、改完自动再量;面板开着时模型改坏别的屏,面板自己刷新、那屏挪出来;模型调 `check_design` 拿回清单和严重问题的局部截图;模型调 `look_design` 拿回一张真实渲染的图;导出的 PDF / PPT 里跳转能点;调样式拖滑块、写回、交给模型;换风格;换个地址打开(像手机走外网)时预览打包传过来、点得动、跟着改动刷新

已验证

第一期之后又打磨了一轮,同样在全新的 DSH 0.2.1-rc.3 网页版里实测(e2e/e2e-studio.mjs,40 项全过):模型用提问卡问话时,右侧栏提示「模型在等你回答」,答完提示消失;模型调 check_design 前后各一次,第二次只剩它改坏的那屏;「再出一版」写的 home-b 在画布上紧挨着首页;选中它点「就要这个」,输入框里是〔选定方向〕,让模型把原版挪进 drafts/。真模型(DeepSeek-V4.1-Flash)在桌面端设计模式里写完首页,自己调了两次 check_design(右侧栏量完把清单交回),改完再量一遍「0 个问题」,没有再另开浏览器截图;它写的 _probe.html 这类临时文件不再出现在画布上。新加的「文字被挤断行」拿真模型写的首页试,查出 5 处(「可外带」「再来一单」和三个价格)。

第一期(导出 PDF / PPT、设计体检)在一个全新的 DSH 0.2.1-rc.3 网页版里实测(e2e/e2e-studio.mjs,36 项全过):打开设计后按钮上自动标出 4 个问题;模型调 check_design 拿回同样的清单(只列首屏,面板关着时再调只列购物车);模型调 preview_page 开三屏 App,体检只在首屏查出埋的四个问题(文字截断、对比度 1.59:1、26×26 的按钮、8px 小字),另两屏零问题,预览里标上编号,点一条闪一下;「交给模型修」把清单放进输入框,发出去模型收到;改好首屏「再查一次」没问题;模型改完这一轮自动再量、按钮上的数字没了;面板开着时模型改坏购物车,面板自己刷新,被挡住的那屏挪出来;导出的 PDF 三页、PPT 三张竖版幻灯片,存进 exports/,不当成设计改动,里面「去点单」「加入购物车」能点着跳页,PDF 带每屏书签。PPT 也在 PowerPoint 里打开过,三张都正常、没有修复提示。桌面端重启后插件照常加载。真模型(DeepSeek-V4.1-Flash)在桌面端设计模式里说「帮我设计一个咖啡外带 App 的界面」:先用提问卡问了三个问题(感觉、场景、必须有的),答完写出 home-a / b / c 三个方向并排在画布上,最后再用提问卡问选哪个(也可以混搭)。这次发现两点已改:问完感觉后三个方向不该再跨风格;模型靠另开浏览器截图自查,一轮用掉一百多万 token——所以加了 check_design,并让三个方向在画布上按 a、b、c 排。

DeepSeek Harness 桌面端实测:让模型「设计一个咖啡外带 App 的三屏界面」,它先自己加载 ui-design 技能、建 tokens.css、一屏一个文件,右侧画布套手机外框一屏屏长出来(末尾带「生成中…」),写完按自查表找出文字重叠和对比度问题自己改掉;在「设计规范」面板点主色进输入框,模型问清方向后只改 tokens.css 一个变量,三屏一起变色、改动处高亮。之后又实测了第三期:每轮对话前后自动存版本(名字就是那句话)、版本面板、看第 1 版、左右拖动对比、导出整套展示图(3144×2541);点「再出两版」后模型没动原版和 tokens.css,写了 login-b / login-c 两个方向,画布上紧跟在登录屏后面。更早还测了:模型写好 HTML 后右侧栏自动弹出预览;地址栏手动打开;选择模式下点选元素后文字进输入框;改文件后预览自动刷新;DSH 重启后每个会话接着预览原来的页面。浏览器里另测了悬停框、点选、拖选区域、改 CSS 后自动刷新。测试台(插件真代码 + 仿 DSH 外壳)里测了:生成占位、一屏屏生成的动画、四屏 App 画布、画布里点选、改一屏只刷一屏、改共用 CSS 全部刷新、双击单看、类型切换、窄侧栏排版、设计规范面板(分组、点一个进输入框、没有变量时的提示)、导出(单屏带外框、深色页面、三屏合成展示图)、版本列表 / 看旧版 / 左右对比拖把手 / 回到这一版、深色模式切换、再出两版的提示和排序;手机上看:面板里的二维码用系统识别读得出链接,模拟 iPhone(390 宽)扫码打开,地址栏不留口令,「手机已打开」亮起,电脑上选别的屏手机跟着跳,改设计文件手机自动刷新,点停止后链接立刻失效。还测了第五期:原型箭头和演示里点按钮跳屏、多尺寸三档并排、点字改字写回文件并存版本(单页,和画布上的另一屏)、拖入 / 粘贴参考图后取色进输入框、窄侧栏的「更多」菜单。第五期又在 DSH 桌面端实测:非设计任务(命令里 curl 本机端口)不弹出;模型调 preview_page 后画布上带跳转箭头,侧栏窄时次要按钮进「更多」;演示里点「获取验证码」滑到首页;多尺寸三档并排;改字回车后写回源文件,版本里多一条「改字「…」」;手机二维码能识别出局域网链接、能打开,点停止后端口关掉;在右侧栏粘贴参考图后,图存进设计目录的 refs/,主要颜色和点缀色(如 #C8763E 1%(点缀))进了输入框;发出去后模型先写 tokens.css,四屏一起换成参考图的深色加焦糖色;选图按钮能弹出系统选文件框。从访达拖图进来这一步模拟不出系统拖拽,只在测试台验过。之后在 DSH 里从零跑了一遍:模型自己加载技能、调 preview_page,三屏宠物领养 App 一屏屏长出来,页面之间自己连好了跳转;点选进输入框、模型改完高亮、版本 / 对比 / 回到第 1 版(文件确实回去了)、导出展示图、窗口在前台时导出也复制进剪贴板、设计规范面板、单页改字写回、多尺寸都正常。这一轮在 DSH 里找出并修了四个只在真 DSH 出现的问题:画布 iframe 刚载完时视口是 0×0,跳转箭头和演示认不出按钮(现在尺寸到了会补报);模型用后台任务(run_in_background + job_output)起的开发服务器认不出;新版 Vite 在 Mac 上只听 ::1,代理只连 127.0.0.1,全是「连不上」;DSH 重启时右侧栏先闪一下空状态。修完后实测开发服务器:五个路由并排、改源文件热更新、开发服务器页面上改字变成一句请求、模型改完自动刷新、手机扫码打开(没口令 403)、停止后端口关掉。0.4.0 的设计模式和开关在一个全新的 DSH(0.2.1-rc.2)里实测:模式菜单里有「设计模式」,选它发消息,模型拿到 preview_page、ui-design 和做设计的人设,调 preview_page 后右侧工作台套手机外框打开页面;标准模式默认也有这两样;插件页关掉两个「(其他模式)」后,新开的标准模式会话里没有了,设计模式里照样有;关掉「设计模式」,模式菜单里就没有它,再打开又回来。再早一轮修了几个小毛病,也在 DSH 里验过:新屏播生成动画时底部按钮是透明的,跳转箭头漏了它(现在播动画的按钮也算,播完再补报一次位置);隔着一屏的箭头改成绕到标题上面走;点选后的版本名从「〔选中元素〕em…」变成「「3.2 km」 · 把这个距离文字改成绿色…」;先打字再点选时,选中的内容另起一行,不再粘在那句话后面;多尺寸里的小屏不再画灵动岛;提示条和顶上的提示消息不再叠在一起。

反馈

遇到问题或想要新功能,提一个 issue。报问题时写上 DSH 版本和插件版本,修起来最快。

License

MIT

常见问题

6 问
答案由本站依据条目字段整理,不引用上游原文
dsh-design-studio 怎么安装?

在 DSH 里执行 `dsh plugin --profile web add github:OrderG-X/dsh-design-studio` 即可。

dsh-design-studio 的验证等级是什么意思?

L4 · 沙盒安装通过。安装命令在隔离沙盒内真实执行成功,无依赖错误

dsh-design-studio 安全吗?

低风险。

dsh-design-studio 装之前要先确认什么?

先看它会读写哪些文件、执行哪些命令、连接哪些网络地址;验证等级只说明装得上、跑得起来,不等于安全。涉及密钥或系统权限的,建议先在隔离环境试装。

dsh-design-studio 用的是什么许可证?

上游标注为 MIT。商用或二次分发前请到仓库确认许可证原文。

这条记录的数据可靠吗?

本站按仓库名去重后合并整理,字段以作者仓库与 npm 元数据为准;安装命令、仓库地址与 README 保持原文,带 L4 / L5 标记的安装命令已在隔离沙盒里真实跑通。

UI 与外观
按星标排序,可作替代方案

awesome-dsh-plugin

awesome-dsh-plugin

A curated list of plugins for DeepSeek Harness (dsh) · DeepSeek Harnes

L4 · 沙盒安装通过 1.8 万 星

deepseek-balance-whale-widget

DeepSeek-Balance-Whale-Widget

DSH 界面右下角的常驻小鲸鱼余额挂件,实时显示 DeepSeek 账户余额、今日已用与每轮对话消耗,支持拖拽吸附、Q 弹动画与音效,开箱即

L4 · 沙盒安装通过 4,492 星

dsh-better-sidebar

DSH-better-sidebar

面向 DeepSeek Harness 的服务化侧边栏工作台插件,把文件编辑、终端、Git 变更、子代理任务与侧边对话整合进右侧栏与底部面板

L4 · 沙盒安装通过 4,112 星

dsh-deep-whale

dsh-deep-whale

DSH Web 鲸鱼娘皮肤系列(深海女仆工坊 maid-atelier)。

L4 · 沙盒安装通过 2,470 星

deepseek-design

deepseek-design

可视化设计工作室,支持网站、App 原型、海报、信息卡、报告和杂志的模板创建、元素编辑、选区级 AI 草稿衔接与导出。

L4 · 沙盒安装通过 1,438 星

superdesign-skill

superdesign-skill

Superdesign为DeepSeek Harness等编码代理提供设计判断力,将AI生成的平庸UI转化为可交付的精致前端,支持设计系统、

L3 · 安装规范通过 647 星

OrderG-X 的其它插件

6 个

插件的元信息来自作者仓库;分类、验证等级与安全结论的中文说明为中文整理,最近核验 —。