Album Ecosystem

Album is more than a command line tool. The core framework is an extensible substrate: plugins implement different deployment targets (Docker images, standalone installers, batch / distributed execution, GUI, LLM-agent orchestration) on top of the same solution and catalog primitives. You write the solution once; the ecosystem decides how it reaches its consumers.

In paper terms, Album acts as an executable digital library that composes with — rather than replaces — package managers, workflow engines, and container runtimes. See case-studies for end-to-end examples that mix several plugins.

Graphical User Interface

Install the GUI plugin to browse catalogs, install and run solutions visually:

micromamba install album-gui -c conda-forge

Or via pip:

pip install album-gui

Launch it:

album gui

You can also create desktop shortcuts for individual solutions:

album add-shortcut group:name:version

See Graphical interface for adding catalogs, running solutions and keeping them up to date.

Plugins

All plugins are installed via micromamba (recommended) or pip into your Album environment and add new commands to the album CLI automatically.

Plugin

Install

Command

What it does

album-gui

micromamba install album-gui -c conda-forge

album gui

Graphical frontend for browsing and running solutions

album-docker

micromamba install album-docker -c conda-forge

album docker

Package any solution into a Docker container

album-distributed

micromamba install album-distributed -c conda-forge

album run-distributed

Batch-run solutions over multiple inputs

album-package

micromamba install album-package -c conda-forge

album package

Create installer executables for Album and a solution (OS- and CPU-architecture-specific; they download micromamba and Album at install time)

See the individual pages for details: Docker · Distributed · Package

Packages and releases

Every package of the Album suite is released on PyPI and conda-forge at the same time. The badges show the latest version.

Package

What it adds

PyPI

conda-forge

album

the framework and the album command line

PyPI

conda-forge

album-gui

graphical interface, album gui

PyPI

conda-forge

album-docker

Docker images from solutions, album docker

PyPI

conda-forge

album-package

standalone installers, album package

PyPI

conda-forge

album-distributed

batch and distributed runs, album run-distributed

PyPI

conda-forge

album-solution-api

the API every solution script uses

PyPI

conda-forge

album-environments

environment handling with micromamba

PyPI

conda-forge

album-mcp

MCP server for LLM agents

from source

from source

The album Docker image is published for every release of album as well.

Workflow integration

Because each Album solution is a self-contained executable step, solutions can be reused as steps inside an external workflow engine (Snakemake, Nextflow, …) without rewriting the routine: each step is one album run call, the engine handles the pipeline, and Album provides the step’s environment. The same solution that you run interactively on a laptop can be invoked from a workflow rule on an HPC cluster.

See Using solutions in data workflows for the setup, how album run behaves in scripts and batch processing, and case-studies (scenario C) for a concrete example combining Album with Snakemake and album-docker.

Finalize & Distribute

When a solution is mature, three complementary paths take it from “running on my machine” to “long-term distributable artifact”:

Three finalization paths: docker (A), package (B), conda-lock + public catalog (C)

Three finalization paths: containerize with album-docker (A), build a standalone installer with album-package (B), or pin dependencies with conda-lock and publish to a public catalog (C) (from arXiv:2110.00601, Fig. 5).

Pick the level of stabilization appropriate for your collaborators and reuse scenario:

  • album-docker — best for long-term portability, HPC, and workflow-engine integration.

  • album-package — best for sharing with less-technical collaborators on a specific OS and CPU architecture (one double-clickable installer that downloads micromamba, installs Album from conda-forge, and then installs your solution — the target machine needs network access while it installs).

  • Public catalog + pinned environment — best for community discoverability and citation, especially combined with Zenodo DOIs.

To run an album-docker image or a native Album installation on an HPC cluster or a cloud VM, see Running solutions on clusters and in the cloud.

Catalog Websites

Catalogs can have a Gatsby-powered website that shows all available solutions. When creating a catalog, use the -gatsby template variants:

album clone template:catalog-gatsby [repo-url] [catalog-name]
album clone template:catalog-request-gatsby [repo-url] [catalog-name]

The website is built and deployed automatically via GitLab Pages or GitHub Pages CI.

Public catalogs

album.solutions lists the public catalogs. To add one of them to your collection, see How to use catalogs.

Zenodo DOI Minting

Request catalogs can optionally mint DOIs for every deployed solution via Zenodo. See Zenodo catalog setup for a step-by-step guide.

Python API

Album can be used programmatically from Python — useful for scripting workflows or building integrations. See Python API.

MCP Integration

Album solutions are tool-grounded building blocks that LLM agents can discover, install, and chain via the Model Context Protocol. Because the agent can only call solutions that exist in your catalogs, Album acts as an explicit inventory of executable artifacts — a practical mechanism for constraining the free-form shell commands that LLMs would otherwise hallucinate.

LLMs interact with Album in two complementary ways:

  • Drafting — generating new solution.py files (see Drafting solutions with LLMs in the solution-dev guide).

  • Orchestrating — searching, installing, and chaining existing solutions to fulfil a user request.

See Album MCP for setup, the available tools, and a typical agent workflow.