تصور کنید یک مهندس مکانیک بهجای ساعتها کلیک روی منوهای پیچیده، تنها با یک دستور متنی، صدها نسخه از یک قطعه را برای بهینهترین حالت حرارتی شبیهسازی کند. SolidCraft که در ۱۳ اکتبر ۲۰۲۶ منتشر شد، با معرفی یک سرور داخلی مبتنی بر پروتکل زمینهٔ مدل (Model Context Protocol یا MCP) — شبیه به یک مترجم که دستورات زبان انسان را به زبان قابلفهم برای ماشین تبدیل میکند — این رویا را به واقعیت تبدیل کرده است. این ابزار با عبور از پیشنویسهای دستی سنتی، به عاملهای هوش مصنوعی اجازه میدهد تا دستورات را اجرا کنند، هندسه را اندازهگیری کنند و طراحیها را بهصورت بدون سر (Headless) تکرار و اصلاح نمایند.
بیشتر نرمافزارهای CAD فعلی مانند جعبههای بستهای هستند که فقط کاربر انسانی میتواند آنها را هدایت کند. اما طبق مستندات این پروژه، SolidCraft هر عملیات طراحی، از رسم یک خط ساده تا تبدیل یک صفحه به حجم، را به عنوان یک دستور تعریف میکند که میتواند توسط یک کانال کنترلی JSON-lines تحریک شود. این معماری شکاف میان استدلال سطح بالای هوش مصنوعی و اجرای دقیق هندسی را پر میکند.
همانطور که در تحلیلهای پیشین ما دربارهی ابزارهای عاملمحور اشاره کردیم، حذف واسطههای گرافیکی (GUI) کلید دسترسی مدلهای زبانی به دنیای فیزیکی است. SolidCraft دقیقاً همین مسیر را طی کرده تا مدلسازی را به یک API تبدیل کند. این رویکرد یادآور تحولاتی است که عاملهای هوش مصنوعی در مدلهای Grasshopper ایجاد کردند و پیوند میان هندسه پارامتریک و استدلال ماشینی را تقویت نمودند.
موتور اصلی و گردش کار
این برنامه که کاملاً با زبان Rust نوشته شده، از یک خط زمانی پارامتریک کامل بهره میبرد. به این معنا که تغییر یک عدد در لیست پارامترها، کل مدل را بهطور خودکار بازسازی میکند. برای مثال، در طراحی یک قاب برای Raspberry Pi 4، کاربر میتواند از یک طرح خالی شروع کند: ابتدا پارامترهای برد را رسم کرده، سپس عملیات Extrude (برونریزی)، Fillet (گرد کردن لبهها) و Shell (پوسته کردن) را اعمال کند. با ایجاد یک الگوی ستون M2.5 روی یک مستطیل حفره ۵۸ در ۴۹ میلیمتر و افزودن برشهای پورت و شیارهای تهویه، کاربر میتواند بهسادگی پارامتر ارتفاع را از ۲۴ به ۳۲ میلیمتر تغییر دهد تا کل قاب بازسازی شود. این فرآیند در یک اسکریپت دموی با سرعت پخش ۶ برابر قابل مشاهده است.
قابلیتهای فنی این ابزار شامل موارد زیر است:
- طراحی دوبعدی (Sketching): پشتیبانی از خطوط، مستطیلها، دایرهها، کمانها، چندضلعیها، اسلاتها (Slots)، بیضیها، اسپلینهای کنترل/برازش (Fit/Control Splines)، مقاطع مخروطی و متن. این بخش شامل هندسه ساختاری (Construction Geometry)، تصویر کردن (Projection)، برش زدن (Trimming)، فیلتها و چمفرها، از جمله گوشهها در مبدأ مختصات است. اسکچها را میتوان روی صفحات مبدأ، صفحات آفست یا وجوه تخت قرار داد.
- طراحی دوبعدی پیشرفته: اتصالهای جدید به وجوه، شناسههای ساختاری پشتیبانیشده را حفظ میکنند. در صورت نبود منابع، یک گردش کار صریح برای تعمیر صفحه فعال میشود. اسپلینهای برازش بسته و آفستهای تداعیشده بسته از درونیابی دورهای C2 استفاده میکنند. آفستهای خط و کمان محدب، حتی زمانی که یک اینست (Inset) کمانهای گوشه را مصرف میکند، هویت خود را حفظ میکنند.
- سیستم قیود (Constraints): یک حلکننده اختصاصی برای مدیریت روابط هندسی مانند انطباق (Coincident)، نقطه روی منحنی، افقی/عمودی، موازی، عمود، مماس، انحنا (G2)، برابری، هممرکزی، همراستایی، نقطه میانی، تقارن و قیود تثبیت (Fix) را مدیریت میکند. طبق گزارش توسعهدهندگان، نقاط دقیقاً از طریق تقاطع مکانهای هندسی (Loci Intersections) و تجزیه خوشههای صلب (بر اساس متدهای Owen 1991 و Fudos–Hoffmann 1997) جایگذاری میشوند. باقیمانده توسط الگوریتم Levenberg–Marquardt حل میشود و رتبه ژاکوبین، درجات آزادی را تعیین میکند. هندسهای که کاملاً مقید شود، به رنگ سیاه در میآید.
- ابعاد پارامتریک: ابعاد خطی، تراز شده، شعاع، قطر، زاویه، قوس (Arc Sweep)، طول قوس و طول اسلات توسط پارامترها هدایت میشوند. ویرایشهایی که منجر به بیشمقید شدن (Over-constraining) شوند، رد میشوند. کاربران میتوانند یک خط یا نقاط انتهایی را انتخاب کرده، اندازه را تایپ کنند و با Enter، یک مرحله Undo را ثبت نمایند.
- ویژگیهای سهبعدی: عملیاتهای پیشرفتهای مانند Extrusion, Revolve, Sweep, Loft, Fillet/Chamfer, Shell, Draft, Hole, Thread, Pattern, Mirror, Split, Combine و Move در دسترس است. خط زمانی مدل بهصورت افزایشی بازسازی میشود؛ ویژگیها را میتوان ویرایش، غیرفعال (Suppress)، تغییر نام، تغییر ترتیب یا حذف کرد. عملیاتهای Revolve جدید، جایگذاری زاویهای متقارن و دوطرفه را در محورهای معکوس حفظ میکنند.
- ابزارهای تخصصی: قابلیتهای ورقکاری (Sheet Metal) شامل لبههای خمشده (Flanges)، همها (Hems)، تا کردن/باز کردن/دوباره تا کردن (Fold/Unfold/Refold)، برشهای متریال و الگوهای تخت (Flat Patterns) را پشتیبانی میکند. این بخش از خطوط محیطی DXF دقیق (خط/کمان/دایره) و جداول خم پشتیبانی میکند. عمق جیب و لبهها در هنگام باز و بسته کردن حفظ شده و در پیشنمایشهای تخت، جدا از محیطهای سوراخهای عبوری ظاهر میشوند. همچنین مدیریت اسمبلی با اجزای تو در تو، وقوعات (Occurrences)، مفصلها (Joints)، مطالعات حرکتی، مجموعههای تماس و بررسی تداخل (Interference Checks) را شامل میشود.

ادغام با هوش مصنوعی از طریق MCP
بزرگترین تحول فنی، سرور solidcraft-cli mcp است. این سرور به عاملهای هوش مصنوعی (AI Agents) — مثل دستیارهای هوشمندی که میتوانند بهجای کاربر ابزارها را اجرا کنند (مانند Claude Code) — اجازه میدهد مستقیماً با محیط CAD تعامل داشته باشند. این عاملها میتوانند از مجموعهای از ابزارها برای موارد زیر استفاده کنند:
- اجرای دستورات دستهای (Batch) برای ساخت قطعات از صفر با استفاده از لیستهای JSON از دستورات.
- بررسی توپولوژی طراحی و اندازهگیری حجم، مساحت، مرکز جرم یا تعداد وجوه، لبهها و رئاسها.
- تنظیم پارامترها و فعال کردن اسکرینشاتها برای تایید پیشرفت بصری.
- بر اساس خطاهای اندازهگیری، مراحل را Undo یا Redo کنند.
- مدیریت فایلها از طریق ابزارهای
new_design،openوsave. - استفاده از ابزارهایی مانند
list_commands،execute،batch،inspect_design،measure،body_topologyوexport.
عاملها میتوانند در حالت کاملاً بدون رابط گرافیکی (Headless) یا متصل به اپلیکیشن دسکتاپ از طریق یک پورت (با استفاده از --connect 127.0.0.1:PORT و solidcraft --control PORT) اجرا شوند تا کاربر انسانی در لحظه شاهد مدلسازی قطعه توسط هوش مصنوعی باشد. برای Claude Code، کاربران میتوانند سرور را از طریق دستور claude mcp add solidcraft -- solidcraft-cli mcp اضافه کنند.
معماری فنی و سازگاری
بر اساس مستندات github.com، این سیستم از ۶ لایه (L0 تا L5) تشکیل شده است:
- L0 (geom): بردارها، صفحات، پروفایلها، مشها و اندازهگیریهای آنها.
- L1 (sketch, kernel, render): حلکننده قیود، پروفایلها، مرز هسته B-rep (truck)، ریاضیات نما و رسترایزر CPU.
- L2 (doc): پارامترها، عبارات (Expressions) و ارزیابی افزایشی خط زمانی ویژگیها.
- L3 (io): فایلهای طراحی و منطق واردات/صادرات برای STL، OBJ، STEP و 3MF.
- L4 (engine): نشست (Session) و رجیستری دستورات.
- L5 (ui-egui, mcp): فرانتاند دسکتاپ و سرور MCP.
برای تبادل داده و همکاری بینبرنامهای، SolidCraft از چندین فرمت استاندارد صنعتی پشتیبانی میکند. این ابزار میتواند به STEP (نسخه AP242 با نامهای بدنه و رنگها، وجوه Revolve به عنوان صفحات بومی، استوانهها، مخروطها، کرهها و توروسها)، IGES 5.3 (B-reps صلب منیفولد)، 3MF، STL (باینری/ASCII) و OBJ خروجی دهد. همچنین دارای ابزار "Convert Mesh" است که میتواند قطعات با مقطع ثابت بسته را از مشها دوباره به مدلهای پارامتریک صلب با وجوه تخت و استوانهای دایرهای بازسازی کند. واردات STEP از مدلهای صلب و اسمبلیهای AP203، AP214 و AP242 پشتیبانی میکند. کانتینرهای طراحی از پسوند .solidcraft با محمولههای مش باینری بدون اتلاف استفاده میکنند، اگرچه JSON ساده برای خروجی و باز کردن همچنان پشتیبانی میشود.
اعتبارسنجی و عملکرد
توسعهدهندگان برای تضمین دقت، موتور برنامه را با ۷۶ قطعه مرجع عمومی آزمایش کردند. نتایج نشان داد که ۷۵ قطعه از نظر حجم، مساحت، مرکز جرم و جعبه محصورکننده (Bounding Box) دقیقاً با محاسبات تحلیلی یا محاسبات FreeCAD مطابقت دارند. تنها یک مورد اختلاف به عنوان باگ در حال پیگیری است. این بررسیها در فایل docs/oracle.md مستند شدهاند، هرچند معادل بودن کامل گردش کار را اثبات نمیکنند. وضعیت فعلی برنامه در مراحل اولیه است اما برای قطعات ساده قابل استفاده است.
نصب و پشتیبانی سختافزاری
این نرمافزار برای پلتفرمهای مختلف با روشهای نصب متنوع در دسترس است:
- ویندوز: نصاب برای x86_64، ARM64 و PCهای ۳۲ بیتی، یا به صورت zip قابل حمل. کاربران ممکن است نیاز داشته باشند با انتخاب "More info" و سپس "Run anyway" از SmartScreen عبور کنند.
- مک: Disk Image برای Apple Silicon و Intel؛ در اولین اجرا نیاز به راستکلیک و انتخاب "Open" دارد.
- لینوکس: در دسترس به صورت AppImage، deb (برای Ubuntu، Debian، Mint)، rpm (برای Fedora، openSUSE)، Flatpak یا از طریق Snap (
sudo snap install solidcraft). پشتیبانی ARM64 از طریق AppImage، deb و rpm فراهم شده است. - وب: نسخهای تحت مرورگر از طریق WebGPU یا WebGL2 (با استفاده از
?webgl) در دسترس است.
برای کاربران حرفهای، نرمافزار از دستگاههای 3Dconnexion SpaceNavigator و SpaceMouse از طریق رابط HID چندمحوره پشتیبانی میکند. در لینوکس، این امر مستلزم یک قانون udev (مثلاً در /etc/udev/rules.d/70-3d-mouse.rules) است تا به کاربر دسترسی به /dev/hidrawN برای شناسههای فروشنده 256f یا 046d (Logitech) داده شود. کاربران باید با دستور sudo udevadm control --reload && sudo udevadm trigger تنظیمات را بازنشانی کنند. توجه داشته باشید که سندباکس Flatpak در حال حاضر دستگاههای hidraw را نمایش نمیدهد.
تحلیل: گذار به مهندسی عاملمحور
برای یک مهندس کاربردی، این تحول به معنای تغییر از "رسم کردن" به "ارکستراسیون" است. با در دسترس قرار دادن هسته CAD از طریق MCP، SolidCraft مدلسازی سهبعدی را به یک API قابل برنامهنویسی تبدیل میکند. این امر امکان نمونهسازی سریع را فراهم میکند؛ جایی که یک هوش مصنوعی میتواند صدها پیکربندی مختلف از شیارهای تهویه یک قاب را بر اساس محدودیتهای حرارتی تکرار کند، پیش از آنکه انسانی حتی فایل را باز کند.
این رویکرد "مالیات ابزارها" (Tooling Tax) — یعنی زمانی که صرف کلیک روی منوها و مدیریت قیود میشود — را کاهش داده و تمرکز را به سمت تعریف پارامترها میبرد. در واقع، این ابزار CAD را به یک کامپایلر برای اشیاء فیزیکی تبدیل میکند. استفاده از عبارات آگاه از واحد (مثلاً 2 * width + 5 mm یا angle / 2) تضمین میکند که طراحیهای تولید شده توسط هوش مصنوعی از نظر ریاضی درست و از نظر فیزیکی قابل اجرا باشند. برای دستیابی به چنین سرعت پردازشی در مقیاس صنعتی، بهینهسازیهای معماری سختافزاری ضروری است؛ برای مثال، معماری PSSA توانسته است سرعت استنتاج مدلهای زبانی کوچک را تا ۱۲ برابر افزایش دهد که میتواند زیرساختی ایدهآل برای اجرای سریعتر این عاملهای مهندسی باشد.
برای شروع، میتوانید برنامه را از طریق Snap در لینوکس نصب کنید یا نصاب ویندوز و مک را دانلود نمایید و سپس آن را به یک عامل سازگار با MCP متصل کنید تا مدلسازی خودکار را آغاز کنید. برای توسعهدهندگان، solidcraft-cli امکان اجرای اسکریپتهای دستوری، اندازهگیری قطعات و رندر گرفتن از اسکرینشاتهای PNG را بهصورت بدون سر فراهم میکند.
- اگر از لینوکس استفاده میکنید، SolidCraft را از طریق Snap نصب کنید تا سرعت اجرای دستورات را بسنجید.
- برای کسانی که با Claude Code کار میکنند، سرور MCP را با دستور
claude mcp add solidcraftاضافه کنید تا تجربه مدلسازی متنی را آزمایش کنید. - فایلهای STEP قدیمی خود را وارد کنید و قابلیت تبدیل مش به مدل پارامتریک را تست کنید.
اما داستان سختافزاری این تحول حتی شگفتانگیزتر است — به تحلیل ما دربارهی تراشههای Blackwell و تاثیر آنها بر استنتاج مدلهای مهندسی مراجعه کنید.




گفتگو