DeepSeek Harness 插件:dsh-plugin-web-ppt

DeepSeek Harness 的核心理念是「一切皆插件」。在构建自动化工作流时,智能体往往需要处理演示文稿文件。传统的方案要么依赖本地安装 PowerPoint 或 LibreOffice,要么依赖外部转换服务。dsh-plugin-web-ppt 作为一个纯 JS 实现的工具,直接在 Harness 环境中读取并导出 PPT 文件,无需联网,也不需要安装 Office。

核心工具

该插件提供三个工具,分别对应读取、渲染和导出三个阶段:

  • ppt_read:逐页返回标题、正文和演讲者备注,是 Agent 读懂一份 PPT 的入口。
  • ppt_render_svg:每页导出一个自包含的 SVG(图片内联为 data URI)。
  • ppt_export_html:整份导出为一份可打印 HTML,通过浏览器「打印为 PDF」即可得到 PDF 文件。

所有文件读写操作经由 Harness 的 fs 服务,因此 workspace 归属、沙箱策略与写入审批与 Harness 的常规行为一致。

安装与启用

在终端中执行以下命令完成安装:

dsh plugin --profile <你的 profile> add dsh-plugin-web-ppt

安装完成后,运行 dsh --profile <name> --dump-config,配置输出中会出现 # == dsh-plugin-web-ppt 节点,插件即处于生效状态。

配置项

插件支持通过 profile 的 cordis.patch.yml 进行覆盖配置。注意 patch 会整体替换 config,因此需要写全所有键值对。

- id: web-ppt
  name: dsh-plugin-web-ppt
  config:
    maxFileBytes: 134217728
    maxTextChars: 40000
    includeHidden: false
配置键 默认值 说明
maxFileBytes 67108864 (64 MB) 单文件读取上限,超出直接失败
maxTextChars 20000 ppt_read 的文本预算,超出会截断并标记为 truncated
includeHidden false 是否默认把隐藏页算进来

边界与限制

该插件为只读模式,不支持写入或编辑 PPT。

能力 限制说明
文件格式 支持 .pptx (Zip+OOXML) 与 .ppt (CFB+Escher)
导出格式 不支持导出 PNG(Node 环境无 canvas)
加密文件 默认不支持,需在调用时传入 password
动画 不支持播放动画,只能导出终态或按点击批次展开
SVG 兼容性 导出 SVG 使用原生 <text> 而非 foreignObject,以确保设计工具兼容性
文件大小 单文件读取上限为 64 MB

典型用法

pages 参数一律是 1 基选择串,例如 1-3,7 表示第 1、2、3 页和第 7 页。不传该参数表示全部。

1. 读取 PPT 内容

读取指定页面的标题、正文和备注:

ppt_read path/to/presentation.pptx pages=1-5 password=yourpass

2. 导出 SVG

将 PPT 每页渲染为 SVG 并保存到指定目录:

ppt_render_svg path/to/presentation.pptx out_dir=slides pages=1-3

3. 导出可打印 HTML

生成一份包含所有动画步骤的可打印 HTML 文件:

ppt_export_html path/to/presentation.pptx out_file=print.html animation_steps=true

总结

dsh-plugin-web-ppt 为 DeepSeek Harness 提供了原生的 PPT 处理能力。它不依赖外部转换服务,不占用本地 Office 软件,且所有操作均受 Harness 的权限体系管控。对于需要在 Agent 工作流中涉及演示文稿处理的场景,这是一个直接的解决方案。

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

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

小夜