dsh-ppt-studio:在 DSH 左侧栏里预览、编辑 deck.json 并导入 PPTX

前言

在 DeepSeek Harness(DSH)里做演示文稿,常见做法是:让会话改 Markdown 或脚本,再另开 PowerPoint 核对版式;或者把 .pptx 丢给通用工具,结果被重排到模板里,和原稿对不上。DSH 社区插件 dsh-ppt-studio(维护者 p8054076283-del)把「文稿数据、16:9 预览、就地改字、原样导入、同屏 AI 对话」收进左侧栏 PPT 工作台,工作区里的真源是 <workspace>/.ppt-studio/deck.json。

下面按定位、能力、安装、用法和限制说明;安装前请自行查看仓库源码与 MIT 许可证。插件与当前 DSH 进程同权限运行,导入脚本会读写工作区路径。

这是什么

dsh-ppt-studio 是面向 DeepSeek Harness 的客户端类插件:在侧边栏注册 PPT 工作台,把 deck.json 渲染成真实 16:9 缩略图与大预览(DOM 布局,不是截图),支持点击文本/表格单元格就地编辑并写回文件;可通过聊天栏附件触发 /import,用 python-pptx 按元素几何导入 .pptx;中间列绑定当前会话,可 Markdown 展示、附件进 .ppt-studio/inbox,并让 AI 直接改写 deck.json。

分类上属于 DSH 生态里的客户端插件;社区目录页在 skillhub.cn,与 DeepSeek / 幻方无官方从属关系,DSH 本身也遵循「一切皆插件」的扩展方式。

核心功能

实时 16:9 预览

缩略图条与大预览都是对 deck.json 的 DOM 渲染。坐标以英寸计,画布为 13.333 × 7.5;渲染器再换算为百分比与 cqw 字号,容器缩放时幻灯片同比缩放。

所见即所得编辑

在预览上点击文本块或表格单元格即可输入;点到别处保存,Esc 取消。编辑器尽量保留原字号、字重、对齐与颜色。表格是一等元素,可逐格编辑。

PPTX 导入(非重排版)

/import 调用 scripts/import-pptx.py,逐页逐元素复制绝对几何、主题 XML 解析后的颜色(含 lumMod/lumOff/tint/shade)、渐变与透明度、圆角与椭圆、按内容哈希去重的图片、表格、组合变换,以及版式/母版上的装饰。README 说明混合 run 样式(spans)与圆角卡片在导入后仍可保留。

含图表、SmartArt 或 OLE 的页整页经 LibreOffice → PDF → PNG 栅格化为全幅嵌入图,视觉保真;这类页只读。

AI 对话栏

中间列对接当前 Harness 会话:Markdown、粘贴/拖拽/选择器附件(落入 .ppt-studio/inbox)、实时 process 页展示工具调用与耗时,以及一键提示词。会话可重写 deck.json。

文件监听与其它

面板轮询 deck.json;外部修改会高亮变更页,面板自身保存不会误标为「AI 改过」。单比例分割条占满页面,窗口缩放时两侧仍可用。

安装与启用

插件以单个 tarball 分发,无运行时 npm 依赖;导入 .pptx 需要 Python 3 与 python-pptx、lxml。图表页栅格化可选 LibreOffice 与 pdftoppm(poppler)。Python 解释器查找顺序:DSH_PPT_PYTHON → 桌面应用捆绑运行时 → ~/.dsh/dsh-runtimes → PATH 上的 python / python3 / py。

官方安装命令(来自仓库 README):

dsh plugin --profile web add \
  https://github.com/p8054076283-del/dsh-ppt-studio/releases/latest/download/dsh-ppt-studio.tgz

本地构建并安装 tarball 时:

node build2.mjs && npm pack
dsh plugin --profile web add file:$(pwd)/dsh-ppt-studio-<version>.tgz

首次安装后需重启应用一次,侧边栏会出现 PPT 工作台。package.json 标明插件版本 1.0.1、Node >=20。

典型用法

  1. 打开已含 .ppt-studio/deck.json 的工作区,或点击 新建示例文稿。仓库提供 examples/demo-deck.json,可复制到 <workspace>/.ppt-studio/deck.json 试面板,无需动自己的 deck。
  2. 在幻灯片上点击文字编辑;Esc 取消,点其它区域保存。
  3. 将 .pptx 拖入聊天栏,在附件芯片上点 导入,用元素保真导入替换当前 deck。
  4. 在对话栏描述修改需求,由会话直接改写 deck.json。

deck.json 结构要点(节选,字段含义见 README):

{
  "version": 1,
  "theme": { "bg": "#FFFFFF", "fg": "#1F2328", "accent": "#2F6FED", "font": "Microsoft YaHei" },
  "meta": { "title": "Quarterly review" },
  "slides": [
    {
      "id": "s1",
      "layout": "imported",
      "title": "Cover",
      "elements": [ /* shape | image | text | table,x/y/w/h 为英寸 */ ]
    }
  ]
}

Host 侧在 loopback 提供 /ppt-studio 下路由(如 /health、/import、/deck PUT 等),客户端注册 sidebar.panellist(id ppt-studio)与 main 页 ppt-studio。

适用场景与注意

适合:在 DSH 工作区内维护演示稿 JSON、需要和 AI 同屏改稿、希望 .pptx 导入后尽量保持原几何而非模板重排、接受 chart/SmartArt 页以只读整页图呈现的场景。

已知限制(README Known limitations):

  • 不支持阴影、发光、3D、旋转、WordArt、动画;形状以矩形、圆角矩形、椭圆或渐变绘制。
  • 文本框可有 spans 混排,但就地编辑会把混排压成基础样式。
  • 4:3 deck 会缩放进 16:9 画布。
  • 图表 / SmartArt / OLE 页为图片,不可编辑。
  • 再次导入 .pptx 会覆盖面板内编辑,因真源是导入结果文件。

安装插件前请阅读 GitHub 仓库 源码与 MIT 许可证,并确认 Python/LibreOffice 依赖是否符合你的环境。插件以当前 DSH 进程权限访问工作区,勿在不可信工作区盲目导入外部 .pptx。

结尾

dsh-ppt-studio 把 deck.json 的 live 预览、就地编辑、元素级 PPTX 导入和会话侧 AI 栏合成一个左侧栏工作台,适合在 Harness 里把演示稿和智能体迭代放在同一工作区。问题反馈可走仓库 Issues。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜