Skip to main content
You normally don’t install the SDK yourself. The first Plurai command checks your project for it, and when it is missing it asks once and installs the exact version the plugin was tested with into the environment your agent runs in. This page is for installing it by hand, adding extras, and checking the install.

Requirements

  • Python 3.12 or 3.13, on macOS, Linux or Windows.
  • On Windows, an agent driven through Claude’s command-line tool (claude_agent_sdk) is not supported. Run it on macOS, Linux or WSL.
The SDK is published on PyPI as plurai-simulation-sdk. The import name and the command lines are plurai.

What the plugin installs

When no usable SDK is found, the plugin installs it into your project’s environment. It looks for that environment in this order:
  1. The activated virtual environment, or the active conda environment (never conda’s base).
  2. A virtual environment in the project folder.
  3. The environment poetry (poetry.lock) or pipenv (Pipfile) names.
An environment activated for another project is skipped when your project has a venv of its own. When the plugin finds no environment for a Python project, it asks whether to use one you activate or to create .venv. A new .venv lacks your agent’s dependencies. It never creates .venv without asking, and it stops when the environment’s Python is older than 3.12.

Install it yourself

Every plugin release is tested with one SDK version. Print the exact install line for yours:
It prints, for example:
Run it in your agent’s environment, with the installer that matches your project:
You can also ask your coding agent: “Install the Plurai SDK into my agent’s venv.”

Required version

The plugin runs only the SDK version it was tested with. When the SDK in your environment is a different version, the plugin stops before a Run, with one line naming the version it found, the version it needs, and the install command. The plugin only runs a plurai that an installed plurai-simulation-sdk distribution provides: a hand-built wrapper script is not handed your login.

Extras

The base install is small. Install an extra only when you use it, with the same version pin, for example "plurai-simulation-sdk[langfuse]==1.0.0". The plugin installs the extras a command needs when it needs them. plurai login, plurai --version and plurai capabilities need none of the extras.

Anonymization extras

The anonymize extra also needs a spaCy English model, which is not a Python dependency:
The anonymize-binary extra also needs two system programs on PATH: Tesseract (brew install tesseract, or tesseract-ocr) and Poppler (brew install poppler, or poppler-utils). Under the anonymized posture, ingestion fails closed: without the extra, the model or the system programs, it refuses to run rather than upload unscrubbed data. A workspace on the default raw posture needs none of them. See Data and privacy.

Verify the install

plurai capabilities is what the plugin reads. Its commands list is read off the live CLI, and its features name behavior that command names do not reveal, such as export-dir-traces. plurai login --status never prints your key.

Agent and runner in different environments

The runner (plurai-run-simulation) and your agent can use different virtual environments, for example when your agent pins dependencies the runner’s environment cannot share. The agent runs in a child interpreter: the runner’s own Python by default, or the one PLURAI_CHILD_PYTHON names:
The agent’s environment must have the SDK installed too, because simulate.py imports plurai.

Upgrade

When you update the plugin, the next Plurai command finds the SDK at the old version and offers to install the new one. To do it yourself, run the line --install-line prints. Check the changelog for breaking changes first.

Next steps

Run simulations

Use plurai-run-simulation directly.

CLI reference

Every plurai command and flag.