/solidworks-automation-skill
SolidWorks CAD 自动化技能,优先覆盖经验证的零件、孔槽、装配、工程图、导出和交付复核;所有能力等级以 capabilities.yaml 为准,未验证能力必须走人工复核。
$ npx -y skills add wzyn20051216/solidworks-automation-skill --skill solidworks-automation-skill --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/solidworks-automation-skill
Context preview
The summary Claude sees to decide when to auto-load this skill.
SolidWorks CAD 自动化技能,优先覆盖经验证的零件、孔槽、装配、工程图、导出和交付复核;所有能力等级以 capabilities.yaml 为准,未验证能力必须走人工复核。
SKILL.md
solidworks-automation-skill.SKILL.mdname: solidworks-automation
description: "SolidWorks CAD 自动化技能,优先覆盖经验证的零件、孔槽、装配、工程图、导出和交付复核;所有能力等级以 capabilities.yaml 为准,未验证能力必须走人工复核。"
metadata: { "openclaw": { "homepage": "https://github.com/wzyn20051216/solidworks-automation-skill", "os": ["win32"], "requires": { "anyBins": ["python", "py"] } } }SolidWorks 自动化技能
快速开始
环境要求
- Windows 系统;原生 SolidWorks 格式需要 SolidWorks,开放格式无头写入不要求安装 CAD 软件
- Python 3.10+;原生 Windows CAD 自动化另需 `pywin32` / `comtypes`
- MCP/工具化调用需要 `mcp` / `pydantic`
- 处理 GLB/GLTF/OBJ/STL 网格参考模型时,可能还需要 `trimesh` / `pygltflib` / `numpy` / `Pillow`
- 如果通过 OpenClaw 使用,确保技能目录位于 `~/.openclaw/skills/solidworks-automation/` 或 `~/.agents/skills/solidworks-automation/`
入口自检
所有代理在执行 SolidWorks 自动化前,先运行技能自检:
python SKILL_DIR/scripts/sw_preflight.py
桌面端或 CLI 执行前建议先运行环境诊断:
python SKILL_DIR/scripts/cad_studio.py doctor
`capabilities.yaml` 是 Skill、MCP、队列和 UI 共用的能力唯一真源。能力等级为 `verified`、`pilot`、`reference_only` 或 `not_implemented`;后两者不得作为无人值守交付。
双入口与双后端
- CAD Studio 与 Skill/CLI/MCP 是平级入口,共用 Automation Job、NeutralCadDocument、Preview Manifest、Evidence Graph 和能力清单。
- 检测不到 SolidWorks/AutoCAD 时,只阻断 `SLDPRT/SLDASM/SLDDRW/DWG` 等原生格式;开放格式任务优先路由到 `headless_open_format_writing`。
- 无头写入使用 `scripts/headless_cad_writer.py`;OCCT/OCP 隔离进程真实写入 STEP、IGES、BREP、STL、OBJ、GLB,二维后端写入 DXF、SVG、PDF、PNG,并生成几何与 SHA-256 证据。
- DXF 交付会额外生成 `preview_scene`;已有 DXF 可通过 `python scripts/cad_studio.py preview-dxf --input drawing.dxf --output drawing.scene.json` 或 MCP `cadstudio_build_dxf_preview_scene` 转成受限 PreviewScene。该命令只读白名单实体并拒绝覆盖旧文件。
- OCCT 当前覆盖盒体、圆柱、布尔合并、圆柱孔切除、直纹/受限平滑 Loft、直线/单圆弧 Sweep、闭壳 Knit 和开放面 Thicken;复杂路径、自交偏置或缺少 OCP 运行时时保持 `blocked`。禁止通过改扩展名或空文件伪造支持。
- `delivery-preview` 只允许显示当前任务真实产物;固定样例必须标记 `demo-showcase` 与 `isDemo: true`,不得进入交付判断。
规则:
1. 检测到缺少 `comtypes` / `win32com` / `pythoncom` 时,向用户弹出友好确认: `检测到当前 Python 环境缺少 comtypes / win32com 库,是否授权 AI 自动为您配置本地环境?[Y/N]` 2. 用户输入 `Y` / `yes` 后,代理可在本地 shell 中自动执行 `python -m pip install "pywin32>=305" "comtypes>=1.2.0"` 补齐依赖;用户拒绝时停止并给出手动安装命令。 3. 检测不到 SolidWorks 安装或 COM 注册时,停止原生 SolidWorks 操作;若原生格式并非必需且 `fallbackPolicy=allow_open_formats`,继续执行无头开放格式后端,不要把整个任务误标为失败。
Python 依赖提醒
按任务最小化安装依赖,不要在普通零件建模时强制安装网格转换库:
# 核心 SolidWorks COM 自动化依赖
python -m pip install -r SKILL_DIR\requirements.txt
# 仅在需要 GLB/GLTF/OBJ/STL 网格检查、缩放或转换时安装
python -m pip install -r SKILL_DIR\requirements-mesh.txt
执行涉及 GLB/GLTF/FBX/BLEND 转 OBJ/STL 的任务前,先用 `importlib.util.find_spec()` 检查 `trimesh`、`pygltflib`、`PIL` 是否可用;缺失时先提示用户需要安装哪些库和用途,再安装或给出手动命令。
连接 SolidWorks
import sys; sys.path.insert(0, r"SKILL_DIR/scripts")
from sw_connect import mm
from sw_part import sketch, sketch_circle, extrude_boss
from sw_session import SolidWorksSession
session = SolidWorksSession()
model = session.new_part()
with sketch(model, "Front Plane") as sketch_name:
sketch_circle(model, 0, 0, mm(25))
extrude_boss(model, sketch_name, mm(50))
session.save(model, r"C:\temp\cylinder.sldprt")
session.export(model, r"C:\temp\cylinder.step")> 将 `SKILL_DIR` 替换为此技能的实际安装路径。
核心工作流
根据用户需求选择对应模块:
| 需求 | 脚本 | 参考文档 | |---|---|---| | 入口自检与依赖补齐 | `scripts/sw_preflight.py` | `references/troubleshooting.md` | | 无 CAD 开放格式写入 | `scripts/headless_cad_writer.py`、`scripts/cad_studio.py write-open-format` | `capabilities.yaml`、公共 CAD Core Schema | | 高级能力/类型库探测 | `scripts/sw_capability_probe.py` | `references/complex-mechanical-routing.md` | | 多模型宏生成防护 | `scripts/sw_macro_guard.py` | `references/openclaw.md` | | 友好会话 API | `scripts/sw_session.py` | - | | 连接与文档管理 | `scripts/sw_connect.py` | - | | 外观与材质 | `scripts/sw_appearance.py` | `references/appearance.md` | | 零件建模(草图+特征) | `scripts/sw_part.py` | `references/part-modeling.md` | | 盲孔/沉孔/沉头孔/半圆端槽与孔位验收 | `scripts/sw_hole_features.py`、`scripts/sw_review.py` | `references/complex-hole-features.md`、`references/review.md` | | 自然语言到参数化设计计划 / VibeCAD | `subskills/solidworks-vibecad/scripts/plan_from_brief.py` | `subskills/solidworks-vibecad/SKILL.md`、`subskills/solidworks-vibecad/README.md` | | 多圆角/倒角 CNC 机加工件 | `subskills/solidworks-fillet-chamfer-cnc/scripts/create_cnc_mount_template.py` | `subskills/solidworks-fillet-chamfer-cnc/SKILL.md`、`subskills/solidworks-fillet-chamfer-cnc/references/cnc-fillet-chamfer-lessons.md` | | 螺丝孔/螺纹孔、攻丝底孔 | `subskills/solidworks-threaded-holes/scripts/create_threaded_hole_template.py` | `subskills/solidworks-threaded-holes/SKILL.md`、`subskills/solidworks-threaded-holes/references/threaded-hole-lessons.md` | | AutoCAD DWG/DXF 二维绘图、线稿转 CAD、批量改图 | `subskills/autocad-automation/scripts/acad_draw.py`、`subskills/autocad-automation/scripts/acad_review.py` | `subskills/autocad-automation/SKILL.md`、`subskills/autocad-automation/references/troubleshooting.md` | | 装配体操作、齿轮/铰链/可拖动运动配合 | `scripts/sw_assembly.py` | `references/assembly.md` | | Motion Study 运动算例、旋转马达与结果审计 | `scripts/sw_motion.py` | `references/motion-study.md`、`references/complex-mechanical-routing.md` | | 工程图出图 | `scripts/sw_drawing.py` | `references/drawing.md` | | 文件导出 | `scripts/sw_export.py` | `references/export.md` | | 参数修改与自定义属性 | `scripts/sw_document_data.py` | `references/advanced.md` | | 装配 BOM CSV 与 Pack and Go | `scripts/sw_delivery.py` | `references/export.md` | | OBJ/STL 高还原网格参考导入 | `scripts/sw_import_mesh_reference.py` | `references/mesh-reference-import.md` | | 结果自审查 | `scripts/sw_review.py` | `references/review.md` | | 语义实体引用 | `scripts/sw_entity_reference.py` | 逐步替代 Face1/Edge1 和屏幕坐标 | | DFM 制造风险复核 | `scripts/dfm_review.py`、`scripts/dfm_profiles.py`、`scripts/cad_studio.py check-dfm` | 供应商 profile、B-Rep 证据、机加工、钣金、激光切割和 3D 打印的结构化规则检查 | | Routing 中性复核与前置 | `scripts/routing_review.py`、`scripts/cad_studio.py check-routing`、`scripts/cad_studio.py routing-preflight` | 端点、分段、长度、弯曲半径、碰撞/间隙、支撑、Routing BOM;原生写入必须等加载项/许可证证据 | | FEA 前置、输入与受限求解 | `scripts/fea_analysis.py`、`scripts/fea_convergence.py`、`scripts/cad_studio.py fea-preflight/prepare-fea/run-fea/run-fea-convergence` | CalculiX 2.23 已验证线
Read more
name: solidworks-automation
description: "SolidWorks CAD 自动化技能,优先覆盖经验证的零件、孔槽、装配、工程图、导出和交付复核;所有能力等级以 capabilities.yaml 为准,未验证能力必须走人工复核。"
metadata: { "openclaw": { "homepage": "https://github.com/wzyn20051216/solidworks-automation-skill", "os": ["win32"], "requires": { "anyBins": ["python", "py"] } } }SolidWorks 自动化技能
快速开始
环境要求
- Windows 系统;原生 SolidWorks 格式需要 SolidWorks,开放格式无头写入不要求安装 CAD 软件
- Python 3.10+;原生 Windows CAD 自动化另需 `pywin32` / `comtypes`
- MCP/工具化调用需要 `mcp` / `pydantic`
- 处理 GLB/GLTF/OBJ/STL 网格参考模型时,可能还需要 `trimesh` / `pygltflib` / `numpy` / `Pillow`
- 如果通过 OpenClaw 使用,确保技能目录位于 `~/.openclaw/skills/solidworks-automation/` 或 `~/.agents/skills/solidworks-automation/`
入口自检
所有代理在执行 SolidWorks 自动化前,先运行技能自检:
python SKILL_DIR/scripts/sw_preflight.py
桌面端或 CLI 执行前建议先运行环境诊断:
python SKILL_DIR/scripts/cad_studio.py doctor
`capabilities.yaml` 是 Skill、MCP、队列和 UI 共用的能力唯一真源。能力等级为 `verified`、`pilot`、`reference_only` 或 `not_implemented`;后两者不得作为无人值守交付。
双入口与双后端
- CAD Studio 与 Skill/CLI/MCP 是平级入口,共用 Automation Job、NeutralCadDocument、Preview Manifest、Evidence Graph 和能力清单。
- 检测不到 SolidWorks/AutoCAD 时,只阻断 `SLDPRT/SLDASM/SLDDRW/DWG` 等原生格式;开放格式任务优先路由到 `headless_open_format_writing`。
- 无头写入使用 `scripts/headless_cad_writer.py`;OCCT/OCP 隔离进程真实写入 STEP、IGES、BREP、STL、OBJ、GLB,二维后端写入 DXF、SVG、PDF、PNG,并生成几何与 SHA-256 证据。
- DXF 交付会额外生成 `preview_scene`;已有 DXF 可通过 `python scripts/cad_studio.py preview-dxf --input drawing.dxf --output drawing.scene.json` 或 MCP `cadstudio_build_dxf_preview_scene` 转成受限 PreviewScene。该命令只读白名单实体并拒绝覆盖旧文件。
- OCCT 当前覆盖盒体、圆柱、布尔合并、圆柱孔切除、直纹/受限平滑 Loft、直线/单圆弧 Sweep、闭壳 Knit 和开放面 Thicken;复杂路径、自交偏置或缺少 OCP 运行时时保持 `blocked`。禁止通过改扩展名或空文件伪造支持。
- `delivery-preview` 只允许显示当前任务真实产物;固定样例必须标记 `demo-showcase` 与 `isDemo: true`,不得进入交付判断。
规则:
1. 检测到缺少 `comtypes` / `win32com` / `pythoncom` 时,向用户弹出友好确认: `检测到当前 Python 环境缺少 comtypes / win32com 库,是否授权 AI 自动为您配置本地环境?[Y/N]` 2. 用户输入 `Y` / `yes` 后,代理可在本地 shell 中自动执行 `python -m pip install "pywin32>=305" "comtypes>=1.2.0"` 补齐依赖;用户拒绝时停止并给出手动安装命令。 3. 检测不到 SolidWorks 安装或 COM 注册时,停止原生 SolidWorks 操作;若原生格式并非必需且 `fallbackPolicy=allow_open_formats`,继续执行无头开放格式后端,不要把整个任务误标为失败。
Python 依赖提醒
按任务最小化安装依赖,不要在普通零件建模时强制安装网格转换库:
# 核心 SolidWorks COM 自动化依赖 python -m pip install -r SKILL_DIR\requirements.txt # 仅在需要 GLB/GLTF/OBJ/STL 网格检查、缩放或转换时安装 python -m pip install -r SKILL_DIR\requirements-mesh.txt
执行涉及 GLB/GLTF/FBX/BLEND 转 OBJ/STL 的任务前,先用 `importlib.util.find_spec()` 检查 `trimesh`、`pygltflib`、`PIL` 是否可用;缺失时先提示用户需要安装哪些库和用途,再安装或给出手动命令。
连接 SolidWorks
import sys; sys.path.insert(0, r"SKILL_DIR/scripts")
from sw_connect import mm
from sw_part import sketch, sketch_circle, extrude_boss
from sw_session import SolidWorksSession
session = SolidWorksSession()
model = session.new_part()
with sketch(model, "Front Plane") as sketch_name:
sketch_circle(model, 0, 0, mm(25))
extrude_boss(model, sketch_name, mm(50))
session.save(model, r"C:\temp\cylinder.sldprt")
session.export(model, r"C:\temp\cylinder.step")> 将 `SKILL_DIR` 替换为此技能的实际安装路径。
核心工作流
根据用户需求选择对应模块:
| 需求 | 脚本 | 参考文档 | |---|---|---| | 入口自检与依赖补齐 | `scripts/sw_preflight.py` | `references/troubleshooting.md` | | 无 CAD 开放格式写入 | `scripts/headless_cad_writer.py`、`scripts/cad_studio.py write-open-format` | `capabilities.yaml`、公共 CAD Core Schema | | 高级能力/类型库探测 | `scripts/sw_capability_probe.py` | `references/complex-mechanical-routing.md` | | 多模型宏生成防护 | `scripts/sw_macro_guard.py` | `references/openclaw.md` | | 友好会话 API | `scripts/sw_session.py` | - | | 连接与文档管理 | `scripts/sw_connect.py` | - | | 外观与材质 | `scripts/sw_appearance.py` | `references/appearance.md` | | 零件建模(草图+特征) | `scripts/sw_part.py` | `references/part-modeling.md` | | 盲孔/沉孔/沉头孔/半圆端槽与孔位验收 | `scripts/sw_hole_features.py`、`scripts/sw_review.py` | `references/complex-hole-features.md`、`references/review.md` | | 自然语言到参数化设计计划 / VibeCAD | `subskills/solidworks-vibecad/scripts/plan_from_brief.py` | `subskills/solidworks-vibecad/SKILL.md`、`subskills/solidworks-vibecad/README.md` | | 多圆角/倒角 CNC 机加工件 | `subskills/solidworks-fillet-chamfer-cnc/scripts/create_cnc_mount_template.py` | `subskills/solidworks-fillet-chamfer-cnc/SKILL.md`、`subskills/solidworks-fillet-chamfer-cnc/references/cnc-fillet-chamfer-lessons.md` | | 螺丝孔/螺纹孔、攻丝底孔 | `subskills/solidworks-threaded-holes/scripts/create_threaded_hole_template.py` | `subskills/solidworks-threaded-holes/SKILL.md`、`subskills/solidworks-threaded-holes/references/threaded-hole-lessons.md` | | AutoCAD DWG/DXF 二维绘图、线稿转 CAD、批量改图 | `subskills/autocad-automation/scripts/acad_draw.py`、`subskills/autocad-automation/scripts/acad_review.py` | `subskills/autocad-automation/SKILL.md`、`subskills/autocad-automation/references/troubleshooting.md` | | 装配体操作、齿轮/铰链/可拖动运动配合 | `scripts/sw_assembly.py` | `references/assembly.md` | | Motion Study 运动算例、旋转马达与结果审计 | `scripts/sw_motion.py` | `references/motion-study.md`、`references/complex-mechanical-routing.md` | | 工程图出图 | `scripts/sw_drawing.py` | `references/drawing.md` | | 文件导出 | `scripts/sw_export.py` | `references/export.md` | | 参数修改与自定义属性 | `scripts/sw_document_data.py` | `references/advanced.md` | | 装配 BOM CSV 与 Pack and Go | `scripts/sw_delivery.py` | `references/export.md` | | OBJ/STL 高还原网格参考导入 | `scripts/sw_import_mesh_reference.py` | `references/mesh-reference-import.md` | | 结果自审查 | `scripts/sw_review.py` | `references/review.md` | | 语义实体引用 | `scripts/sw_entity_reference.py` | 逐步替代 Face1/Edge1 和屏幕坐标 | | DFM 制造风险复核 | `scripts/dfm_review.py`、`scripts/dfm_profiles.py`、`scripts/cad_studio.py check-dfm` | 供应商 profile、B-Rep 证据、机加工、钣金、激光切割和 3D 打印的结构化规则检查 | | Routing 中性复核与前置 | `scripts/routing_review.py`、`scripts/cad_studio.py check-routing`、`scripts/cad_studio.py routing-preflight` | 端点、分段、长度、弯曲半径、碰撞/间隙、支撑、Routing BOM;原生写入必须等加载项/许可证证据 | | FEA 前置、输入与受限求解 | `scripts/fea_analysis.py`、`scripts/fea_convergence.py`、`scripts/cad_studio.py fea-preflight/prepare-fea/run-fea/run-fea-convergence` | CalculiX 2.23 已验证线
CAD Studio 桌面端与 Skill/CLI/MCP 是平级入口:既可通过 Python COM 控制本机 SolidWorks/AutoCAD,也可在没有 CAD 软件时使用无头后端写入开放格式。实际可执行范围以根目录 capabilities.yaml 为唯一真源;未验证能力不会被包装成已完成的无人值守交付。 可靠性边界:当前真机基线为 SolidWorks 2024、SolidWorks 2026 SP01.1 和 AutoCAD 2024。SolidWorks 2026 仅对能力清单中列出 2026
Repo: wzyn20051216/solidworks-automation-skill

