Install Automator

Syside Automator installs from PyPI into your project’s Python environment (Python 3.12 or newer), and needs a license key, available on Sensmetry.com, before it will run. See Minimum requirements for everything it needs, and Set up a virtual environment if the project has no environment yet.

Optional features are available as extras: syside[ipython] for the interactive mode shell, syside[reqif] for ReqIF support, and syside[solver] for the solver. A convenience syside[all] can be used to install all the extras at once.

uv add syside
pip install syside

Activate license

Syside Automator validates the license each time import syside is called, and each check reaches our licensing servers. Licensing covers what that needs, and What data we collect lists what is sent and what you can turn off.

Store the license key in one of the following locations, or import a license file where the servers are unreachable. Keep the key private: an exposed key risks unauthorized use or revocation of the license.

On a desktop, the operating system’s secret storage (Windows Credential Store, macOS Keychain, or GNOME Keyring on Linux) holds the key per user, for every project, outside code and configuration.

With Modeler, open the Command Palette (Ctrl/Cmd+Shift+P) and run Syside Modeler: Add Syside license key to keyring. The command copies the key Modeler holds, or asks for one when Modeler has none yet.

Without Modeler, store it with the syside-license tool, which needs Python 3.12 or newer and asks for the key:

uvx syside-license keyring store
pip install syside-license
syside-license keyring store

For local development, create a .env file in the project root containing your license key:

SYSIDE_LICENSE_KEY=<your-license-key>

Add .env to your .gitignore so the key is never committed.

Set SYSIDE_LICENSE_KEY in the shell you run Syside from. The setting lasts only for that shell session. To make it permanent, set it in your shell’s profile or your system’s environment settings. It is also the route where there is no secret storage, such as a Docker container or WSL.

On Windows (PowerShell):

$env:SYSIDE_LICENSE_KEY = "<your-license-key>"

On macOS or Linux:

export SYSIDE_LICENSE_KEY=<your-license-key>

A pipeline takes the Business plan’s CI/CD license. Store it as SYSIDE_LICENSE_KEY: in GitLab as a masked CI/CD variable, in GitHub as a repository secret.

On a machine that cannot reach our licensing servers, import a license file instead: Offline license covers getting, carrying over and importing it.

Verify installation

Check that the module imports:

python -c "import syside; print(syside.__version__)"

You should see the installed version. With uv, prefix the command with uv run.

ModuleNotFoundError means this shell is not using the environment you installed into: activate it. A license error means no valid key was found: revisit Activate license.

Continue to Automate your first model check, or start at Troubleshooting if something did not work.

Update Automator

Updating keeps your license activation.

uv sync --upgrade-package syside
pip install syside --upgrade

Install offline

Download the wheels, the .whl files pip installs from, on a connected machine, carry them over, and install from them. Both machines need Python 3.12 or newer, the offline one with uv or pip as well, since the wheels bring neither. Where the offline machine cannot reach our licensing servers either, it takes a license file rather than a key: see Offline license.

Download the wheels

On the connected machine, run the line for the offline machine’s platform, or every line to cover them all. Name any extra you use in place of syside, as in syside[ipython]:

uvx pip download --only-binary=:all: --platform win_amd64 syside
uvx pip download --only-binary=:all: --platform win_arm64 syside
uvx pip download --only-binary=:all: --platform macosx_11_0_arm64 syside
uvx pip download --only-binary=:all: --platform macosx_10_13_x86_64 syside
uvx pip download --only-binary=:all: --platform manylinux_2_31_x86_64 syside
pip download --only-binary=:all: --platform win_amd64 syside
pip download --only-binary=:all: --platform win_arm64 syside
pip download --only-binary=:all: --platform macosx_11_0_arm64 syside
pip download --only-binary=:all: --platform macosx_10_13_x86_64 syside
pip download --only-binary=:all: --platform manylinux_2_31_x86_64 syside

Install from the wheels

On the offline machine, install from the directory the wheels were carried to, naming the same extras:

uv add --no-index --find-links "<path/to/wheels>" syside
pip install --no-index --find-links "<path/to/wheels>" syside

Minimum requirements

  • Valid license (available on Sensmetry.com)

  • Linux x64 distribution with GNU C Library glibc >= 2.31

    Check yours with ldd --version. The first line ends with the glibc version, as in ldd (Ubuntu GLIBC 2.39-0ubuntu8.8) 2.39.

  • Python 3.12 or newer, 64-bit

  • Internet connection, or wheels carried over with an offline license