CADCraft:AI 智能体零成本接管 AutoCAD 2D 制图
ArtCraft 的开源 Rust 项目原生支持 DXF 和 DWG,内置 MCP 制图服务器

一个名为 CADCraft 的新开源项目于 2026 年 10 月 8 日发布,四天内就积累了 3000 多个 GitHub star —— 这样的反响既反映了对一个无需订阅的 AutoCAD 替代品的压抑已久的需求,也反映了开发者对 AI 智能体真正能操控的 CAD 工具日益增长的兴趣。CADCraft 由 ArtCraft 开发团队完全用 Rust 构建,是对 AutoCAD 2D 制图工作流的洁净室重新实现,以 MIT 和 Apache 2.0 双重许可发布,在 macOS、Windows、Linux、FreeBSD 以及通过 WebAssembly 在浏览器中均免费可用。它自带一个内置的 MCP(模型上下文协议)服务器,这意味着任何兼容的 AI 智能体都可以直接下达制图命令、查询图纸内容、导出几何 —— 不需要人类 CAD 操作员参与。
对任何付过 AutoCAD 订阅账单的人来说,眼前的问题很直接:它处理专业图纸真的行吗?从项目文档和早期社区测试得出的答案是谨慎的肯定,并附带一个要紧的限定:v0.1.0 是首个版本,真实世界 DWG 往返的可靠性还需要更广泛的验证。
0 美元对 2095 美元:驱动这场讨论的那笔账
Autodesk 在 2021 年把 AutoCAD 改为仅订阅模式,当前的AutoCAD 2026 定价按方案和地区约为每月 260 美元或每年 2095 美元。对过去买永久许可、按多年摊销的个人顾问、小型建筑事务所或爱好者来说,这笔账不再算得过来。对想构建大规模生成或修改技术图纸的智能体流水线的 AI 基础设施工程师来说,它也构成实实在在的成本约束 —— 每一次制图操作都隐含着一份按席位计的许可费。
CADCraft 对这个局面的回应是结构性的,而不是增量式的。这个项目不是缩水功能的预览版,也不是导出受限的查看器。据其文档和 README,它实现了完整的 AutoCAD 2D 命令界面:LINE、CIRCLE、OFFSET、TRIM、EXTEND、HATCH、BLOCK、INSERT、带关联标注的 DIMSTYLE 变量系统、带视口的图纸空间、PLOT 和 EXPORTPDF。这些命令是否在每个边缘情况下都与 AutoCAD 表现一致,是一个有待实证的问题 —— 但团队所宣称的范围是完整的专业制图面,而不是精选的子集。
底层:Rust、egui 与 GPU 加速渲染
CADCraft 背后的技术选择回应了对早期开源 CAD 工具的一些长期抱怨。FreeCAD、LibreCAD 和 QCAD 都用 C++ 编写,图形界面依赖 Qt —— 这个组合在历史上造成了跨平台行为不一致、不小的打包开销,以及在大图纸上退化的性能。
CADCraft 的 UI 层建立在 egui 之上,那是一个 Rust 原生的即时模式 GUI 框架。即时模式设计意味着应用每一帧重建界面状态,而不是维护一棵持久的控件树。对于一个以「一条简短文本命令,随后一个视觉响应」为典型交互的命令驱动应用,这种架构非常契合:状态是显式的,转换是可预测的,界面可以同时编译为原生二进制和 WebAssembly,不需要单独的渲染路径。
渲染后端是wgpu,一个 Rust 原生的 GPU 抽象层,在 Windows 上对接 DirectX 12,Linux 上对接 Vulkan,macOS 上对接 Metal,浏览器中对接 WebGPU。这在实践中很要紧,因为同一套渲染代码可以在所有平台上产出硬件加速的输出,而不受 OpenGL 众所周知的驱动差异之累。使用 OpenGL 2.x 兼容配置的老一代开源 CAD 工具在 Intel 集成显卡和现代 Wayland 合成器上一直有问题;wgpu 面向的现代 API 解决了其中大部分。
该项目在每个受支持的平台上都以单个自包含二进制发布 —— 没有 Electron,不用装 Qt,除显卡驱动外没有系统库依赖。Windows 用户可以得到 MSI 安装包或便携 zip,有 x64、ARM64 和 x86 三个版本。macOS 得到一个既签名又公证过的通用 DMG。Linux 打包包括 AppImage、Flatpak、deb、rpm 和 tar.gz,提供 x86_64、aarch64 和 riscv64 构建,全部可从项目的发布页获取。WebAssembly 构建作为静态站点部署,没有服务端组件。
DWG 支持改变了开源 CAD 的算计
对专业用途而言,把一个可用的 AutoCAD 替代品和一个技术上有趣的实验区分开的能力,是 DWG 文件兼容性。AutoCAD 的二进制 DWG 格式是建筑、工程和施工行业事实上的交换格式。打不开、存不了 DWG 文件的 CAD 工具实际上是个平行宇宙 —— 画新图有用,但与建筑师和工程师实际运作其中的既有文件生态脱节。
CADCraft 原生处理 DXF—— AutoCAD 有文档的 ASCII 和二进制交换格式 —— 覆盖从 R12 到当前 2018 规范的所有版本,输出写为 R2000 格式的 DXF。仅此一项就足以让它成为一个可信的 DXF 转 SVG 或 DXF 转 PDF 的工具。
DWG 支持是另一回事。CADCraft 通过acadrust读写 DWG 文件,那是一个面向 DWG 和 DXF 格式的开源 Rust 库。DWG 是 Autodesk 的专有二进制规范;没有官方的公开文档,而且 Open Design Alliance 历史上曾对开源实现采取法律行动。acadrust —— 和 LibreOffice 的 DWG 导入一样 —— 处在与 Wine 或 ReactOS 相同的法律地带:技术上可用,法律上不确定,实践中被广泛使用。对专业事务所来说,实际问题是 acadrust 的 R13 到 2018 DWG 实现能否可靠地处理他们特定的图纸库。在发布后第四天,这个问题只能靠累积的用户测试来回答。
LibreCAD,最可比的纯 2D 开源工具,不原生支持 DWG。QCAD 的 DWG 支持是付费插件。FreeCAD 的主要设计面是带 Python 脚本环境的 3D 参数化建模 —— 它能处理简单情况的 DXF,但不是 AutoCAD 意义上的 2D 制图环境。CADCraft 填上的实际空白,正是让 FreeCAD 和 LibreCAD 在专业场景里只能算部分替代 AutoCAD 的那一块。
每条命令都是一次智能体调用:MCP 架构
让 CADCraft 有别于其他所有开源 CAD 工具的特性是架构上的,而不是功能上的:每一条面向用户的制图命令同时也是一个智能体可调用的 MCP 工具。
这个设计行得通,是因为 CADCraft 的界面是命令优先的。用户打开图层管理器、更改标注样式或绘制填充边界时,该动作在内部表示为一条带参数的命名命令 —— 和用户本可以键入的命令是同一条。应用不维护独立于用户界面的脚本层或插件 API。命令面就是界面。
CADCraft 自带的 MCP 服务器(通过cadcraft-cli mcp启动)通过标准化的 JSON-RPC 协议把整个命令面暴露给 AI 智能体。有文档记录的工具调用包括command_line,像用户键入那样发送文本命令;execute,发起结构化的、JSON 参数化的命令调用;inspect_drawing,获取图纸内容的结构化数据;query_entities,按图层或类型筛选实体;render,直接以响应载荷的形式接收当前图纸状态的 PNG 渲染;以及screenshot,捕获当前 UI 状态。
仓库根目录里有AGENTS.md和CLAUDE.md—— 描述 AI 智能体在项目内应有行为的文档 —— 这证实智能体优先的开发是一开始的设计目标,而不是发布后的补充。render工具尤其重要:它让智能体不需要外部截图基础设施就能获得对图纸状态的视觉反馈,在 MCP 协议内部完成一个闭合的感知-行动循环。
命令行界面cadcraft-cli让同样的工作流可以非交互地进行:
cadcraft-cli run --sample --script 'CIRCLE 22,3 1\n' --save out.dxf --export out.png
cadcraft-cli convert drawing.dxf drawing.svg
cadcraft-cli mcp
这让无头的 CAD 操作 —— 批量 DXF 转 PDF、导出 AI 生成的图纸、格式迁移流水线 —— 无需显示服务器、无需交互会话就能使用。对构建智能体流水线的基础设施工程师来说,实际后果是 CADCraft 可以部署在容器里、通过 MCP 控制,并在没有许可开销的情况下产出 DXF、SVG、PNG 或 PDF。
Rust 生态里最接近的可比工具是 vcad(GitHub 上的 ecto/vcad),它同样为 CAD 操作实现了 MCP 服务器。不过 vcad 面向的是 3D 边界表示(BRep)参数化建模而不是 2D 制图 —— 它不是 AutoCAD 制图工作流的替代品。Open CAD Studio 是另一个基于 Rust、使用 iced 和 wgpu 的 2D CAD 项目,但它缺少 DWG 支持,也不暴露智能体接口。CADCraft 目前是唯一同时具备 AutoCAD 命令行用户体验对等、原生 DXF、DWG 读写和原生 MCP 服务器的开源 2D 制图工具。
CADCraft 在开源 CAD 领域的位置
开源 CAD 生态历史上分成两类:功能深度能匹配 AutoCAD、但专业互操作性不行的工具(FreeCAD、BRL-CAD),以及近似 AutoCAD 2D 工作流、但缺少专业交换所需文件格式支持的工具(LibreCAD)。CADCraft 的定位直接针对第二个空白。
FreeCAD 是一个能力不俗的参数化 3D 建模器,有可观的用户社区和 Python 脚本。它的 2D 制图模式(Draft 工作台)能用,但不是围绕 2D 制图专业人员所依赖的 AutoCAD 命令行肌肉记忆设计的。FreeCAD 不原生支持 DWG;打开 DWG 文件需要 FreeCAD 提供的 DXF 库或 ODA File Converter,两者都不能透明集成。FreeCAD 没有 MCP 接口。
LibreCAD 专注于 2D 制图,在功能范围上与 CADCraft 最接近。它实现了命令行和大多数 AutoCAD 2D 图元。它不支持 DWG。它没有可编程的智能体接口。开发一直活跃,但进展不快。
AutoCAD 本身通过 Autodesk 的 AI 计划引入了 AI 功能,但那些是叠加在应用之上的副驾驶式助手 —— 用户仍是操作者,AI 给出建议。CADCraft 的思路在结构上不同:AI 智能体是操作者,CAD 引擎是被调用的工具。
CADCraft 的洁净室重新实现之说,意味着项目是根据观察到的行为和有文档的规范构建的,而不是依据 AutoCAD 的源码。这种做法的法律先例已经确立(Wine、ReactOS、OpenJDK),不过 Autodesk 在围绕 AutoCAD 命令界面主张其知识产权上的记录,不如微软对 Wine 的反应那样经过充分检验。
v0.1.0 尚未解决的问题
在如此复杂的类别里,首个版本留下了一些有分量的未决问题。
最重要的实际未知数是规模化下的 DWG 保真度。acadrust 的 R13 到 2018 DWG 支持还没有在建筑或机械工程事务所实际产出的各种复杂度的图纸上测试过。带外部参照(XREF)、专有实体类型或高级标注样式的复杂 DWG 文件可能暴露兼容性缺口。接下来几个月社区贡献的测试将决定 CADCraft 能否在文件交换工作流中真正替代有许可的 AutoCAD 或 DWG 兼容工具。
MCP 服务器在并发智能体调用和长时间智能体会话下的可靠性在现阶段也未经验证。一个运行多步制图流水线的智能体 —— 读取 DWG、提取房间边界、添加标注、导出 PDF —— 会以简短演示脚本做不到的方式考验 MCP 实现。智能体工具调用中的失效模式(超时、实体查询不完整、渲染伪影)只有在更广泛的部署中才会显现。
CADCraft 没有实现 AutoLISP 或任何等价的宏脚本语言,这意味着投入过自定义 LISP 例程的 AutoCAD 用户无法直接迁移那些工作流。MCP 的路线在架构上更适合 AI 原生的工作流而不是传统脚本,但对依赖 LISP 的既有工作流,它要求重新思考自动化层。
项目背后的 ArtCraft 组织维护着一套专业应用,包括 PhotoCraft、VectorCraft、FilmCraft 等,表明有持续的机构支持 —— 但其组织结构没有公开记录,而一个无订阅、MIT 许可的专业 CAD 工具的长期可持续性,以专有工具所没有的方式依赖社区贡献和开发者的延续。
现阶段清楚的是,CADCraft 为开源 2D CAD 设立了新的功能基线:AutoCAD 习惯的命令对等、原生 DXF 和 DWG、无框架开销的 GPU 加速渲染,以及内置于同一个二进制里的完整 AI 智能体接口。对于「专业级设计工具能否在没有按席位许可模式的情况下交付给 AI 智能体」这个更大的问题,CADCraft 的架构提供了第一份认真的肯定证据。下一道考验是社区能否在专业制图界所要求的规模上验证它的 DWG 保真度。
CADCraft 可在github.com/storytold/cadcraft获取,采用 MIT OR Apache-2.0 许可。从源码构建需要 Rust 1.95 或更高版本。