中文EN

dsh-pptx-builder

toolsnpmMIT

面向 DeepSeek Harness 的 PowerPoint 演示文稿生成器:柔和色板、十种幻灯片模板、网络图片、Python 绘制的图表、高亮代码卡片、无需安装 TeX 的 LaTeX 公式(矩阵、积分、带上下限的求和)以及 Presentations 智能体模式。

下载量 / Downloads
716

安装

dsh plugin --profile web add dsh-pptx-builder

沙箱测试

这个插件还没测过。提交测试 →

README

PowerPoint Builder for DeepSeek Harness

A plugin bundle that lets an agent build real Microsoft PowerPoint decks: pastel

palettes, ten reusable slide templates with exact geometric centering, styled

text boxes, internet images, charts rendered by Python, highlighted code cards,

and LaTeX formulas — matrices, integrals, sums with limits — typeset by the

plugin itself, with no LaTeX installation. It also ships a Presentations

agent mode tuned for deck work.

The .pptx package (ZIP + OOXML) is written by the plugin itself, so there is

no Office dependency, no network round-trip after an image is embedded, and the

file stays valid after every call.

Install

Install the bundle into the current profile:

plugin_manager { "action": "install_bundle", "target": "dsh-pptx-builder" }

Or use Plugins → Install in the Harness UI and paste the package name.

After a restart the tools show up in every mode, and a new Presentations

agent preset appears in the mode picker for a new session.

From a local checkout, pass the absolute directory instead of the package name.

Presentations mode

The preset adds a persona that knows the workflow — inspect before editing,

build from templates, cite data sources, typeset mathematics with

pptx_add_math, finish with present — plus a focused toolset: the pptx_*

tools, file reading, web search/fetch, present, todo_write,

ask_user_question, and compaction. The tools themselves are registered

host-wide, so they are also usable outside this mode.

Tools

Tool · What it does

pptx_create · Creates a deck on a pastel palette: size (16:9 / 4:3), palette, default font, accent, page-number placement.

pptx_gallery · Builds a ready-made reference deck: features tours every template, alignment, list style and chart kind; showcase is a polished business deck.

pptx_add_slide · Adds a slide from a template (title, section, content, split-left, split-right, chart, code, closing, blank) with a heading, text, presenter and photo.

pptx_add_text · Arbitrary text box: role, x/y/w/h, font_size/font_face/bold/italic/underline/color/align/valign/bullet.

pptx_add_image · Downloads an image by url (or reads a local path), embeds the bytes and places it; the aspect ratio is preserved.

pptx_add_chart · Renders a chart from data (bar, stacked bar, line, area, pie, donut) with Python and embeds it.

pptx_add_code · Renders a code snippet as a dark card with syntax highlighting, line numbers, a file-name header and highlighted lines.

pptx_add_math · Typesets a LaTeX formula — matrices, integrals, sums with limits, fractions, Greek letters — and embeds it as a crisp transparent picture.

pptx_update_element · Moves, resizes, restyles, retypes or replaces an existing element by id.

pptx_remove · Deletes one element by id, or a whole slide by its 1-based number.

pptx_inspect · Lists the template, palette and every element with ids, geometry in inches, text, fonts and sources.

Coordinates are inches from the top-left corner of the slide (16:9 is

13.333 × 7.5), font sizes are points, colours are #RRGGBB, a basic colour

name, or a palette keyword (ink, muted, accent, background).

Templates

Template · Layout

title · Oversized centred heading, subtitle below, presenter line in the bottom-right corner. Page number off.

section · Divider: heading and subtitle centred on the slide.

content · Centred heading on top, a fixed-width text column underneath.

split-right · Photo fitted and centred in the right half; heading and text centred in the left half.

split-left · Mirrored: photo on the left, text on the right.

chart · Heading and caption on top, the lower two thirds reserved for pptx_add_chart.

code · Heading and subtitle on top, the rest reserved for pptx_add_code.

math · Heading and subtitle on top, an optional statement under them, the rest reserved for pptx_add_math.

closing · Large centred "Спасибо за внимание" (override with title), optional subtitle.

blank · Nothing but the background.

Every template centres its content inside its own region: the photo in its half,

the heading and text in theirs, blocks centered vertically.

Palettes

pptx_create takes palette: sand (default), mint, lavender, sky,

rose. A palette defines the pastel background of every slide, the body ink,

the muted secondary colour, the accent, and the chart series colours.

Alignment and lists

Alignment and text shape are parameters, not template defaults:

Parameter · Values

align · left, center, right, justify for the text block

title_align · the same for the heading and subtitle

bullet · true for a bulleted list, false (default) for one solid block

Defaults: content is left-aligned, split-left / split-right are centred

without bullets and left-aligned with them. Long lists read best on the left;

centred or right-aligned text suits short lines and single paragraphs. An

existing block can be re-aligned with pptx_update_element (align, bullet).

Charts

pptx_add_chart accepts data, not code:

{ "file": "sales.pptx", "kind": "bar", "stacked": false,
  "categories": ["2021", "2022", "2023", "2024"],
  "series": [ { "name": "Revenue", "values": [10.2, 13.8, 17.1, 21.4] } ],
  "y_label": "bn RUB", "value_format": "auto",
  "source": "Source: annual reports, 2025" }

Supported: bar (including stacked), line, area, pie, donut. The

renderer draws the palette background, a light grid, axis labels, a legend,

value labels and a source footnote. The image is 1800 × 1000 px and is embedded

into the deck.

Data pipeline: web_search / web_fetch find the numbers, the model puts them

into categories and series, pptx_add_chart draws the pic

…(truncated)

以上内容来自 npm 上的 README,我们只做格式化,不改内容。

版本

npm 上共发布:3,最后更新 2026-10-22

链接

GitHub · Homepage · npm

同类插件