← WORKAI · CAD · 2026–

Touch

An open-source 3D CAD editor with an AI assistant. You click on part of the model and describe the change you want, and the editor applies it. It is in early development; the underlying engine works today.

An L-bracket solid generated by the Touch engine from a text prompt

Engine output: a parametric L-bracket (60 by 40 by 5 mm, with a hole) generated from a text prompt and exported to STEP.

Overview

CAD is powerful but slow. For everyday parts like brackets, mounts, enclosures, and fixtures, the shape is easy to describe but tedious to build: sketch, extrude, select faces, place holes, click through a feature tree, then repeat for every revision.

Touch is an open-source desktop editor that wraps a real CAD kernel (build123d on OpenCASCADE) in a VS Code style shell with a 3D viewport. You click a face, edge, or plane, a prompt box appears next to it, and you type the change you want. The model updates one operation at a time. Because you click on the geometry first, the location becomes part of the instruction, which a plain text prompt cannot do on its own.

How it works

The interface is an Electron shell talking to a packaged Python process that owns the CAD kernel. The AI planner does not write geometry code directly. It first produces a typed, schema-validated Intent that describes the part, which catches a lot of errors before any geometry is built and keeps the output predictable.

Edits are stored as an append-only history rather than destructive changes, so every step stays visible and reversible. The finished model exports to STEP for use in any other CAD tool. Touch is meant as a fast way to get a first draft, not a replacement for engineering judgement.

Top-down render of a cube with a through-hole produced by the Touch engine

A through-hole feature, rendered headless by the engine.

Status

Touch is in early development. It grew out of an earlier project, Maquette, a command-line tool that turned a text prompt into a STEP file. Maquette's first version showed that an AI model can produce correct parametric geometry from natural language, and that engine is now the core of Touch.

Done so far: a packaging test (an Electron app plus a bundled Python process, installed on Windows without admin rights, showing a model with clickable, highlightable faces) and the engine itself, which runs from the command line today. Next is the editor's server and protocol layer, then the interactive interface.

build123dOpenCASCADE (OCP)ElectronPython sidecarLLM planner (Claude)three.jsPydantic Intent schemaSTEP exportPyInstaller