DSH 插件 dsh-matlab:为智能体提供本地 MATLAB 运行能力

前言

DeepSeek Harness (DSH) 采用了插件化架构,这意味着开发者可以按需扩展 Agent 的能力。在数学建模、数据分析或科学计算场景中,智能体往往需要调用本地的 MATLAB 环境来执行代码并获取结果。手动配置过程繁琐,且难以处理环境依赖。dsh-matlab 插件旨在解决这一痛点,通过标准化接口,让 Agent 直接调用宿主机的 MATLAB 执行任务。

是什么

dsh-matlab 是一个由 weijianguizhou 维护的 DSH 插件。它作为一个纯 host 工具插件运行,不修改任何官方代码。其核心价值在于提供了一个 matlab.run 工具,允许 Agent 直接在本机上执行 MATLAB 代码,并将代码运行产生的输出文本、标准错误信息以及生成的图片返回给 Agent。

核心功能

该插件主要包含以下功能:

  1. 代码执行与返回:提供 matlab.run 工具,接收 MATLAB 代码字符串和可选的工作目录,执行脚本并返回 stdout 和 stderr。
  2. 自动存图:在执行代码时,会自动将产生的所有 figure 保存为 PNG 图片,存放在工作区的 .dsh-matlab/figures/ 目录下,并返回图片路径。
  3. 安全审批机制:考虑到 MATLAB 可执行任意代码,存在潜在风险,插件默认在每次调用前请求用户批准。用户也可在配置中关闭此选项。
  4. 本地执行:所有代码在本地宿主机的 MATLAB 环境中运行,而非远程。
  5. 零侵入:作为纯 host 工具插件,不涉及对 DSH 官方代码的修改。

安装与启用

在目标 profile 中作为 link 依赖安装,并将其加入 bundle 层。

使用命令行安装:

dsh plugin --profile desktop add link:/path/to/dsh-matlab

或者手动编辑 profiles/<name>/package.json,添加依赖并在 dsh.profile.bundles 列表中声明,随后重启 DSH Desktop。

典型用法

在 profile 的组合配置中添加插件定义。如果未指定 matlabPath,插件会尝试自动检测本机 MATLAB 路径。

- id: matlab
  name: dsh-matlab
  config:
    matlabPath: "D:\\Program Files\\MATLAB 2025\\bin\\matlab.exe"
    timeoutMs: 120000
    requireApproval: true

调用时,Agent 直接调用该工具:

// 调用方式示例
matlab.run(code, workdir)

适用场景与注意

此插件适用于需要本地计算能力的 Agent 场景,如数学建模助手或数据分析工具。

使用前需确认:
1. 本机已安装 MATLAB。
2. 环境满足 Node.js >= 18.17.0。
3. 理解 MATLAB 执行任意代码的安全风险。默认的审批机制是为了防止恶意代码对本地环境造成破坏。

结语

dsh-matlab 通过标准化的 matlab.run 接口,将本地 MATLAB 能力无缝集成到 DSH 生态中。它不仅简化了配置,还通过自动存图和审批机制保障了安全性。对于需要深度本地计算的智能体开发,这是一个实用的工具。

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

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

小夜