通过 `/documents`、`/pdf`、`/presentations`、`/spreadsheets` 创建、读取与编辑 DOCX、PDF、PPTX、XLSX,把页面渲染出来核对排版,并将侧边栏预览中的选区变成发给会话的修改要求。需 Python 3.10–3.13。
安装
# npm 包(预构建)
dsh plugin --profile web add dsh-office-kit
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:hairyf/dsh-office-kit
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
DSH Office Kit
为 DeepSeek Harness (DSH) 提供本地 Word、PDF、演示文稿与电子表格能力,支持 / 菜单、引用 Chip,以及侧边栏预览中的选区标注与修改请求。
📦 安装
在官方插件中安装 dsh-office-kit
或使用命令行安装
dsh plugin add dsh-office-kit
- 在 设置 → 插件 中启用。
- 需要 DSH ≥
0.2.1-rc.2、Python(无需,没有将自动安装)3.10–3.13。 - Windows 缺少兼容 Python 时自动安装;macOS / Linux 使用现有 Python。
特性
- 📝 Word:
/documents创建、读取和编辑 DOCX,支持表格、图片、公式与页眉页脚。 - 📄 PDF:
/pdf创建、读取和编辑 PDF,支持合并、旋转、删页与元数据。 - 📽️ 演示文稿:
/presentations创建、读取和编辑 PPTX,支持项目符号、表格、图表与图片。 - 📊 电子表格:
/spreadsheets创建、读取和编辑 XLSX,支持公式、样式、图表、冻结窗格与重算。 - 🖍️ 侧边栏标注:在 PDF、DOC/DOCX、PPTX、XLSX 预览中吸附段落或框选区域,批量提交修改要求。
- 🔗 会话引用:通过 Chip 调用文档技能;注释链接可悬停查看文件名与要求,PDF 标注附选区截图。
- 🖼️ 渲染校验:DOCX/PPTX/XLSX 经 DeepSeek Harness 自带的 LibreOffice Kit(Windows/macOS 原生引擎,Linux 走 WASM)栅格化,PDF 直接用 PyMuPDF;缺失字体会在报告里点名,不再静默产出豆腐块。SVG/PDF 素材可用
ensure_raster_image.py转成 PNG 后嵌入。 - 🧮 活体表格:
excel-live-control技能通过 COM 驱动已经打开的 Excel / WPS 表格(读区、写值、样式、图表、重算、保存)。
🚀 快速开始
通过菜单处理文档
- 在输入框键入
/,选择 文档、PDF 文档、演示文稿 或 电子表格。 - 回车插入 Chip,描述创建、读取或修改任务。
- 打开生成的文件,在侧边栏预览结果。
在预览中请求修改
- 打开 PDF 或 DOC/DOCX,点击工具栏的 请求修改。
- 悬停吸附段落,点击或拖动框选,输入要求并添加注释。
- 悬停底部 注释数量 查看列表,点击 发送;取消 清空本批。
- Esc:先取消当前选区,再按一次退出标注模式。
- 附件:PDF 附选区截图;DOC/DOCX 仅发送文字与定位信息。
- 草稿:已有输入时先合入草稿,由你确认发送;暂存注释刷新后不保留。
💡 示例文档
📚 配置与限制
- Python:
DSH_OFFICE_PYTHON可指定解释器。 - 标注范围:仅 PDF、DOC/DOCX;扫描 PDF 可框选截图,不提供 OCR。
- 本地文件:不支持 Google Docs / Slides / Sheets 或远程编辑。
- 完整清单:能力与未支持项。
🛠️ 开发与贡献
pnpm install
pnpm run lint --fix
pnpm run typecheck
pnpm run test -- --run
pnpm run build
📜️ 许可证
- MIT
- 示例文档保留 Apache Tika 的许可与声明。
链接
同类插件
tt-a1i/archify#integrations/deepseek-harness★ 87151
从仓库或系统描述生成经过校验的自包含交互式架构图、流程图、时序图、数据流图和生命周期图。
dream-num/dsh-univer-office★ 581
为 DeepSeek Harness 打造一个真正的办公环境。Univer Office 插件将电子表格、文档、幻灯片、画布、多维表格等汇聚到同一个运行时——数据互联、修改经过校验、变更按版本管理,并以隔离工作树支持多 Agent 协作。
ECNU/EduWork#dsh-knowledge-studio★ 214
基于工作区资料的 Studio,复用 DSH 模型与共享成果服务,制作报告、演示文稿、表格、思维导图、测验、闪卡及音视频。Office 生成需 Python 3.12+ 及相关依赖,并配置 DSH_OFFICE_PYTHON;媒体渲染需 Chromium;本地语音转写另需 whisper.cpp 和模型。
PerryLink/dsh-industry-research★ 211
面向 DeepSeek Harness 的确定性行业研究报告:公司与行业研究流程基于分阶段证据产出结构化、可核验的报告。
HuanLinOTO/dsh-plugin-mineru★ 48
向模型暴露 MineRU 文档解析工具。
PolinniZhong/dsh-knit★ 47
把会话工作区里已有的 Markdown 文档、源码、图片与视频列进 DSH 侧边栏,按与当前对话的相关性排序。默认的词法模式用最近几条消息在本地与标题、摘要、正文做带 IDF 加权的匹配(BM25)—— 不调用模型、没有网络出口,内容不出本机。列表来自工作区扫描,而不是「最近打开记录」,所以重启 DSH 或新开会话都不会变空。排序结果组织成主要 / 辅助 / 相关三层的阅读顺序,每一条都写明可核验的理由(命中了哪个字段、被哪一篇引用),点一行即可就地预览:Markdown 按渲染后的样子显示、相对路径图片真实渲染、源码走宿主自带的语法高亮、视频走 HTTP Range 流式播放。同一份 Context Pack 也作为 knit_docs 工具交给 agent。后续版本陆续补上读取证据与生命周期(归因在读那一刻冻结)、固定 / 排除(排除先于检索生效,且可恢复)、关系证据(引用 / 导入 / 测试,带行号)与增量索引(重启后复用)。v0.23 起还多一条可选的混合检索:默认关闭,只有你自己配好 Ollama 或 OpenAI 兼容的 embedding 服务才会生效。它生效时,发出去的是你这句查询原话加上每篇候选文件的标题与摘要 —— Markdown 的摘要取自正文首段(不超过 60 字),代码的摘要是它所在的工作区相对目录,图片 / 视频贡献的是文件名;完整正文与绝对路径都不发送,指向本机服务(loopback)时内容不出这台机器。v0.24 起还能做变更关联:用一条只读的 git status(固定 argv、不走 shell、子进程环境白名单),配合同一套引用 / 导入 / 测试 / 提及证据,指出这次改动大概率该一起看哪些文件 —— 默认关闭。语义检索的收益仍待真 provider 实测,因此不承诺召回提升。
社区评论
评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。