DeepSeek Harness SpreadJS Editor 插件:在 Web UI 中直接编辑 Excel

前言

DeepSeek Harness (DSH) 的设计理念是“一切皆插件”。在 Web 环境下处理 Excel 文件,通常需要下载到本地编辑后再上传,或者集成复杂的第三方组件。dsh-plugin-spreadjs-editor 将 GrapeCity 的 SpreadJS Designer 直接嵌入到 DSH 的 Web UI 右侧文件树中,允许用户在不离开浏览器的情况下查看和编辑工作簿。

插件简介

  • 名称:grapecityxa/dsh-plugin-spreadjs-editor
  • 所有者:GrapeCityXA
  • 类别:客户端
  • 许可证:插件代码采用 MIT 许可证,内置的 SpreadJS 和 Designer 需商业授权(未配置时为试用模式)。
  • 核心价值:提供原子的保存机制、会话工作区限制和冲突检测,将 Excel 编辑集成到 DSH 的工作流中。

安装与前置要求

使用 DSH CLI 安装插件。需要确保宿主 DSH 版本不低于 0.1.5-rc.3。

  1. 执行安装命令:
    dsh plugin --profile web add @grapecity-software/dsh-spreadjs-editor
  1. 启动 DSH:
    dsh --profile web
  1. 在 Web UI 右侧文件树中打开 .xlsx、.xlsm、.csv、.sjs 或 .ss 文件即可使用。

核心功能

插件内置了 SpreadJS 和 Designer,提供了以下核心能力:

  1. 文件支持:支持 .xlsx、.xlsm、.csv、.sjs、.ss 格式。
  2. 编辑与查看:直接从文件树打开工作簿,使用 SpreadJS Designer 进行表格编辑。
  3. 保存机制:
    • 原子写入:通过临时文件重命名覆盖,保证写入完整性。
    • 冲突检测:保存前比对文件哈希,防止覆盖外部修改。
    • 会话限制:只允许保存到当前会话工作区内,防止越界。
    • UI 交互:保存按钮位于 DSH 文档头部工具栏,未保存时按钮前会出现标记点。同时支持 Ctrl+S 快捷键。
  4. 另存为:
    • 将工作簿写入工作区另一个路径,成功后就地切换到该文件。
    • 不覆盖同名文件,提示用户重命名。
  5. 主题跟随:编辑器自动跟随 DSH 的浅色/深色主题。
  6. 关于信息:在编辑器的“设置”标签页中包含“关于”按钮,显示内置版本与授权状态。

使用指南

  1. 打开文件:在 Web UI 右侧文件树中双击目标文件。
  2. 保存改动:编辑完成后,点击文档头部工具栏的“保存”按钮,或按 Ctrl+S。未保存时按钮前有标记点。
  3. 另存为:点击“另存为…”将工作簿复制到工作区其他位置并切换标签页。

配置与注意事项

  1. DSH 版本要求:必须使用 DSH >=0.1.5-rc.3。低于此版本无法使用文档头部动作槽,保存入口可能受限。
  2. Designer 隐藏:Designer 自带的“文件”标签页已从 Ribbon 隐藏,以避免与 DSH 头部的保存按钮混淆。
  3. 未保存状态处理:
    • 切走再切回或关闭标签页,未保存的改动不会丢失(通过缓存实现)。
    • 如果磁盘上的文件已被外部修改,面板右下角会提示“存在未保存的改动缓存,但文件已在磁盘上被修改”,可选择恢复或丢弃。
  4. 许可证配置:如需正式部署,需在 web profile 的 cordis.patch.yml 中配置 licenseKey 和 designerLicenseKey。
    - id: spreadjs-editor
      config:
        licenseKey: 'YOUR_SPREADJS_KEY'
        designerLicenseKey: 'YOUR_DESIGNER_KEY'
        maxSaveBytes: 67108864
        trustedHosts: []

结尾

该插件通过将 SpreadJS 集成到 DSH 的右侧栏,解决了 Web 环境下 Excel 编辑的集成问题。配合 DSH 原生的保存机制和冲突检测,适合需要在智能体工作流中直接操作 Excel 的场景。

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

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

小夜