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.

app#

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 INTEGER  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 TEXT    Release date. e.g. 20210201  \[default: latest]
  --plain-output        Do not use rich output. Useful for scripting.

list#

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

Usage:

mmcore list [OPTIONS]

logs#

Display recent output from pymmcore-plus log.

Usage:

mmcore logs [OPTIONS]

Options:

  -n, --num INTEGER  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 TEXT         Order of axes to acquire (e.g. 'TPCZ').
  --channel TEXT            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 TEXT      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]