Skip to main content

Galaxy Project extensions for the team multi-agent LLM framework.

Project description

team-galaxy

Galaxy Project extensions for the team multi-agent LLM framework.

PyPI - Version License: MIT

team-galaxy adds Galaxy-specific skills, personas, and ready-to-run scenario configs on top of team-core. Installing team-galaxy is all it takes — no environment variables or hardcoded paths required. It integrates with team-core ≥ 0.15.5 via Python entry points:

Entry-point group What it contributes
team.skills Short skill names (bioblend, planemo, …) usable anywhere in a YAML
team.persona_dirs Galaxy personas auto-discoverable with the @name shorthand
team.commands team galaxy subcommand injected into the team CLI

[!NOTE]

A significant portion of this code and documentation was written with the assistance of GitHub Copilot. All contributions have been reviewed and tested by the maintainers.


Scenarios

Scenario Description Workflow type
tool-wrapper-factory Generate an IUC-compliant Galaxy tool XML wrapper from a --help text review_loop
iwc-compliance Bring a Galaxy workflow to full IWC quality-gate compliance sequential_chain
gtn-tutorial-generator Convert a .ga workflow into a complete GTN tutorial review_loop
bioblend-analysis Run a multi-step bioinformatics analysis via the Galaxy API manager
job-failure-investigator Diagnose failed Galaxy jobs and produce actionable reports sequential_chain

Installation

Basic (planemo scenarios, no Galaxy API)

pip install team-galaxy

Planemo must be installed separately and available on PATH:

pip install planemo

With BioBlend (Galaxy API scenarios)

pip install "team-galaxy[bioblend]"

Set your Galaxy credentials:

export GALAXY_URL=https://usegalaxy.org
export GALAXY_API_KEY=<your_api_key>

From source

git clone https://github.com/cumbof/team-galaxy
cd team-galaxy
pip install -e ".[dev,bioblend]"

Quick Start

1. Initialise a scenario

team galaxy init --scenario tool-wrapper-factory

This copies a ready-to-edit YAML config to the current directory. Skill references use short registered names — no paths to edit.

2. Prepare your workspace

Each scenario expects one or two input files in the workspace directory. The generated YAML contains a # Before running: comment describing exactly what to provide.

For the tool-wrapper-factory scenario, create tool_spec.md in the workspace:

# Tool: fastp

conda package: fastp
version: 0.23.4

## --help output

fastp: an ultra-fast all-in-one FASTQ preprocessor
...

## Intended Galaxy datatypes
- Input: fastqsanger, fastqsanger.gz (paired or single)
- Output: fastqsanger.gz (trimmed reads), html (QC report), json (QC metrics)

3. Run

team run tool-wrapper-factory.yaml

Skills

After pip install team-galaxy, use skill names directly in any team YAML:

defaults:
  skills:
    - bioblend        # Galaxy API tools (requires bioblend extra)
    - planemo         # planemo lint / test / autoupdate tools
    - toolshed        # Tool Shed search and metadata tools
    - iuc_standards   # IUC authoring standards (context injection)
    - iwc_checklist   # IWC workflow quality checklist (context injection)
    - gtn_format      # GTN tutorial format specification (context injection)
    - bioconda_guide  # Bioconda packaging guide (context injection)

Available skills

Name Type Provides
bioblend Python tools galaxy_upload, galaxy_run_tool, galaxy_invoke_workflow, galaxy_job_status, galaxy_wait_for_job, galaxy_download, galaxy_search_tools, galaxy_create_history, galaxy_get_histories, galaxy_show_dataset
planemo Python tools planemo_lint, planemo_test, planemo_workflow_lint, planemo_workflow_test, planemo_autoupdate, planemo_shed_lint
toolshed Python tools toolshed_search, toolshed_tool_info, toolshed_categories, toolshed_owner_repos
iuc_standards Markdown context IUC tool XML authoring standards injected into system prompt
iwc_checklist Markdown context IWC workflow quality checklist injected into system prompt
gtn_format Markdown context GTN tutorial Markdown format specification
bioconda_guide Markdown context Bioconda recipe packaging guide

Personas

Galaxy-specific personas are automatically discovered when team-galaxy is installed. No TEAM_PERSONA_DIR needed.

Key Role Description
@iuc_reviewer IUC Tool Reviewer Expert in Galaxy tool XML, planemo, and IUC contribution standards
@iwc_curator IWC Workflow Curator Expert in IWC workflow quality standards and compliance validation
@gtn_author GTN Tutorial Author Expert in writing GTN tutorials in the GTN Markdown format
@galaxy_admin Galaxy System Administrator Manages Galaxy instance infrastructure and job routing
@tool_wrapper_author Galaxy Tool Wrapper Author Expert in writing IUC-compliant Galaxy tool XML wrappers

Reference them in any team YAML:

members:
  - name: reviewer
    persona: "@iuc_reviewer"

How it extends team-core

team-galaxy uses the three entry-point groups added in team-core ≥ 0.15.5:

team-core plugin API
├── team.skills          ← bioblend, planemo, toolshed, iuc_standards, …
├── team.persona_dirs    ← team_galaxy/personas/ (auto-merged)
└── team.commands        ← team galaxy <subcommand>

This means:

  • Skill names work in any team YAML, not just team-galaxy ones.
  • Personas are available via @name without any env var.
  • team galaxy --help is always accessible once team-galaxy is installed.

CLI reference

team galaxy --help

Commands:
  init       Copy a scenario template to a directory, ready to run.
  scenarios  List available scenario templates.
  skills     List available Galaxy skill names and descriptions.
  personas   List available Galaxy personas with descriptions.
# List scenarios
team galaxy scenarios

# Initialise a scenario in the current directory
team galaxy init --scenario bioblend-analysis

# Initialise in a specific directory
team galaxy init --scenario tool-wrapper-factory --output-dir ~/my-project/

Development

pip install -e ".[dev,bioblend]"
pytest -q

Integration tests (require a live Galaxy server and planemo):

pytest -m integration

Contributing

Pull requests are welcome. Please disclose AI assistance in the PR description (e.g. "co-authored with GitHub Copilot"). Before submitting:

  • Run pytest -q and ensure all tests pass.
  • Add or update tests for any behaviour changes.
  • Follow the conventions described in AGENTS.md.

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

team_galaxy-0.2.1.tar.gz (43.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

team_galaxy-0.2.1-py3-none-any.whl (47.3 kB view details)

Uploaded Python 3

File details

Details for the file team_galaxy-0.2.1.tar.gz.

File metadata

  • Download URL: team_galaxy-0.2.1.tar.gz
  • Upload date:
  • Size: 43.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for team_galaxy-0.2.1.tar.gz
Algorithm Hash digest
SHA256 2092f9bc9097930152aaf5c81430d25e8f70f605c2e6772ced6eaec6db902e19
MD5 2756e26b8bd536986072e2cc3d89a7fd
BLAKE2b-256 6440ea135cd7746aaf7d1050ef781748757c58950b57cc73947a400bdd2bb9a4

See more details on using hashes here.

Provenance

The following attestation bundles were made for team_galaxy-0.2.1.tar.gz:

Publisher: publish.yml on cumbof/team-galaxy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file team_galaxy-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: team_galaxy-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 47.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for team_galaxy-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9393f1769f99146980ccd9c4bdb4324be6caf96a4e81a9a93c1b834a41227bd4
MD5 ded1c09feaafaf7e1bc4195ae11ce5fd
BLAKE2b-256 6833d6549112eaae9c35ad057c24c229b8eefc0516b28192a31b0aef16f3940d

See more details on using hashes here.

Provenance

The following attestation bundles were made for team_galaxy-0.2.1-py3-none-any.whl:

Publisher: publish.yml on cumbof/team-galaxy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page