assembly_session
Build FreeCAD assemblies with persistent joints: add parts, mate them, solve, and verify. Joints remain, so moving a parent updates children; rollback restores previous placements.
Instructions
Independent assembly state machine with PERSISTENT joints (FreeCAD
Assembly workbench) — the mate-based counterpart to one-shot assemble.
Workflow: start(ground=part) -> add_component(part) per part ->
mate(a, b, joint_type, trim?) per joint -> solve -> verify -> complete.
Joints persist in the document: move a parent part, call solve, and
children follow. rollback(to_step) un-does joints/trims and restores
placements atomically.
A mate ref is {"part": <name>} plus exactly ONE of face="FaceN" /
anchor=<name> / point=[x,y,z]. Full reference (operations, joint types,
trim semantics): operation_help("assembly_session").
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| a | No | ||
| b | No | ||
| name | No | ||
| part | No | ||
| trim | No | ||
| joint | No | ||
| to_step | No | ||
| doc_name | No | ||
| operation | Yes | ||
| joint_type | No | fixed | |
| gap_samples | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |