Skip to content

CLI Reference#

This page provides documentation for the mmcore command line tool.

Usage of the CLI requires the cli extra to be installed:

pip install "pymmcore_plus[cli]"

The CLI can be used to interact with the pymmcore_plus package from the command line, including the installation, removal, and selection of micro-manager drivers, as well as executing an experiment and/or showing log files.

mmcore#

mmcore: pymmcore-plus command line.

For additional help on a specific command: type mmcore [command] --help

Usage:

mmcore [OPTIONS] COMMAND [ARGS]...

Options:

  --version             Show version and exit.
  --install-completion  Install completion for the current shell.
  --show-completion     Show completion for the current shell, to copy it or
                        customize the installation.

bench#

Run a benchmark of Core and Devices loaded with config (or Demo).

Usage:

mmcore bench [OPTIONS]

Options:

  -c, --config <file>  Path to Micro-Manager system configuration file.
  -n, --number <int>   Number of iterations for each test.  [default: 10]

build-dev#

Build Micro-Manager device adapters from the git repo.

Currently only supports macos and linux.

Usage:

mmcore build-dev [OPTIONS] [devices]...

Options:

  devices...              Device adapters to build. Defaults to ['DemoCamera',
                          'Utilities', 'SequenceTester']
  -d, --dest <directory>  Installation directory.  [default:
                          /home/runner/.local/share/pymmcore-plus/mm]
  -y                      Overwrite existing if git sha is already built. If
                          not specified, will prompt.

clean#

Remove all Micro-Manager installs downloaded by pymmcore-plus.

Usage:

mmcore clean [OPTIONS] [glob]

Options:

  glob    glob pattern to clean  [default: *]

info#

Display information about the Micro-Manager and pymmcore install.

Usage:

mmcore info [OPTIONS]

install#

Install Micro-Manager Device adapters from https://download.micro-manager.org.

Usage:

mmcore install [OPTIONS]

Options:

  -d, --dest <directory>  Installation directory.  [default:
                          /home/runner/.local/share/pymmcore-plus/mm]
  -r, --release <str>     Release date. e.g. 20210201  [default: latest-
                          compatible]
  --plain-output          Do not use rich output. Useful for scripting.
  --test-adapters         Install only test adapters (e.g. DemoCamera and
                          others for testing).

list#

Show all discovered Micro-Manager installations.

Usage:

mmcore list [OPTIONS]

logs#

Display recent output from pymmcore-plus log.

Usage:

mmcore logs [OPTIONS]

Options:

  -n, --num <int>  Number of lines to display.
  -t, --tail       Continually stream logs.
  -c, --clear      Delete all log files.
  --reveal         Reveal log file in Explorer/Finder.

mmstudio#

Run the Java Micro-Manager GUI.

This command will attempt to locate an execute an ImageJ application found in the active Micro-Manager directory.

Usage:

mmcore mmstudio [OPTIONS]

run#

Run a Micro-Manager acquisition from a useq-schema MDASequence file.

Usage:

mmcore run [OPTIONS] [useq]

Options:

  useq                      Path to useq-schema file.
  -c, --config <file>       Path to Micro-Manager system configuration file.
  --z-go-up / --no-z-go-up  Acquire from bottom to top.
  --z-top <float>           Top of z-stack.
  --z-bottom <float>        Bottom of z-stack.
  --z-range <float>         Symmetric range of z-stack around position.
  --z-above <float>         Asymmetric range of z-stack above position.
  --z-below <float>         Asymmetric range of z-stack below position.
  --z-step <float>          Step size of z-stack.
  -zr <float>               Relative z-positions to acquire (may use multiple
                            times).
  -za <float>               Absolute z-positions to acquire (may use multiple
                            times).
  --t-interval <float>      Interval between timepoints.
  --t-duration <float>      Duration of time lapse.
  --t-loops <float>         Number of time points to acquire.
  --dry-run / --no-dry-run  Do not run the acquisition.  [default: no-dry-run]
  --axis-order <str>        Order of axes to acquire (e.g. 'TPCZ').
  --channel <str>           Channel to acquire. Argument is a string of the
                            following form:  - name: "DAPI"  -
                            name;exposure: "DAPI;0.5"  - useq-schema JSON:
                            '{"config": "DAPI", "exposure": 0.5, "z_offset":
                            0.5}'
  --channel-group <str>     Name of Micro-Manager configuration group for
                            channels.  [default: Channel]

use#

Change the currently used Micro-manager version/path.

Usage:

mmcore use [OPTIONS] {pattern}

Options:

  pattern  Path to an existing directory, or pattern to match against
           installations found by `mmcore list`  [required]