Python 3.12 · CadQuery · MCP

enclosure-fab

Короткий YAML описывает деталь: корпус под плату, коробку, лоток, зажим на трубу. Получаешь STL, 3MF, STEP и две картинки. 3MF открываешь в слайсере сам. С принтером здесь ничего не связано.

CPython 3.12 8 шаблонов Черновик, не печать MIT
Корпус на защёлке со щелями в крыше, в сборе
fixtures/demo_snap.yaml · в сборе

Как это устроено

Форму строит шаблон из репозитория. Меняешь числа в YAML, а не пишешь скрипт под каждую деталь.

Сначала черновик

Файл можно собрать до проверки размеров. Имя начинается с PREVIEW-. Такой файл печатать рано.

Потом печать

print работает только после того, как человек подтвердил размеры, от которых зависит посадка. Если деталь заходит в keep-out, файла нет.

Дальше слайсер

В 3MF только форма, без настроек слайсера. Детали на столе разворачиваешь сам.

Примеры

У каждого шаблона есть фикстура в fixtures/. Числа выдуманы. Скопируй файл и подставь свои замеры.

С агентом

Навык уже лежит там, где его читают Cursor, Claude Code и Codex. Открой клон как проект. MCP-сервер fab проверяет то же, что CLI.

  • Навык: .cursor/skills/, .claude/skills/, .agents/skills/
  • Инструменты: validate_spec, generate_preview, generate_print, measurement_protocol и ещё четыре
  • Агент не ставит confirmed. Мерит человек.
Текст навыка
mcp.json
{
  "mcpServers": {
    "fab": {
      "command": "/path/to/enclosure-fab/.venv/bin/python",
      "args": ["/path/to/enclosure-fab/mcp/server.py"]
    }
  }
}

Установка

CadQuery 2.8 ставится на Python 3.12. Не запускай pip install -U: VTK, Numba и NumPy поднимутся вместе, и геометрия может измениться.

Подробная инструкция
powershell
git clone https://github.com/BelyaevAD/enclosure-fab.git
cd enclosure-fab
py -3.12 -m venv .venv
.\.venv\Scripts\python.exe -m pip install -r requirements.txt
.\.venv\Scripts\python.exe scripts\fab.py preview fixtures\demo_snap.yaml