Preface¶
If you need to generate or process Word, Excel, PowerPoint files within a DSH agent, dsh-office-tools provides a plugin-based entry point. It exposes seven Office file tools to the model, supporting the creation, reading, and updating of .docx, .xlsx, and .pptx files within the session workspace. The entire process does not launch LibreOffice, PowerPoint, or Word sub-processes but uses pure JavaScript libraries for file generation and parsing.
What is This¶
dsh-office-tools is a DSH plugin maintained by kw78, licensed under MIT.
One-line positioning: DSH model-facing Office tools: create, read, and update Word (.docx), Excel (.xlsx), and PowerPoint (.pptx) files inside the session workspace.
Core Features¶
The plugin provides seven model-facing tools:
| Tool | Capability |
|---|---|
word_create |
Creates a .docx file with headings, paragraphs, lists, and a table |
word_read |
Extracts plain text from a .docx file |
excel_create |
Creates a multi-sheet .xlsx file from a scalar cell grid |
excel_read |
Reads one or more sheets into scalar rows |
excel_update |
Replaces or creates entire sheets, or writes cells by A1 address |
ppt_create |
Creates a 16:9 .pptx file with a title slide, headings, paragraphs, lists, notes, and PNG/JPG/GIF images |
ppt_read |
Extracts paragraph text, speaker notes, and image count from each slide |
Installation and Enablement¶
First, choose an installation method. Below are the three commands for npm, GitHub source, and local directory:
# npm
dsh plugin --profile web add dsh-office-tools
# GitHub source
dsh plugin --profile web add github:kw78/dsh-office-tools
# local checkout
dsh plugin --profile web add /path/to/dsh-office-tools
If building from local source, first run the following in the repository:
pnpm install
pnpm run check
pnpm run check will execute typecheck, tests, and build. After installation or build completion, restart the DSH server. After the above steps, the seven tools will appear in the next prompt assembly.
Usage Boundaries¶
The plugin’s file access is limited to the session workspace of the calling agent.
For reading, the limit is 50 MiB; text or cell results are bounded and will be marked as truncated.
For creation and updating, there are limits on rows and cell counts, and overwriting is rejected by default. The default value for overwrite is false.
Image files must be located within the session workspace and support .png, .jpg, .jpeg, .gif, with each image file limited to 20 MiB. ppt_create supports explicit inch coordinates x/y/w/h, or coordinates can be omitted to have the image automatically placed below the text.
Applicable Scenarios and Notes¶
dsh-office-tools is suitable for workflows that require direct generation of Office documents, reading document content, or updating spreadsheets within a DSH agent. The DSH ecosystem emphasizes “everything is a plugin,” and this introduces a third-party plugin; the community directory is an independent site and has no official affiliation with DeepSeek / High-Flyer.
The plugin runs with the current DSH process permissions. Before installation, it is recommended to review the source code, dependencies, and license. This repository is licensed under MIT, with the GitHub address as follows:
https://github.com/kw78/dsh-office-tools