插件目录 / Developer / dsh-office-tools
dsh-office-tools
已验证 · 实测可装 kw78
功能简介
Model-facing Office tools for DeepSeek Harness: Word (.docx), Excel (.xlsx), and PowerPoint (.pptx) create/read/update with workspace-safe paths and PPT image embedding.
可用 — 实测通过,社区增长中
Model-facing Office tools for DeepSeek Harness: Word (.docx), Excel (.xlsx), and PowerPoint (.pptx) create/read/update with workspace-safe paths and PPT image embedding. 实测能干净安装、正常启动。社区在增长,是个稳妥选择。
「已验证」表示我们的自动化 CI 在干净 profile 里实际执行了 dsh plugin add 并启动成功——仅此而已。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。
README
dsh-office-tools
If you find this project useful, please give it a ⭐ Star — it helps others find it.
Eight model-facing Office file tools for DeepSeek Harness: create, read, and update Word (.docx), Excel (.xlsx), and PowerPoint (.pptx) files inside the session workspace. Zero runtime dependencies — every package is generated and parsed by the plugin's own OOXML engine, and every byte crosses the official ctx.fs service.
Tools
| Tool | Purpose |
|---|---|
word_create |
Create .docx (title, paragraphs, bullets, one table) |
word_read |
Extract text; format: "markdown" renders structure |
word_update |
Append paragraphs, bullets, and/or a table |
excel_create |
Create multi-sheet .xlsx from cell grids |
excel_read |
Read sheets as rows; formulas return cached values or '=…' |
excel_update |
Replace/create sheets, or write cells by A1 address |
ppt_create |
Create 16:9 .pptx (slides, bullets, notes, linked images) |
ppt_read |
Extract text, notes, tables, and per-shape geometry |
Strings starting with = become real Excel formulas.
Demo
One prompt, a quarterly-report trio:
Install
dsh plugin --profile web add dsh-office-tools # npm (recommended)
dsh plugin --profile web add github:kw78/dsh-office-tools # from source
Restart DSH after installing. Requires a profile that provides the fs service (every profile with built-in read/write tools does).
Notes
- All paths are confined to the session workspace;
overwritedefaults tofalse. - Reads accept any real package (STORE/DEFLATE) with zip-bomb guards; updates refuse packages with binary parts instead of corrupting them.
- PPT images are linked, not embedded: the sanctioned
ctx.fswrite channel is UTF-8 text only, so a package cannot carry binary image parts. Keep image files next to the deck when moving it, and note that PowerPoint blocks external content by default — a linked picture renders as a "blocked automatic download" placeholder until you enable external content (File → Info → Enable Content, or add the folder under Trust Center → Trusted Locations). This is a PowerPoint security policy, not a package defect. ppt_createechoes every element's landing position;ppt_readreturns the same geometry for any deck.
Configuration
One option: enablePptTools (default true) — set it to false to coexist with a dedicated presentation plugin such as dsh-ppt:
- insert:
- id: dsh-office-tools
config:
enablePptTools: false
Development
pnpm install && pnpm run check # typecheck + tests + build
pnpm run test:e2e # real-composition E2E (sandbox-policy + fs-sandbox + tools)
Compatibility: the declared DSH 0.1.x ranges and >=0.2.0-rc.1 <0.3.0-0; exact tested releases live in package.json (dsh.compatibility.dshReleases). CI exercises both 0.1.2-rc.1 and 0.2.0-rc.1. DSH 0.3.x is not declared supported.
Generated packages are limited to 50 MiB. Up to 200 PPT slides (including an optional title slide) are accepted; linked images remain external. See architecture and migration plan for the binary-write seam needed for true embedding.
Further reading: DEVELOPMENT.md · ROADMAP.md · hub-registration.md · MIT License
安装
装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:
dsh plugin add dshbase-catalog 然后对 agent 说「帮我装 dsh-office-tools」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包。
该插件是 GitHub 源码(未发 npm)——直接从仓库装:
Web profile:
dsh plugin --profile web add github:kw78/dsh-office-tools Headless(CLI)profile:
dsh plugin --profile headless add github:kw78/dsh-office-tools 实测报告
验证通过:从 GitHub 源码完成 L1 安装 + L2 加载 + L3 运行(dsh 0.1.0-rc.6)。