Galaxy bioinformatics CLI for automating histories, datasets, tools, workflows, and jobs via the Galaxy REST API
Project description
galaxy-cli — Galaxy bioinformatics command-line client
galaxy-cli is a Python CLI and REPL for automating the
Galaxy bioinformatics platform from the shell. It
wraps the Galaxy REST API for histories, datasets, collections, tools,
workflows, jobs, and libraries.
This project was initially generated with cli-anything and then refined into
the standalone galaxy-cli package.
pip install galaxy-cli
What can galaxy-cli do?
galaxy-cli is a Galaxy bioinformatics CLI for users who want a Galaxy
command-line client that works naturally in shell scripts and reproducible
Galaxy analyses. You can use it to:
- run Galaxy workflows from the command line and submit individual Galaxy tools
- upload and download datasets
- create and manage histories and collections
- inspect jobs, logs, tools, and workflow metadata
- automate Galaxy workflows for reproducible Galaxy bioinformatics analyses
Prerequisites
- Python 3.9+
- A running Galaxy server
- A Galaxy API key from your target instance
Installation
Install from PyPI with uv or pip:
uv tool install galaxy-cli
pip install galaxy-cli
For local development from this repository:
python3 -m pip install .
Verify installation:
which galaxy-cli
galaxy-cli --version
Configuration
Set your Galaxy server URL and API key:
export GALAXY_URL=https://usegalaxy.org
export GALAXY_API_KEY=your-api-key
galaxy-cli config test
Session state is stored in ~/.galaxy-cli/session.json. It is intended for a
single active writer; for parallel automation or multiple concurrent agents,
pass --history-id explicitly instead of relying on shared session state.
Usage
Documentation site: https://qchiujunhao.github.io/galaxy-cli/
galaxy-cli history list
galaxy-cli history create "My Analysis"
galaxy-cli tool search "bowtie"
galaxy-cli workflow list
galaxy-cli workflow list | jq .
galaxy-cli --human config show
galaxy-cli defaults to compact JSON output. Use --human for
human-readable terminal output.
Run the REPL:
galaxy-cli
Tests
python3 -m pytest galaxy_cli/tests/ -v
Releases
Releases are published from GitHub Releases through PyPI Trusted Publishing. See RELEASE.md for the one-time PyPI setup and release checklist.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file galaxy_cli-1.2.0.tar.gz.
File metadata
- Download URL: galaxy_cli-1.2.0.tar.gz
- Upload date:
- Size: 71.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
29f075e96052e6a9fb13af896859248134b1cd77dc871406f014d9a00a4c1b88
|
|
| MD5 |
a5724bcabd8cdc8b9fb602ade0ee64c6
|
|
| BLAKE2b-256 |
eab2f604c2b1aca2e2992d7782f9277f8bde0fc364acb9bbe59694ed7f5156f5
|
Provenance
The following attestation bundles were made for galaxy_cli-1.2.0.tar.gz:
Publisher:
release.yml on qchiujunhao/galaxy-cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
galaxy_cli-1.2.0.tar.gz -
Subject digest:
29f075e96052e6a9fb13af896859248134b1cd77dc871406f014d9a00a4c1b88 - Sigstore transparency entry: 1645228801
- Sigstore integration time:
-
Permalink:
qchiujunhao/galaxy-cli@aecd2974459f210ecd2826206a7bf79a8a434554 -
Branch / Tag:
refs/tags/v1.2.0 - Owner: https://github.com/qchiujunhao
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@aecd2974459f210ecd2826206a7bf79a8a434554 -
Trigger Event:
release
-
Statement type:
File details
Details for the file galaxy_cli-1.2.0-py3-none-any.whl.
File metadata
- Download URL: galaxy_cli-1.2.0-py3-none-any.whl
- Upload date:
- Size: 70.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8c733b1d109fce8a489b005c60da370a1dd7aebe33965d9be9692923869cf12d
|
|
| MD5 |
71f772601fdcfa336d5596423c590ced
|
|
| BLAKE2b-256 |
57b020f7e5fc78e6417aeb1bbde603f667997b5373f639682bffd3408130ac40
|
Provenance
The following attestation bundles were made for galaxy_cli-1.2.0-py3-none-any.whl:
Publisher:
release.yml on qchiujunhao/galaxy-cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
galaxy_cli-1.2.0-py3-none-any.whl -
Subject digest:
8c733b1d109fce8a489b005c60da370a1dd7aebe33965d9be9692923869cf12d - Sigstore transparency entry: 1645228928
- Sigstore integration time:
-
Permalink:
qchiujunhao/galaxy-cli@aecd2974459f210ecd2826206a7bf79a8a434554 -
Branch / Tag:
refs/tags/v1.2.0 - Owner: https://github.com/qchiujunhao
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@aecd2974459f210ecd2826206a7bf79a8a434554 -
Trigger Event:
release
-
Statement type: