dsh-web
zhu1090093659
DeepSeek Harness (DSH) Web 插件聚合生态 · 万物皆插件,通过创意工坊分发||DeepSeek Harness (DSH) Web Plugin Aggregation Ecosystem · Everything is a plugin, distributed via the Creative Workshop
PROJECT TOPICS
INSTALL REFERENCE
dsh plugin --profile web add github:plolpl789/dsh-raw-html-v2
该命令指向仓库当前默认分支;尚无绑定当前 commit 的完整验证结果。
PROJECT README
让 AI 在 DeepSeek Harness 对话正文中直接输出裸 HTML,渲染成视觉卡片(卡片 / KaTeX 公式 / Mermaid 图表 / SVG / 内置字体), 零 bundle 补丁——前端以官方
conversation.chat.node槽位的assistant-step替换渲染器接入, 渲染逻辑复用 v1 渲染引擎(assets/vendor/vcp-engine-v1.js= v1 patch/v6-inject.js 原样复制), 流式 / 字体锁权 / 作用域化 / KaTeX·Mermaid / 自愈层零重写,兼容 rc 与 alpha 全版本线。
以下均为本插件实际渲染的 VCP 卡片(流式逐段长出 · 内置书法字体 · KaTeX/Mermaid/SVG/JS 动画 · 交互控件 · hover 下载单文件 HTML):
四图分别代表:数据/编辑风格、文学封面装帧、散文纸质长文、技术复合(60fps JS 动画 / 公式 / 流程图 / 深色终端面板)。
dsh-raw-html v1 依赖「前端 bundle 补丁」注入渲染能力(改 case"html" 分支)。DSH 0.1.2-alpha 起
前端压缩器变量名逐版本漂移,补丁锚点失配 → 用户报错。v2 改用官方 Slot API 提供接入点——
只替换槽位渲染器,让 v1 引擎在 rc 与 alpha 上都能运行;渲染能力与压缩器解耦、引擎零重写。
| 维度 | v1(dsh-raw-html) | v2(本包) |
|---|---|---|
| 渲染引擎 | patch/v6-inject.js(bundle 内联注入) | 同一引擎原样复制为 assets/vendor/vcp-engine-v1.js,client 经 new Function 注入 vc/hp/f 加载 |
| 接入点 | bundle 补丁 case"html" |
官方 Slot:conversation.chat.node / assistant-step 替换渲染器(priority:-10 shadow 官方 AssistantNodeView) |
| 前端更新影响 | 每个版本都要适配补丁 | 完全免疫 |
| 模型输出方式 | 正文直接裸 HTML | 同 v1:正文直接输出 <div id="vcp-root">(协议未变) |
| 普通 markdown 段落 | 宿主渲染 | 官方 MarkdownText(@deepseek-ai/dsh-client-ui-primitives),require 失败纯文本兜底 |
| 依赖声明 | inject 含 dsh-client-runtime |
已移除(alpha 无此包) |
| 状态/配置隔离 | raw-html / .dsh/dsh-raw-html-state.json |
raw-html-v2 / .dsh/dsh-raw-html-v2-state.json |
v1 与本包可并存:状态文件、RPC 通道、配置命名空间、cordis 插件名全部隔离,互不干扰。 v1 用户可继续留在 v1 补丁方案,v2 用户走官方 Slot 方案。
# 本地目录安装(开发/本机)
dsh plugin --profile web add <本包路径>
# 或打包 tarball 后安装(分发/其他机器)
npm pack # 生成 dsh-raw-html-v2-0.7.28.tgz
dsh plugin --profile web add dsh-raw-html-v2-0.7.28.tgz
安装完成后 重启 dsh web(client 层改动需重启生效),浏览器刷新页面。
dsh plugin --profile web add <npm 包名或 owner/repo>
<script> / onclick 交互需要可信模式;<div id="vcp-root"> 卡片 → 应流式逐段长出,收尾无感;[dsh-raw-html-v2] ensureGlobalFonts 注入 @font-face …条(debug 级)即字体服务就绪;若流式停顿帧触发 F8 自检 警告属自愈信号,非故障;package.json(当前 0.7.28)。assets/fonts/ 含 27 款子集 woff2(Lanxi-* 全家),写卡 font-family:'Lanxi-…' 直接命中,无需任何字体配置;DESIGN.md §0.1 所列方正/造字工房等全量 ttf(体积 + 授权原因)。安装方如需使用,在 DSH 设置 raw-html-v2 命名空间配置字体根:fontsRoot(默认 I:\字体,可改为本机字体目录)fontRoots(额外字体根数组,可多个)
未配置时这些字体名自动回退系统字体,卡片渲染、交互、公式图表等其余功能不受影响;assets/fonts/ 内各字体授权条款)。<div id="vcp-root">…</div>,assistant-step 替换渲染器把 vcp 段交给 v1 引擎渲染——流式原生:卡片随模型输出逐段长出(子块固化、样式同步生效,与 v1 完全一致);onclick="input('...')" 交互、KaTeX 公式、Mermaid 图表均可用;卡片 hover 可「⤓ 下载 HTML」;字体声明(Lanxi-*)带 !important 锁权,主题/皮肤插件无法覆盖;<!DOCTYPE html> 起、含 <script> 的 canvas/JS 动画等):点右下角「可信模式」盾牌徽章开启后即可直渲直跑(页面级 body/html 样式自动隔离为卡内 .vcp-page-host,不污染对话界面);lib/index.js Host 端:systemPrompt 协议注入 + 字体/vendor 服务 + loopback RPC
lib/client.js 浏览器端:开关按钮 + input() 桥 + 可信模式 + assistant-step 接入(切段后喂 v1 引擎)
assets/vendor/vcp-engine-v1.js v1 渲染引擎原样复制(流式/字体锁权/KaTeX·Mermaid/自愈层)
assets/ 内置精选字体 + KaTeX/Mermaid 前端资源(随插件分发,离线可用)
styles/ 美学风格知识库(RAG 化,agent 检索后按风格输出)
tests/ 接入层切段测试(slot-split)+ 引擎复用链路测试(engine-smoke)
DESIGN.md 完整设计规范(字体/中文排版/安全铁律/文档地图)
@deepseek-ai/cordis@^4.0.1(覆盖 4.0.1 与 4.0.2)、react@^18@deepseek-ai/dsh-client-connection、@deepseek-ai/dsh-client-ui-slots、@deepseek-ai/dsh-client-ui-primitives 均为可选依赖(primitives 缺失时普通 markdown 降级纯文本,卡片渲染不受影响)MIT(含 assets/vendor/vcp-engine-v1.js——本仓库姊妹项目 dsh-raw-html 的渲染引擎,原样复制复用)。
内置字体为开源授权(OFL 等)+ 先生自备字库子集(授权由作者确认),分发时请核对 assets/fonts 内各字体授权。
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: visual-synesthesia。