Installation¶
Annolid currently exposes two main commands after install:
annolid: launch the desktop GUIannolid-run: run model and workflow plugins from the terminal
Annolid requires Python 3.10 or newer. In practice, Python 3.11 is the safest default for new environments.
Recommended Paths¶
One-line installer¶
For most users, start with the project installers:
- macOS and Linux:
curl -sSL https://raw.githubusercontent.com/healthonrails/annolid/main/install.sh | bash
- Windows PowerShell:
irm https://raw.githubusercontent.com/healthonrails/annolid/main/install.ps1 | iex
See One-Line Installer for flags, extras, CPU/GPU choices, and non-interactive installs.
Local .venv with uv¶
For development or reproducible local work, use uv and a repository-local .venv:
git clone --recurse-submodules https://github.com/healthonrails/annolid.git
cd annolid
uv venv .venv --python 3.11
source .venv/bin/activate
uv pip install -e ".[gui]"
The dedicated guide is uv Setup.
pip / venv¶
If you prefer standard Python tooling:
python -m venv .venv
source .venv/bin/activate
pip install --upgrade pip
pip install "annolid[gui]"
To install from source:
git clone --recurse-submodules https://github.com/healthonrails/annolid.git
cd annolid
pip install -e ".[gui]"
Conda¶
Conda still works well when you want environment management plus FFmpeg and native libraries from conda-forge:
conda create -n annolid-env python=3.11
conda activate annolid-env
conda install -c conda-forge ffmpeg git
git clone --recurse-submodules https://github.com/healthonrails/annolid.git
cd annolid
pip install -e ".[gui]"
Optional Extras¶
Useful extras currently defined in pyproject.toml include:
gui: Qt bindings for the desktop applicationlarge_image: TIFF/OME-TIFF metadata and optional streaming backends (tifffile,pyvips,openslide-python)sam3: SAM3-related dependenciesimage_editing: diffusion/image-editing featurestext_to_speech: read-aloud and narration featuresqwen3_embedding: embedding-related utilitiesmediapipe: MediaPipe-based workflowscowtracker: CowTracker backend dependencyannolid_bot: Annolid Bot integrations such as MCP, Playwright, WhatsApp bridge support, and Google Calendar dependencies
Example:
pip install -e ".[gui,large_image,annolid_bot,text_to_speech]"
Note on large_image¶
large_image is optional. A normal annolid[gui] install does not require these dependencies, and Annolid's standard image/video annotation workflows continue to work without them.
The large_image extra installs the Python packages, but some platforms also need native runtimes for the fastest backends:
pyvipsneeds a workinglibvipsruntimeopenslide-pythonneeds a working OpenSlide runtime
If those native libraries are missing, Annolid falls back to tifffile when available. If the full large_image extra is not installed, Annolid still starts normally and falls back to the standard Qt/Pillow image path instead of requiring large-image packages at startup.
Verify the Install¶
Run:
annolid --help
annolid-run --help
Launch the GUI:
annolid
List available model plugins:
annolid-run list-models
Common Post-install Notes¶
- Install FFmpeg if video import/export or codec support is incomplete.
- If you use Annolid Bot with MCP or browser automation, install the
annolid_botextra. - If
qtpy.QtBindingsNotFoundErrorappears, install theguiextra in the active environment. - The
guiextra now installsPySide6as the default Qt binding.