muon-multimodal-analysis

Orchestrates paired scRNA and scATAC multimodal analysis workflows using muon, scanpy, and SnapATAC2.

1|Updated Nov 20, 2025
One-click install
npx skills add https://github.com/tony-zhelonkin/scio --skill muon-multimodal-analysis-tony-zhelonkin
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: muon-multimodal-analysis
Source: https://github.com/tony-zhelonkin/scio/tree/main/skills/muon-multimodal-analysis
Command: npx skills add https://github.com/tony-zhelonkin/scio --skill muon-multimodal-analysis-tony-zhelonkin

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires muon, scanpy, snapatac2, scvi-tools, harmonypy, pyranges, pygenometracks, matplotlib.

What problem does it solve? Paired multimodal single-cell datasets (10x Multiome, CITE-seq) require coordinating many tools across RNA and ATAC modalities, and it is easy to apply steps in the wrong order or pick the wrong integration method. This Skill acts as the entry-point orchestrator that chains preprocessing, batch integration, differential accessibility, peak-gene linkage, and visualisation across the scverse Python ecosystem. ## Core Features & Use Cases - Decision-tree routing: Maps your starting point (Cell Ranger ARC output, h5mu, or fragments-only) to the correct leaf skill for loading and preprocessing each modality. - Canonical workflow: Provides an end-to-end code path covering MuData loading, scanpy RNA preprocessing, SnapATAC2 ATAC preprocessing, Harmony batch correction, WNN neighbors, Leiden clustering, and differential accessibility. - Integration guidance: Explains when to stay on WNN + Harmony versus switching to scvi-tools MultiVI for joint deep-learning embeddings, plus CITE-seq and cross-modality pitfalls. - Use Case: Given a 10x Multiome experiment with multiple samples, follow the orchestrator to produce a batch-corrected joint UMAP, per-cluster marker peaks, and peak-to-gene cis-regulatory links saved as an h5mu file. ## Quick Start Ask the assistant to run the muon multimodal workflow on your 10x Multiome filtered_feature_bc_matrix.h5 and fragments file to produce an integrated h5mu with marker peaks.

Frequently Asked Questions about muon-multimodal-analysis

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I analyze 10x Multiome data in Python?▼

Load the Cell Ranger ARC output with mu.read_10x_h5 into a MuData object, preprocess RNA with scanpy and ATAC with SnapATAC2, then integrate modalities via WNN neighbors or MultiVI. The workflow ends with differential accessibility and peak-gene linkage before saving to h5mu.

When should I use MultiVI instead of WNN for multiome integration?▼

Switch to MultiVI when WNN UMAPs still show batch structure after per-modality Harmony, when you need a generative model for imputation or missing modalities, or when you have a GPU and over 50k cells. For quick CPU-only exploration under 20k cells, stay on WNN plus Harmony.

Should I run Harmony before or after WNN in multiome analysis?▼

Run Harmony per modality before WNN, because WNN expects each modality's embedding to already be batch-corrected. For MultiVI, pass batch_key at setup_anndata time and skip Harmony entirely.

Can this workflow handle CITE-seq data?▼

Yes, CITE-seq uses the same chassis with the ATAC step replaced by protein modality preprocessing via CLR transformation and normalization in scanpy. Harmony integration, WNN, and differential protein abundance carry over unchanged.

Why do my MuData modalities have mismatched cells?▼

Cell name mismatches between modalities occur when obs_names differ across AnnData objects. Align obs_names manually or call mdata.update() before constructing the MuData, and intersect obs_names before joint analysis.

When should I not use muon for multimodal analysis?▼

Do not use it for R/Seurat workflows, unpaired RNA and ATAC from separate cell pools, scATAC-only analysis, or plain scRNA-seq. Use Seurat, scglue, SnapATAC2, or scanpy respectively for those cases.