dsh-cad-design: DSH 的参数化 CAD 工具

前言

在 DeepSeek Harness (DSH) 生态中,智能体通常擅长处理文本或通用代码,但在机械设计领域,处理几何形状和工程文件需要特定的能力。dsh-cad-design 插件通过集成 CadQuery 和 ezdxf,为智能体提供了参数化 CAD 设计能力,使其能够编写建模代码、校验几何、渲染预览并导出制造文件。

这是什么

dsh-cad-design 是一个参数化 CAD 工具集,专为 DeepSeek Harness 设计。它允许智能体编写 CadQuery 代码来构建 3D 零件,或编写 ezdxf 代码来生成 2D 工程图。该工具链覆盖了从代码编写、几何校验、预览渲染到文件导出的完整工作流。

核心功能

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

  • 3D 建模:基于 CadQuery 和 OpenCASCADE 内核,支持原生 STEP 导出。
  • 2D 绘图:基于 ezdxf,支持生成和导出 DXF 工程图。
  • 几何校验:使用 cad_validate 工具检查代码生成的几何体的有效性。
  • 预览渲染:使用 cad_render 生成 PNG 或 SVG 预览图,并提供体积或边界框等事实数据。
  • 文件导出:支持导出 STEP、IGES、STL、3MF (CadQuery) 和 DXF (ezdxf) 格式。
  • 文件转换:使用 cad_convert 在不同制造格式间转换。
  • 参数化技能:内置 cadquery-design 技能(用于 3D 零件设计)和 ezdxf-drafting 技能(用于 2D 草图绘制)。

安装与配置

使用该插件前,需要安装相应的 Python 依赖:

pip install cadquery    # 3D 建模依赖
pip install ezdxf matplotlib   # 2D 绘图及预览依赖

安装插件时,必须显式指定 --profile 参数。通常使用包含 Web 界面的 web profile:

dsh plugin --profile web add dsh-cad-design

安装完成后,可通过 cad_doctor 工具检查环境配置和依赖情况。

配置示例

插件的配置位于目标 profile 的 cordis.patch.yml 中。以下是配置片段:

- insert:
    - id: cad-tools
      name: dsh-cad-design
      config:
        workDir: ''               # 默认为 <session cwd>/.dsh/cad
        timeoutSeconds: 120
        enableSkill: true
        backendPriority:          # 后端路由优先级
          - cadquery
          - ezdxf
        cadquery:
          enabled: true
          pythonPath: ''          # 留空则自动检测
        ezdxf:
          enabled: true
          pythonPath: ''

环境变量 DSH_CAD_PYTHON 也可用于覆盖默认的 Python 解释器路径。

典型用法

当用户下达设计指令时,智能体通常按以下流程操作:

  1. 加载技能:智能体加载 cadquery-design 或 ezdxf-drafting 技能。
  2. 校验:执行 cad_validate 对代码和几何结果进行校验。
  3. 预览:执行 cad_render 生成预览图(PNG/SVG)。
  4. 迭代:根据预览结果调整代码,直到设计符合要求。
  5. 导出:执行 cad_export 将文件导出为 STEP 或 DXF 等格式。

例如,用户指令为 “Design an M8 hex-nut retainer, 3 mm wall, and export STEP”,智能体将按上述步骤完成设计并输出 retainer.step 文件。

注意事项

  • 执行权限:cad_* 工具会在本地执行 Python 代码。插件本身不实现策略限制,在共享或不可信环境中部署时,需配合 DSH 的 tools/pre-execute 钩子进行权限控制。
  • Profile 限制:安装插件必须显式指定 --profile,且该 profile 必须包含界面 bundle(如 web profile)。
  • 生态区分:npm 上存在另一个同名插件 dsh-cad(由 LAU-MARS 维护),这是一个 CAD 查看器插件,与本插件互补,本插件负责建模出图,它负责在 Web 界面中查看模型。
  • 环境要求:需要 Python 3.10+ 及对应的 pip 包(cadquery/ezdxf/matplotlib)。

结语

dsh-cad-design 将参数化 CAD 能力引入了 DSH 智能体工作流,使智能体能够从代码生成直接跨越到制造文件输出。对于需要自动化机械设计流程的开发者,该插件提供了从设计到验证的完整工具链。

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

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

小夜