Making SolidWorks Understand Sequences: How AI Can Execute Multi-Step Tasks from a Single Sentence

This article explains how I built a command system that turns a single sentence into multiple SolidWorks actions.

I cover why sequence matters, how the system understands dependencies, and what this means for engineers who want to work faster without writing macros.


Introduction

In the last article, I shared why I started building CAD Copilot.

The idea was simple.

Let users talk to SolidWorks in natural language.

But I quickly ran into a problem.

What happens when a user says something that needs multiple steps?


The Problem

A user types: “Create a new part and select the right plane.”

That sounds like one request but it is actually two separate actions.

First, SolidWorks needs to create a new part document.

Then, it needs to select the right plane inside that document.

I wanted users to describe what they want and let the system figure out the steps.

I also wanted it to work in any language.

Not just English.

Below is the same command in five different languages.

Same Command, Different Languages
LanguageCommand
English Create new part and select right plane
German / Deutsch Neues Bauteil erstellen und die rechte Ebene auswählen.
Chinese / 中文 创建新零件并选择右视基准面
Tamil / தமிழ் புதிய பாகத்தை உருவாக்கி, வலது தளத்தைத் (right plane) தேர்ந்தெடுக்கவும்.
Mixed / Mix Neues Bauteil erstellen und 选择顶面

Same command expressed in multiple languages — the system understands each one.

The system does not care which language you use.

It finds the actions hidden inside your sentence.


Why Order Matters

You cannot select a plane before a document exists.

You cannot change a sheet size before a drawing is open.

These are not random rules.

These are logical dependencies.

I needed my system to understand these dependencies automatically.

If a user says “select right plane”, the system should know a document must exist first.

It should never try step two before step one finishes.


How I Made It Work

I built a command system that does three things.

Step 1: Find the actions.

When a user types a sentence, the system breaks it into individual actions.

“Create a new part and select the right plane” becomes two actions.

Action one: Create a new part.

Action two: Select the right plane.

Even if the user mixes languages, the system finds the same actions.

I tested this with English, German, Chinese, and Tamil.

Mixed-language input — the system extracts the intent regardless of language.

Step 2: Find the right order.

Once the system knows the actions, it checks which one depends on another.

Selecting a plane needs a document to exist first.

So “create new part” must run before “select right plane”.

Step 3: Execute one at a time.

The system runs the first action and waits for it to finish.

Then it runs the next action.

The user sees the result on screen.

No clicking. No searching. Just the result.


Why This Matters

For engineers who do not write macros, this changes everything.

Instead of learning where commands live in menus, you describe what you want.

The system handles all the steps in between.

A task that takes five clicks becomes a single sentence.

For engineers who do write macros, this also changes things.

Instead of writing one macro per task, you combine existing commands.

The system manages the order for you.

You focus on what to do, not how to do it.

Either way, the result is the same.

Less clicking. Less searching. More time designing.


Closing

Multi-step execution is one piece of a larger idea.

I want CAD to respond to human language the way a colleague would.

For the engineer who does not write macros, this means describing the result instead of remembering the steps.

For the macro programmer, this means thinking in sequences instead of single commands.

The system does not care if you speak English, German, Chinese, Tamil, or a mix.

It finds the actions, orders them, and runs them.

One sentence. Multiple steps. Done.


Key Takeaways
  • A single sentence can trigger multiple CAD actions in sequence.
  • The system handles ordering — engineers do not need to script what comes first.
  • Language-agnostic: English, German, Chinese, Tamil, or mixed — same result.
  • Sequences bridge the gap between natural language and CAD execution.

That is all for now.

I hope this guide is helpful to you.

If you find anything to add or update, please let me know by email.

If you found this post useful, please share it with others.

Happy coding!

Previous Building CAD Copilot - Create a new document ...