FreeCAD Setup

Complete guide to installing, configuring, and using the Conjure adapter for FreeCAD.

Overview

FreeCAD is our primary supported CAD platform for Conjure. The FreeCAD adapter provides deep integration with FreeCAD's Part Design and Part workbenches, giving you full access to parametric modeling capabilities through natural language commands.

Why FreeCAD? Free, open-source, cross-platform, and offers the best compatibility with Conjure's feature set.

Requirements

FreeCAD Version

  • Minimum: FreeCAD 0.20
  • Recommended: FreeCAD 0.21 or later
  • Best experience: FreeCAD 1.0+ (latest stable)

Download FreeCAD from freecad.org/downloads

System Requirements

  • Python: 3.8+ (included with FreeCAD)
  • Disk Space: 50MB for adapter
  • Internet: Required for AI operations
  • RAM: 2GB minimum (4GB+ recommended for complex models)

Installation

Quick Install (Recommended)

Linux / macOS

curl -sSL https://conjure.lautrek.com/install.sh | bash

Windows (PowerShell)

iwr -useb https://conjure.lautrek.com/install.ps1 | iex

Manual Installation

  1. Download the workbench: freecad-adapter-latest.zip
  2. Locate your FreeCAD Mod directory:
    • Linux: ~/.local/share/FreeCAD/Mod/
    • macOS: ~/Library/Application Support/FreeCAD/Mod/
    • Windows: %APPDATA%\FreeCAD\Mod\

    Not sure? In FreeCAD: Edit → Preferences → General → Macro → Macro path The Mod directory is one level up from there.

  3. Extract the archive to create Mod/conjure/
    Final path should be: .../FreeCAD/Mod/conjure/InitGui.py
  4. Restart FreeCAD completely (close all windows)
  5. Verify installation: Go to View → Workbench and look for "Conjure"

Workbench Interface

Once installed, switch to the Conjure workbench to access all features:

Toolbar Buttons

Connect Connect to the Conjure server using your API key
Settings Configure adapter preferences and options
Documentation Open this documentation in your browser
Status View connection status and operation history

Conjure Panel

The panel (docked on the right by default) shows:

  • Connection Status: Online/Offline indicator
  • Operation Log: Recent commands and results
  • Usage Stats: API operations used this month
  • Quick Actions: Common operations (create primitives, export, etc.)

Configuration

Access settings via Conjure → Preferences or the Settings button in the toolbar.

FreeCAD-Specific Settings

Default Body Creation

Automatically create a Part Design Body for parametric features when starting a new design.

  • Default: Enabled
  • Note: Required for features like Pad, Pocket, and Fillet
Workbench Switching

Automatically switch to appropriate workbench for operations (e.g., Part Design for sketching).

  • Default: Disabled
  • Note: Some users find auto-switching disorienting
Python Console Output

Show detailed operation logs in the FreeCAD Python console.

  • Default: Enabled (info level)
  • Options: Debug, Info, Warning, Error, or Off
Tip: Open the Python console (View → Panels → Python console) to see detailed operation logs.

Supported Features

Primitives

  • Box, Cylinder, Sphere
  • Cone, Torus, Wedge
  • Prism, Pyramid
  • Custom sketches

Modifications

  • Fillet, Chamfer
  • Shell, Offset
  • Draft angles
  • Mirror, Pattern

Boolean Operations

  • Union (Fuse)
  • Difference (Cut)
  • Intersection (Common)
  • Multi-object operations

Sketch Features

  • Pad (Extrude)
  • Pocket (Cut extrude)
  • Revolution
  • Loft, Sweep

Transformations

  • Move, Rotate
  • Scale, Align
  • Array (Linear, Polar)
  • Clone

Queries

  • Measurements (distance, angle, area, volume)
  • Face/Edge selection
  • Bounding box
  • Center of mass

Working with Part Design

For parametric modeling, Conjure integrates with FreeCAD's Part Design workbench:

Typical Workflow

  1. Create a Body: Conjure automatically creates a Part Design Body when needed
  2. Add features: Use AI commands to create sketches, pads, pockets, etc.
  3. Modify features: Add fillets, chamfers, patterns, or other modifications
  4. Export: Save as STEP, STL, or other formats for manufacturing

Example: Creating a Parametric Bracket

You: "Create an L-shaped bracket: 50mm x 40mm base, 30mm tall vertical section, 3mm thick"
You: "Add 5mm fillets to all inner edges"
You: "Add two M4 mounting holes in the base, 30mm apart"

Export Options

FreeCAD supports a wide range of export formats:

STL (3D Printing)

Select object → File → Export → STL Mesh

  • Format: ASCII or Binary
  • Quality: Adjust deviation and angle for smoother meshes

STEP / IGES (CAD Exchange)

File → Export → STEP or IGES

  • Best for: Sharing with other CAD software
  • Preserves: Exact geometry, curves, and surfaces

Other Formats

  • OBJ: For rendering and visualization
  • SVG: 2D drawings and laser cutting
  • DXF: 2D CAD exchange
  • FCStd: Native FreeCAD format (saves full history)

Troubleshooting

Workbench not appearing

  1. Check that files are in the correct Mod directory
  2. Verify InitGui.py exists in Mod/conjure/
  3. Check Python console (View → Panels → Python console) for errors
  4. Try: Edit → Preferences → General → Macro → Execute → Scan for macros

Operations failing

  • Check Python console for detailed error messages
  • Verify you have an active document open
  • Ensure shapes are valid (no broken geometry)
  • Try recomputing the document: Edit → Refresh or F5

Performance issues

  • Disable auto-recompute in settings for complex models
  • Close unnecessary FreeCAD panels and workbenches
  • Reduce viewport quality: View → Render Style → Wireframe
  • Update to the latest FreeCAD version (performance improvements in 0.21+)

Import errors

If you see "No module named 'requests'" or similar:

  1. Open FreeCAD's Python console
  2. Run: import pip; pip.main(['install', 'requests'])
  3. Restart FreeCAD

Next Steps