ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

从 75/76 到 90/90:solidcraft 的 MCP 参数化 CAD 拆解与中文社区入场指南

从 75/76 到 90/90:solidcraft 的 MCP 参数化 CAD 拆解与中文社区入场指南

从 75/76 到 90/90:solidcraft 的 MCP 参数化 CAD 拆解与中文社区入场指南

【免费下载链接】solidcraftSolidCraft: an open-source parametric 3D CAD application built in pure Rust. Desktop, web, and automation through MCP.项目地址: https://gitcode.com/gh_mirrors/so/solidcraft

同一份快照里,solidcraft 的命令注册表从 322 个命令涨到 567 个,oracle 参考件从 75/76 变成 90/90 全绿,版本从 0.8.0 走到 0.30.1。中文社区还在引用那份旧快照的数字,仓库自己已经把题面换了。

它是做什么的

solidcraft 是一个纯 Rust 实现的开源参数化 3D CAD:桌面端、浏览器端与 MCP 服务器共享同一套命令体系,6 天拿到 1083 star,现在已迭代到 0.30.1。

它最硬的一条产品线是 AI 代理建模:solidcraft-cli mcp起一个 Model Context Protocol(MCP)服务器,代理像人一样执行建模命令,而不是操作界面。许可证在快照与实况之间也多出一个选择——旧快讯写 Apache-2.0,仓库现挂 MIT OR Apache-2.0(Cargo.toml)。

它凭什么立得住:破千 star 的技术拆解

分层骨架见 README.md 的架构表,六个 crate 层各司其职:

层crate职责
L0geom向量、平面、轮廓、网格与测量
L1sketch/kernel/render约束求解;B-rep 内核边界;视图数学与渲染
L2doc参数、表达式、特征时间线与增量求值
L3io设计文件,STEP / 3MF / STL / OBJ 导入导出
L4engine会话与命令注册表,一切皆命令
L5ui-egui/mcp可替换的桌面前端;MCP 服务器

1. 命令注册表:UI 与 AI 同一条执行路径。docs/features.md 从注册表生成,当前 567 个命令 ID,"every command runs the same way from the toolbar, a script,solidcraft-cli exec, the control channel and MCP"。MCP 里的一次execute和用户在界面里点按钮命中的是同一个命令。对读者意味着:代理建模的行为可复现、可回归,不是另一套玩具接口。

2. 约束求解器:精确构造加数值优化的混合策略。crates/sketch/src/construct.rs 开头写着:LM 跑起来之前,先按 Owen 1991 与 Fudos–Hoffmann 1997 把被约束钉死的点用 loci 交点精确放好。白话讲:能算准的不交给迭代器,省下的自由度才进 Levenberg–Marquardt。这解释了"拖草图每帧求解、松手只重建一次模型"。

3. 输入防护:给恶意输入划硬边界。crates/sketch/src/model.rs 把草图规模写死:

pub const MAX_POINTS: usize = 20_000; pub const MAX_CONSTRAINTS: usize = 40_000; pub const MAX_COORD: f64 = 1e9;

注释原文:"Hard caps that keep hostile input from exhausting memory or time"。配合 docs/robustness.md 的 fuzz 流程——每步校验实体闭合性、切减操作不增加体积、每种子独立进程限时——鲁棒性在这里是工程指标,不是宣传语。

4. oracle 体系:75/76 到 90/90 的演进本身就是证据。docs/oracle.md 现在记录 90/90 全部通过:69 个期望值来自手推解析公式,21 个用 FreeCAD 作为独立外部内核对照,比对体积、面积、质心、包围盒,有reference.stl的再做曲面采样距离。README 的 "What works" 还停在 "75 of 76",与 oracle 实况的差就是迭代速度的注脚。对读者意味着:几何正确性有可复现的对照方法,而不是"看起来像"。

5. 浏览器端是完整应用,不是演示页。apps/solidcraft-web/src/main.rs 头注释:wasm 跑的是与桌面端同一个SolveApp,WebGPU 优先、WebGL2 兜底,带自动保存与未保存提醒。建模、改参数重建、导出 STEP 在浏览器里是同一套功能。

这些能力落点都挤在 L4/L5 两层——热度分布也因此出现了断层。

热度分布盘点:谁在看,谁在写

平台现状数据一句话解读
GitHub项目本体持续迭代6 天 1083 star / 107 fork(10-07 至 10-13);现为 v0.30.1英文圈热度早已走完一轮
CSDN10-13 15:15 一篇介绍阅读 37 / 收藏 1,快照为 v0.8.0中文侧第一篇,基于旧快照
掘金无 solidcraft 内容最接近的 CAD-Viewer(纯浏览器查看器)21898 阅读"看 CAD"有读者,"建 CAD"没供给
公众号 / 头条无内容—连浅层科普都缺席
搜索环境撞名稀释SolidJS 前端教程最高 1.8 万阅读搜"solid"先撞前端框架

最大反差在数字口径:GitHub 侧 6 天破千 star,中文侧全部实质阅读是 37;而一个只能看图不能建模的查看器,在掘金能拿到 2 万多阅读。需求侧的读者盘存在,缺的是"建模"那一半的内容。

供给缺口不在需求侧,拆开看有三条,每条都能在仓库里找到实证。

为什么中文侧供给跟不上

原因一:仓库没有母语参考材料。docs/ 下全部是英文文档,包括 14 篇 oracle 方法论、docs/mcp.md 的工具表与 docs/robustness.md。中文读者要读源码才能写评测,上手成本高一个量级。

原因二:中文 UI 其实已经内置,只是没人验证。crates/ui-egui/src/i18n.rs 的语言注册表里zh(assets/locales/zh.json,5446 条,与 en 同数,属"delivered complete"级别)与zh-TW均已注册;docs/localization.md 明确中文目录按完整性标准被构建守卫检查。界面不是空白,空白的是中文的评测、教程与工作流文章——旧快照里"Korean and Chinese scripts are not covered"的结论,现在对 UI 已不成立。

原因三:命名撞车稀释自然流量。前端框架 SolidJS 与参数化 CAD solidcraft 只差一个词,中文搜索"solid"会被 SolidJS 教程大量截流。这是纯搜索生态问题,但仓库侧没有任何中文 SEO 资产可以承接。

需求侧信号一直在:CSDN 上 FreeCAD 加 Claude MCP 集成类文章有数百阅读,掘金上 AI 生成 CAD 的话题也在讨论。缺的是供给,不是读者。

接下来值得跟进的四个角度

  1. MCP 驱动建模实操:docs/mcp.md 的 18 个工具、参数三级检查(off / warn / strict)与带 checkpoint 回滚的batch(crates/mcp/src/tools.rs 的MAX_BATCH: usize = 10_000)都现成;配 examples/demo/enclosure_mcp.py 就能演示"自然语言 → 命令序列 → 截图 → 改参数重建"闭环。为什么现在:工具表已完整,且 CSDN 的 FreeCAD-MCP 存量文章验证了读者盘。

  2. 浏览器里的参数化 CAD:CAD-Viewer 的 2 万阅读证明"浏览器 + CAD"有流量,solidcraft 的差距是建模而不是查看。apps/solidcraft-web/src/main.rs 的?sample与?open查询参数就是演示入口。为什么现在:一段浏览器内现场建模的演示,就是现成的差异化素材。

  3. 内核与鲁棒性拆解:混合策略约束求解器、docs/robustness.md 的布尔恒等式校验、90/90 oracle 方法论,是 Rust 圈与 CAD 算法圈都认的硬题材。为什么现在:oracle 从 75/76 到 90/90 的演进过程本身就是一篇"几何正确性怎么证明"的样本。

  4. 中文使用指南与评测:中文 catalog 已内置且按"完整"标准守卫,缺的是教程。为什么现在:读者打开就是中文界面,文章成本最低,而当前中文侧供给为零。

回扣开头的数字:0.8.0 快照里的 322 个命令、75/76 参考件、单 Apache-2.0 许可,与现在仓库的 567 个命令、90/90 全绿、MIT OR Apache-2.0 双许可并存。这份差异本身就是判断——快讯记录的是发布那一刻,读透源码的拆解才能跟上仓库的迭代速度;中文社区真正能留下的内容,是把 90/90 之后的新题面写出来。

【免费下载链接】solidcraftSolidCraft: an open-source parametric 3D CAD application built in pure Rust. Desktop, web, and automation through MCP.项目地址: https://gitcode.com/gh_mirrors/so/solidcraft

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进