* 戳上方蓝字“开源先锋”关注我
大家好,我是开源君!
之前写过 PhotoCraft 的文章,评论区有网友问:什么时候把 auto CAD 也复刻了?
这不,ArtCraft 团队这几天真把 CAD 重写开源了,项目叫 CADCraft。还是熟悉的配方——纯 Rust、从零写、MIT/Apache 双许可。
项目简介
CADCraft 是一个开源的、"净室"方式(clean-room)重新实现的 AutoCAD 风格绘图软件,全部用 纯 Rust 编写。
它要做的就是把你熟悉的那套 AutoCAD 工作流搬过来。
命令行、对象捕捉、图层、标注、填充、图块、DXF 图纸,一样不少。
macOS、Windows、Linux、FreeBSD 原生运行,还能通过 WebAssembly 在浏览器里用,不用账号,不用订阅,完全免费。
开源短短几天已经在 GitHub 上已有 3k Star,热度不低。
功能特性
01 命令行手感,一比一复刻
打 L,点两个点,输 @5<45,回车。就这么顺。
line 0,0 @10,0 @0,5 c 画一个闭合三角形
circle 5,2 1 画个圆
offset 0.25 偏移,再选圆和一边
zoom e 缩放到全图
自动补全、命令别名、@dx,dy、直接距离输入、Enter 或右键重复上一条命令,都在。对象捕捉给了 11 种:端点、中点、圆心、交点、垂足、切点……连"延迟切点"都有——画两个圆的公切线时,第一个点先悬着,第二个点才定。
02 DXF 原生读写,DWG 也能开
这是能不能干活的分水岭。
DXF 是原生读写的,ASCII 和二进制都支持,版本从 R12 到 2018;写出的 DXF 是 R2000。DWG(R13–2018)借开源库 acadrust 的手,能开也能存。导出支持 SVG、PNG、PDF。
03 一个二进制,从桌面跑到浏览器
Windows 有 MSI 和免装版(x64 / arm64 / x86 三套);macOS 是签过名、过过公证的 universal dmg;Linux 更夸张——AppImage、Flatpak、deb、rpm、tar.gz,甚至 riscv64 、FreeBSD 都有。
还有一份 WebAssembly 静态站点,丢到任意静态服务器就能在浏览器里用。
04 给 AI Agent 留的那扇门
这是 CADCraft 最不一样的地方。
它把每个菜单项、每个工具、每句提示,都做成了一条命令。于是:
有 MCP 服务器,Agent 可以像人一样"在命令行打字" 有 JSON 控制通道,任何命令都能用 JSON 调用、拿结果 有 cadcraft-cli,无头跑脚本、转格式、导图片 还有 inspect_drawing、render(直接回传 PNG)、screenshot、ui_click
cadcraft-cli run --sample --script 'CIRCLE 22,3 1\n' --save out.dxf --export out.png
cadcraft-cli convert drawing.dxf drawing.svg
05 图层与属性,老习惯都在
图层管理器(开关、冻结、锁定、打印、颜色、线型)一个不少,还有隔离、匹配、上一个图层这些顺手的小工具。属性面板可以逐个对象改,线型、线宽、索引色和真彩色都支持。
06 标注、填充、块,一直到出图
干过设计的都知道,画线谁都会,难的是把它画成一张能交出去的图。
全套 DIM* 命令配完整的 DIMSTYLE 变量,箭头样式齐全,标注是关联的——几何一动,标注跟着走。
填充支持拾取点边界、孤岛检测,自带图案库,纯色和渐变都行。BLOCK / INSERT、属性、嵌套块都在,表格也能直接画。
最后是图纸空间和出图:布局、视口(比例、锁定、逐视口冻结图层)、页面设置、PLOT 和 EXPORTPDF。
顺带说,它还支持参数化约束(几何约束 + 尺寸约束、表达式参数、冲突检测,每次编辑后自动重解),界面语言给了 9 种,简体中文在内。
快速安装、使用
方式一:直接下载
直接到项目release页面下载对应平台的安装包进行安装。
Windows: .msi安装包或便携.zip,提供 x64、arm64、x86macOS: .dmg,通用版,已签名并公证Linux:AppImage、Flatpak、deb、rpm、tar.gz FreeBSD:tar.gz Web:静态站点 zip,放到任意静态服务器即可
方式二:源码运行
需要 Rust 1.95 或更高版本。
git clone https://github.com/storytold/cadcraft
cd cadcraft
cargo run --release -p cadcraft -- --sample
这会打开一份示例图纸。
接着在命令行里试试:
line 0,0 @10,0 @0,5 c # 画一个封闭三角形
circle 5,2 1 # 画一个圆
offset 0.25 # 然后选圆和一侧,做偏移
zoom e # 缩放到全部范围
浏览器版
cd apps/cadcraft-web && trunk serve
需要先安装 trunk (https://trunkrs.dev)。
让 AI 来操作
# 无界面运行 MCP 服务器
cadcraft-cli mcp
# 一次性无界面运行:画圆、保存、导出 PNG
cadcraft-cli run --sample --script 'CIRCLE 22,3 1\n' --save out.dxf --export out.png
开源君想说
这个时代,真的有点魔幻。
以前想有一个自己能掌控的 CAD,是件不敢想的事。
现在,一个团队用 Rust 从零写出来,开源给所有人,还顺手留好了给 AI 用的接口。
工具不再只是给人用的,也要让 AI 能顺手接过去。
当然,CADCraft 目前还在早期,离"完全替代"还有距离。但方向很清楚,也很让人期待。
https://github.com/storytold/cadcraft
1.8万star!这个神级 Skills,直接让 AI 学会画 CAD!