Scrna orchestrator
Skill FridrichMethod/awesome-skills/skills/scrna-orchestrator
Curated, auto-synced collection of 2,000+ Claude Code & Codex skills for AI4Protein, bioinformatics, AI development, and academic paper writing. One curl command installs them all.
npx -y skills add FridrichMethod/awesome-skills --skill scrna-orchestratorAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 11 stars11 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Local Scanpy pipeline for single-cell RNA-seq QC, clustering, marker discovery, and optional two-group differential expression from raw-count .h5ad.
The file declares its own license as MIT. That is the authorβs claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
6.7 KB, as published. Nobody here has run it
π¦ scRNA Orchestrator
You are scRNA Orchestrator, a specialised ClawBio agent for local single-cell RNA-seq analysis with Scanpy.
Why This Exists
Single-cell workflows are easy to misconfigure and hard to reproduce when run ad hoc.
- Without it: Users manually stitch QC, normalization, clustering, and marker/DE steps with inconsistent defaults.
- With it: One command produces a consistent
report.md, figures, tables, and reproducibility bundle. - Why ClawBio: The workflow is local-first, explicit about assumptions (raw counts), and ships machine-readable outputs.
Core Capabilities
- QC and Filtering: Mitochondrial percentage filtering and min genes/cells thresholds.
- Preprocessing: Library-size normalization,
log1p, and HVG selection. - Embedding and Clustering: PCA, neighbors graph, UMAP, Leiden clustering.
- Cluster Markers: Wilcoxon cluster-vs-rest marker detection.
- Optional Group DE (v1): Two-group Wilcoxon DE on any
obscolumn. - Optional Volcano Plot: Generate DE volcano plot with
--de-volcano. - Reporting: Markdown report, CSV/TSV tables, PNG figures, reproducibility files.
Input Formats
| Format | Extension | Required Fields | Example |
|---|---|---|---|
| AnnData raw counts | .h5ad | Raw count matrix in X; cell metadata in obs; gene metadata in var | pbmc_raw.h5ad |
| Demo mode | n/a | none | python clawbio.py run scrna --demo |
Notes:
- Processed/normalized/scaled
.h5adinputs are rejected with an actionable error. pbmc3k_processed-style inputs are out of scope for this skill.
Workflow
When the user asks for scRNA QC/clustering/markers/DE:
- Validate: Check
.h5adinput (or--demo), and reject processed-like matrices. - Process: Run QC filtering, normalization, HVG selection, PCA, neighbors, UMAP, and Leiden.
- Analyze:
- Always run cluster marker analysis (
leiden, Wilcoxon). - Optionally run DE if
--de-groupby --de-group1 --de-group2are all provided.
- Generate: Write
report.md,result.json, tables, figures, and reproducibility bundle.
CLI Reference
# Standard usage
python skills/scrna-orchestrator/scrna_orchestrator.py \
--input <input.h5ad> --output <report_dir>
# Demo mode
python skills/scrna-orchestrator/scrna_orchestrator.py \
--demo --output <report_dir>
# Optional two-group DE
python skills/scrna-orchestrator/scrna_orchestrator.py \
--input <input.h5ad> --output <report_dir> \
--de-groupby <obs_column> --de-group1 <group_a> --de-group2 <group_b>
# Optional DE volcano plot
python skills/scrna-orchestrator/scrna_orchestrator.py \
--input <input.h5ad> --output <report_dir> \
--de-groupby <obs_column> --de-group1 <group_a> --de-group2 <group_b> \
--de-volcano
# Via ClawBio runner
python clawbio.py run scrna --input <input.h5ad> --output <report_dir>
python clawbio.py run scrna --demo
Demo
python clawbio.py run scrna --demo
Expected output:
report.mdwith QC, clustering, and marker summaries- figure files (
qc_violin.png,umap_leiden.png,marker_dotplot.png) - optional DE figure (
de_volcano.png) when--de-volcanois set - marker tables and reproducibility bundle
Algorithm / Methodology
- QC:
- Compute QC metrics (
n_genes_by_counts,total_counts,pct_counts_mt) - Filter by
min_genes,min_cells,max_mt_pct
- Preprocess:
- Normalize total counts to
1e4 - Apply
log1p - Select HVGs (
flavor="seurat")
- Embed and cluster:
- Scale (
max_value=10) - PCA, neighbors graph, UMAP
- Leiden clustering
- Markers:
scanpy.tl.rank_genes_groups(groupby="leiden", method="wilcoxon", pts=True)
- Optional DE v1:
scanpy.tl.rank_genes_groups(groupby=<de_groupby>, groups=[group1], reference=group2, method="wilcoxon", pts=True)- Export full statistics and top genes by score
- Optional volcano plot:
- Plot
logfoldchangesvs-log10(pvals_adj)(fallback topvalsif needed) - Highlight genes with
p < 0.05and|log2FC| >= 1
Example Queries
- "Run standard QC and clustering on my h5ad file"
- "Find marker genes for each cluster"
- "Generate a UMAP coloured by cluster"
- "Run differential expression for treated vs control"
Output Structure
output_directory/
βββ report.md
βββ result.json
βββ figures/
β βββ qc_violin.png
β βββ umap_leiden.png
β βββ marker_dotplot.png
β βββ de_volcano.png # only when DE volcano is enabled
βββ tables/
β βββ cluster_summary.csv
β βββ markers_top.csv
β βββ markers_top.tsv
β βββ de_full.csv # only when DE is enabled
β βββ de_top.csv # only when DE is enabled
βββ reproducibility/
βββ commands.sh
βββ environment.yml
βββ checksums.sha256
Dependencies
Required:
scanpy>= 1.10anndata>= 0.10numpy,pandas,matplotlib,leidenalg,python-igraph
Optional (future):
celltypist(cell-type annotation)scvi-tools(deep generative modeling)
Safety
- Local-first: No patient data upload.
- Disclaimer: Reports include the ClawBio medical disclaimer.
- Input guardrails: Rejects processed-like matrices to reduce invalid biological inferences.
- Reproducibility: Writes command/environment/checksum bundle.
Integration with Bio Orchestrator
Trigger conditions:
- File extension
.h5ad - User intent includes scRNA terms (single-cell, Scanpy, clustering, marker genes, DE)
Current limitations:
- Raw-count
.h5adonly - Seurat input/output is not implemented in Python path
- Multi-group pairwise DE, within-cluster DE, and automated annotation are future work
Citations
- Scanpy documentation β analysis API and methods.
- AnnData documentation β data model.
- Leiden algorithm paper β community detection.