dsh-np-ppt:DSH 原生 PPT 演示文稿专家插件

前言

让智能体产出一份能直接交付的演示文稿,在 Agent 开发里一直不算轻松。常见做法是让模型输出 Markdown 或大纲,再由人工套模板排版;如果想直接生成 PPTX,又要面对 OOXML 的复杂格式,出错概率不低。

dsh-np-ppt 把这件事收敛到了 DSH(DeepSeek Harness)插件体系内:用一套 YAML 语法的 PPTD DSL 描述幻灯片,配合本地可视化编辑器与 Python-PPTX 编译内核,从对话生成到导出 PPTX 在同一条链路上完成。下面介绍这个插件的定位、核心能力和安装使用方法。

这是什么

dsh-np-ppt 是 DSH 原生的 PPT 演示文稿专家插件,作者为 GitHub 用户 z953218350,采用 MIT 许可证,当前版本 1.0.0。一句话概括:内置 PPTD DSL 引擎、55173 所见即所得可视化编辑器、Python-PPTX 高保真离线编译内核与一键导出 PPTX 功能。

DSH 的理念是「一切皆插件」,插件可以注入系统提示词、注册 Agent 工具、扩展 Web 前端。这个插件按同一套机制工作:装载后会在 DSH Web GUI 新增「PPT 演示文稿专家」Agent 预设,自动注入系统提示词,使 AI 直接具备演示文稿创作能力;同时把预设文件复制到 ~/.dsh/.agent-presets/np-ppt/,便于离线复用。

核心功能

PPTD DSL 引擎

PPTD 采用 YAML 语法描述幻灯片,标准 16:9 画布。页面按文件模块化拆分,从 01_cover.pageXX_final.page,每页独立自洽。编译时自动为所有幻灯片添加淡入淡出(Fade)切换过渡。

55173 所见即所得可视化编辑器

插件内置一个轻量级本地 Web 编辑器,服务地址为 http://127.0.0.1:55173/,支持多层嵌套富文本修改、自由拖拽对齐与实时渲染。

导出弹窗做了联动:点「下载」直接触发本地 Python-PPTX 编译引擎生成文件;选「图片」则保持原生图片切图下载。

Python-PPTX 高保真离线编译内核

编译内核位于 compiler/export_pptx.py,离线运行。它基于 RichTextHTMLParser 状态机解析富文本,支持无限层级嵌套的 HTML 标签(spanstrongbemiubr),颜色支持 #HEXrgb()rgba()$theme 全格式。

输出侧做了几处保真处理:微软雅黑(Microsoft YaHei)字族锁定、DrawingML 渐变背景、noAutofit 文本框防缩放。

9 大专业视觉风格体系

内置九套视觉风格:

  1. 商务管理风
  2. 深浅代码风
  3. 高能增长风
  4. 炫光紫绿风
  5. 冷白调研风
  6. 轻拟态风
  7. 黑金实验风
  8. 色谱图表风
  9. 深蓝杂志风

Agent 工具与前端扩展

插件注册了原生 Agent Tools(ppt_exportppt_serve 等),并通过 client 注入方式提供 DSH Web 前端插件扩展。

安装与启用

先确认环境:需要已安装并能运行 dsh 命令的 DSH 环境;Node.js 16+(推荐 18+),插件为预编译 ESM,lib/ 目录即装即用,无需构建;Python 3.x,需 py -3 / python3 / python 之一可调用。

推荐通过 DSH 命令行挂载,在终端执行:

dsh plugin --profile web add link:<项目路径>

<项目路径> 指插件在本机的目录路径,按实际位置替换。在 pnpm workspace 根目录下添加时,可能需要附加 -w/--workspace-root 参数:

dsh plugin --profile web add -w link:<项目路径>

如果不走命令行,也可以手动配置:在 ~/.dsh/profiles/web/cordis.patch.yml 中添加:

- insert:
    - id: dsh-np-ppt
      name: 'dsh-np-ppt'

然后在 ~/.dsh/profiles/web/node_modules/ 下建立指向项目路径的符号链接:Windows 用 Junction / mklink /J,macOS 与 Linux 用 ln -s

安装完成后需要重启 web profile:在运行 dsh web 的终端按 Ctrl+C,再重新执行 dsh web,插件即加载生效。

关于 Python 依赖:首次运行编译器时会自动通过 pip 安装 pyyamlpython-pptx;缺网或缺 pip 的环境可手动执行:

pip install pyyaml python-pptx

典型用法

对话驱动生成

在 DSH Web GUI 中切换到「PPT 演示文稿专家」预设,直接与 AI 对话,例如:

帮我用科技蓝风格做一份 8 页的《微服务架构重构技术方案》

该预设内置了完整的 PPTD DSL 编写规范、9 大风格主题说明,以及本地编译与 55173 编辑器的联动指引。

本地可视化编辑与导出

经过上面的步骤装好插件后,可以在浏览器里做可视化调整:

  1. 浏览器打开 http://127.0.0.1:55173/
  2. 点击「打开 PPTD 文件夹」,授权选择包含 deck.pptd 的项目目录;
  3. 在页面中直接修改文字、调整排版,实时查看渲染效果;
  4. 点击右上角「导出」-> 选择 PPT -> 点击「下载」,即可下载 PPTX 幻灯片。

命令行直接编译

不需要编辑器时,可以在 PPTD 项目目录下直接运行内置编译器:

py -3 <项目路径>/compiler/export_pptx.py deck/deck.pptd --output deck/deck.pptx --force

macOS / Linux 下把 py -3 换成 python3。首次运行若无 pyyaml / python-pptx,脚本会自动通过 pip 安装。

适用场景与注意事项

适合的场景:

  • 已在使用 DSH,希望通过对话直接产出可交付 PPTX 的用户;
  • 生成后需要在本地做可视化微调、再编译导出的工作流;
  • 希望离线编译、不依赖在线转换服务的环境。

使用前注意:

  1. 浏览器要求:55173 编辑器使用 window.showDirectoryPicker() 等 File System Access API 能力授权本地目录读写,推荐 Chrome / Edge 等支持该 API 的桌面浏览器;不支持该 API 的浏览器会降级为只读上传模式。仅做「对话生成 + 命令行编译导出 PPTX」时,浏览器不是必须。
  2. 权限与安全:插件以当前 dsh 进程的权限运行。安装前建议先阅读项目源码与许可证(MIT),确认可接受再挂载。
  3. 手动安装时,符号链接的建立方式因系统而异:Windows 用 Junction / mklink /J,macOS 与 Linux 用 ln -s

结语

dsh-np-ppt 把对话生成、本地可视化编辑和离线编译导出串成一条链路:对 DSH 用户来说,装载一个插件即可让 Web GUI 多出一位「PPT 演示文稿专家」,产出物是标准 PPTX 文件,可直接进入后续使用环节。

项目地址与目录页:

  • GitHub:https://github.com/z953218350/dsh-np-ppt
  • 社区插件目录:https://www.skillhub.cn/plugins/z953218350/dsh-np-ppt

(目录为社区独立维护的站点,与 DeepSeek 无官方从属关系。)

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

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

小夜