Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

OMERO Core Scripts

This directory contains OMERO scripts which use the OMERO.scripts API. All scripts (e.g. *.py) present in the directory will be automatically distributed with all binary builds. Which file-endings will be detected and how they will be launched are both configured centrally in the server. .py, .jy, and .m (MATLAB) files should all be detected by default starting with OMERO 5.


Scripts are separated into several categories, one per directory.

Directory Description
analysis_scripts crunch images to produce numerical results and similar tasks
export_scripts take one or more images as an input, and produce a representation for exchange
figure_scripts take one or more images as an input, and produce a summary representation
import_scripts are run on images after import for extra processing
util_scripts perform other miscellaneous tasks like cleaning up or optimizing OMERO itself

Scripts which would like to rely on other scripts can use:

import omero.<sub_dir>.<script_name>

For this to work, the official script in question must be properly importable, i.e.:

def run():
    client = omero.scripts.client(...)

if __name__ == "__main__":

OMERO User Scripts

If you would like to provide your own scripts for others to install into their OMERO installations, please see


Integration tests under test/ require an OMERO server with scripts installed. The tests are run by Travis for open PRs using omero-test-infra to deploy OMERO via Docker containers.

To run tests locally:

# All tests
$ python test

# Single test in a single file
$ python test -t test/integration/ -k test_dataset_to_plate



Release process

This repository uses bump2version to manage version numbers. To tag a release run:

$ bumpversion release

This will remove the .dev0 suffix from the current version, commit, and tag the release.

To switch back to a development version run:

$ bumpversion --no-tag [major|minor|patch]

specifying major, minor or patch depending on whether the development branch will be a major, minor or patch release. This will also add the .dev0 suffix.

Remember to git push all commits and tags.s essential.

The CI pipeline will automatically deploy the tag onto PyPI.


2010-2021, The Open Microscopy Environment