dsh-office-com: Windows 本机真实 Office 自动化插件(DSH)

DSH(DeepSeek Harness)的插件生态中,文件级读写工具(如 openpyxl)无法模拟真实 Office 的运行时行为,例如无法执行公式重算或运行 VBA 宏。dsh-office-com 提供了 COM 通道,直接操作本机 Office 实例,填补了这一空白。

插件定位

这是一个 Windows 本机真实 Office 自动化插件,由开发者 wly8691-jpg 维护。它通过 COM 驱动真实的 Excel 和 Word 实例,支持 VBA 宏、透视表和活公式重算。核心功能覆盖会计旗舰场景(分录、总账、透视表),并提供完整的进程生命周期管理。

核心功能

29 个底层工具

工具集分为应用管理、读写、公式/宏、透视表和 Word 操作。

  • 应用发现 / 启动:office_apps,office_launch
  • Excel 读写:excel_new(新建并置顶可见),excel_open,excel_read_range,excel_write_range
  • Excel 公式 / 宏:excel_formula_set,excel_recalc(强制重算取活值),excel_vba_run(运行已有宏)
  • 透视表:excel_pivot_create,excel_pivot_refresh
  • Word:word_open(读结构),word_edit(全文查找替换)
  • 会计旗舰(底层):excel_journal_post(写分录 + 借贷平衡校验),excel_ledger_gen(日记账 → 科目总账)

6 个任务级工具

任务级工具将一套完整的业务步骤封装为一次调用,Agent 不必手动编排多个 COM 步骤。

  • office_generate_accounting_report:生成完整会计报告(日记账 + 总账 + 透视表 + 强制重算)。
  • office_check_workbook:只读体检,检查求值错误、外部链接、保护表和未保存改动。
  • office_replace_document_terms:批量替换术语(如合同中的金额、日期),先计数再统一替换。
  • office_update_monthly_report:按期间更新月度报告,替换而非追加。
  • office_apply_template:将模板的外观(字体、边框、格式)套用到目标工作簿。
  • office_prepare_management_summary:从数据表生成管理层摘要,包含维度聚合和对比。

8 个 kb_* 知识库分类工具

这一族工具是 Office 与 KnowLP 的组合面,用于在陌生环境中建立分类体系。

  • kb_scan_root:登记目录树,支持扩展名 + magic 双判据分类。
  • kb_taxonomy_get / kb_taxonomy_set:获取或设置分类学,自带漂移审计。
  • kb_classify:按分类学规则归档,支持语义缝(use_semantics=true)。
  • kb_scheme_propose:生成影子目录方案(label 链),仅出方案不碰文件。
  • kb_annotate:写标注,支持写回原文件。
  • kb_verify:核账,验证标注可解析和源文件指纹。
  • kb_write_back_office:向 Office 文件写入自定义文档属性,不碰单元格内容。

执行模式

所有工具支持三种执行模式:

  • preview:真经 COM 打开文件预演,不落笔,用于动手前确认。
  • managed:打开 → 修改 → 校验 → 保存 → 关闭,适用于批量作业。
  • attached:操作当前运行实例,不主动关闭、不自动覆盖,适用于用户正在编辑的场景。

典型用法

1. 写入数据 → 写公式 → 重算读活值

// 写入数据
{ "tool": "excel_write_range", "range": "A1:C4",
  "value": [["科目","月份","金额"],["办公费","1月",100],["办公费","2月",150],["差旅费","1月",80]] }

// 设置公式
{ "tool": "excel_formula_set", "range": "D1", "formula": "=SUM(C2:C4)" }

// 强制重算后读回的是计算后的活值
{ "tool": "excel_recalc", "range": "D1" }
// → { "value": 330 }

2. 使用 preview 模式预演

// 第一步:预演修改,不落笔
{ "tool": "excel_write_range", "path": "C:/book.xlsx", "range": "A2:B2",
  "value": [["x","y"]], "mode": "preview" }
// → { "preview": true, "changed": false, "output": { "target": { "sheet": "Sheet1", "address": "$A$2:$B$2" }, "overwrite_non_empty": 2 } }

// 第二步:确认无误后执行
{ "tool": "excel_write_range", "path": "C:/book.xlsx", "range": "A2:B2", "value": [["x","y"]], "mode": "managed" }

适用场景与注意

  • 依赖环境:真实 Office 测试需在目标机器上执行,依赖本机 OfficeMCP 服务。
  • 权限要求:插件以当前 DSH 进程权限运行,安装前应检查源码与许可证(MIT)。
  • 进程管理:插件具备孤儿进程回收能力,通过 PID 归属和可见性判断来管理 Excel 进程生命周期。

相关链接

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜