前言¶
在 DeepSeek Harness(DSH)里做幻灯片,常见做法是各用一类插件:有的擅长从流水线生成,生成后不好改;有的擅长在界面里改,却不好从零建稿或导入;还有的只能在外部 .pptx 上打补丁,不能在同一项目里走完创建到交付。若你希望文本仍是可编辑文本、图表仍是带内嵌数据工作簿的可编辑图表、而不是整页栅格图,并且导出前能留下「检查了哪些门、针对哪份字节、用什么引擎」的回执,就需要一套把创建、精修、交付放在同一修订模型上的工具。dsh-deckforge(Deckforge)由社区维护者 DSH-Extensions-list 发布,分类为工作流,面向 Harness 提供演示文稿工作室能力。
这是什么¶
Deckforge 是 DeepSeek Harness 的 presentation layer:在一个项目里跑三条闭环——创建(create)、精修(refine)、交付(deliver),并用质量门证明文件能打开、能读对。它编译出原生 PowerPoint deck(OOXML),同时可导出离线可用的自包含 HTML、PDF、分页图片以及可复现的 bundle。仓库为纯 ESM、仅依赖 Node 内置模块,无编译器、无 Python、无 native 模块;LibreOffice 与 pdftoppm 为可选,只影响渲染门(render gate)。
维护与源码: GitHub — DSH-Extensions-list/dsh-deckforge;社区目录页: skillhub.cn 插件页。许可证 MIT(package.json 版本 1.0.0)。DSH 生态理念是「一切皆插件」;社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系。
核心功能¶
三条闭环与工具面¶
README 给出的主流程为:
deck_new → deck_plan → deck_write → deck_check → deck_render → deck_export
工具与职责如下(摘自官方 README 表格):
| 工具 | 作用 |
|---|---|
deck_new |
按主题、场合与时长槽创建项目 |
deck_plan |
由场合与时长生成幻灯片预算与分 beat 计划 |
deck_write |
用结构化内容追加页面;布局可推断或显式命名 |
deck_edit |
带语义 diff 的原子操作:移动、改样式、对齐、增删、重排 |
deck_import |
导入 .pptx 或 Markdown,输出项目并附损耗报告 |
deck_patch |
对外部 .pptx 做文本、图片、顺序、备注等手术式修改 |
deck_splice |
替换单页并证明其余部分字节级一致 |
deck_check |
无渲染器下的 schema、布局、内容与兼容性门 |
deck_render |
对真实文件栅格化,报告像素统计与视觉 diff |
deck_review |
修复计划(仅提议,不自动应用) |
deck_export |
导出 pptx、html、pdf、png、notes、bundle,各带 receipt |
deck_status |
修订号、页数、receipts、引擎、演讲时长等 |
deck_verify |
对文件重算哈希,判断 receipt 是否仍成立 |
项目结构与主题¶
项目目录约定(README):
deck/
deck.yaml # title, size, theme, meta, page order
pages/01-cover.yaml # elements: text | shape | line | image | table | chart
theme.json # palette, type scale, spacing, radius
assets/ # images
manifest.json # revision, hashes, receipts, export history
revisions/ # append-only snapshots
export/ # pptx, html, pdf, png, bundle
规则要点:1 px = 1 pt,原点左上,默认 960×540;页顺序即 z-order;元素 id 在导入与再导出间保持;manifest.revision 作乐观锁;每次 export 记录产出字节的 SHA-256。
内置八套设计系统:slate、paper、midnight、ember、forest、mono、ocean、sand;主题数据由 PowerPoint、HTML 与工作台共用同一文件。
质量门(G1–G6)¶
| 门 | 检查内容 | 是否阻断 export |
|---|---|---|
| G1 schema | 类型、id、边界、主题引用 | 是 |
| G2 layout | 越界、溢出、重叠(含声明例外)、对比度、安全区、设计预算 | 错误时阻断 |
| G3 content | 演讲时长相对 slot、重复标题、无来源数字 | 建议性 |
| G4 render | LibreOffice 栅格真实文件、空白页检测 | 记录;无渲染器时 skip,不算 pass |
| G5 diff | 相对上次渲染的 ΔE | 建议性 |
| G6 compat | 功能所需的最低 Office 版本 | 建议性 |
每个门写入 receipt:{ gate, engine, engineVersion, input, output, findings, skipped, at }。缺少渲染器时记为 skipped,不会当作通过。
Deck Studio 工作台¶
安装并在 Harness 中刷新后,侧栏会出现 Deck Studio:页条、矢量画布与检查器。可拖拽移动对象、就地改文本与样式、增删重排页面、切换主题、跑门并导出。写入与工作台共用与 CLI 工具相同的路由,共享同一 revision 与锁。README 注明:语义类请求明确 defer 到 chat;2026-10-31 的手动验证覆盖了侧栏、空 deck、加页、切换项目、选中文本、快速编辑、检查器刷新、历史恢复、检查与 PowerPoint/HTML 导出等,但不等于已验证 Microsoft PowerPoint 的全部兼容性——在 PowerPoint 中打开导出文件仍需单独人工确认。
兼容与语言¶
- PowerPoint 2010 及以后可读编译器发出的全部特性;2007 除 WebP 外均可读。
- HTML deck 演示时不依赖网络:图片内联,图表为 inline SVG。
- 仓库设计为 English-only:工具、skills、错误、文档、模板、测试均英文;
npm run check:english对任意 CJK 码点失败。模型仍可按用户语言回答,产品界面与工具面为英文。
安装与启用¶
官方 README 给出的安装步骤如下。插件以当前 dsh 进程权限运行,安装前应自行审阅源码与 MIT 许可证。
# Clone the extension and install the checkout
git clone https://github.com/DSH-Extensions-list/dsh-deckforge.git
cd dsh-deckforge
dsh plugin install "$PWD"
安装完成后刷新 Harness 窗口,在侧栏查找 Deck Studio。
开发环境要求 Node.js 22.19 或更高(package.json 中 "node": ">=22.19")。仓库无需 npm install 或构建步骤;本地可运行:
npm run check
GitHub Actions 在 Node.js 22 与 24 上跑英文检查与测试套件。
典型用法¶
下面示例来自 README「Sixty seconds」一节,演示从建项目到导出 pptx 与 html(命令面为 JSON 形参,由 Harness 工具路由调用)。
先创建目录与元数据:
deck_new { "dir": "decks/q3-review", "title": "Q3 review", "theme": "midnight", "minutes": 12, "venue": "conference" }
deck_plan { "venue": "conference", "minutes": 12 }
写入结构化页面(含 cover 与 chart 布局):
deck_write { "dir": "decks/q3-review", "pages": [
{ "layout": "cover", "title": "Latency fell 40%", "subtitle": "Platform review, Q3", "notes": "Open with the number." },
{ "layout": "chart", "title": "p95 fell every quarter", "chart": { "kind": "column", "categories": ["Q1","Q2","Q3","Q4"], "series": [{ "name": "p95 ms", "values": [210,180,140,126] }] }, "source": "Source: billing export" }
] }
检查并导出:
deck_check { "dir": "decks/q3-review" }
deck_export { "dir": "decks/q3-review", "formats": ["pptx", "html"] }
预期产物包括 decks/q3-review/export/q3-review-r2.pptx(README 称 PowerPoint 打开时不应出现修复提示),以及可用方向键翻页、按 S 看备注、按 Ctrl+P 打印的 HTML deck。
适用场景与注意¶
适合需要在 DSH 对话与工作台之间共用同一 deck 项目、既要 agent 结构化写页又要人工精修、且希望在 export 前留下 gate receipt 链路的开发者或团队。若工作流以「只生成一次、不再改模型」或「只改外来 pptx、不从零编译」为主,可继续用生态里更专一的插件;Deckforge 的定位是单项目、单修订模型、单 receipt 链上的三闭环合一。
注意:G4 依赖本机 LibreOffice(若安装);无渲染器时 export 仍可继续,但 render 门为 recorded skip。仓库 README 为 English-only,界面与错误信息以英文为准。插件安装与运行权限等同于当前 dsh 进程,请勿在未审阅代码的情况下在生产环境盲目安装。
结尾¶
dsh-deckforge 把原生 pptx 的创建、导入、精修、检查与多格式导出收进一个 Harness 项目,并用 G1–G6 与 receipt 说明「验了什么、验的是哪份文件」。进一步了解可访问 社区目录页 与 GitHub 仓库。