This skill wraps multiple cell type annotation strategies into a single Python class. It allows agents to flexibly choose between rule-based (markers), data-driven (CellTypist), or reasoning-based (LLM) approaches depending on the context.
When to Use This Skill
Initial Analysis: When processing raw AnnData objects.
Validation: When cross-referencing automated labels with known markers.
Discovery: When identifying rare cell types using LLM reasoning on marker lists.
Core Capabilities
Marker-Based Scoring: Scores cells based on provided gene lists (e.g., "T-cell": ["CD3D", "CD3E"]).
Deep Learning Reference: Wraps celltypist to transfer labels from massive atlases.
LLM Reasoning: Extracts top markers per cluster and constructs prompts for LLM interpretation.
Workflow
Load Data: Ensure data is in AnnData format (standard for Scanpy).
Choose Strategy:
Use Markers if you have a known gene panel.
Use CellTypist for broad immune/tissue profiling.
Use LLM for novel clusters.
Annotate: Run the corresponding method.
Inspect: Check adata.obs for the new annotation columns.
Example Usage
User: "Annotate this dataset looking for T-cells and B-cells."
Agent Action:
from universal_annotator import UniversalAnnotator
import scanpy as sc
adata = sc.read_h5ad('data.h5ad')
annotator = UniversalAnnotator(adata)
markers = {
'T-cell': ['CD3D', 'CD3E', 'CD8A'],
'B-cell': ['CD79A', 'MS4A1']
}
annotator.annotate_marker_based(markers)
# Results in adata.obs['predicted_cell_type']
1---2name: universal-single-cell-annotator3description: Annotate scRNA-seq4---56<!--7# COPYRIGHT NOTICE8# This file is part of the "Universal Biomedical Skills" project.9# Copyright (c) 2026 MD BABU MIA, PhD <md.babu.mia@mssm.edu>10# All Rights Reserved.11#12# This code is proprietary and confidential.13# Unauthorized copying of this file, via any medium is strictly prohibited.14#15# Provenance: Authenticated by MD BABU MIA1617-->18192021# Universal Single-Cell Annotator2223This skill wraps multiple cell type annotation strategies into a single Python class. It allows agents to flexibly choose between rule-based (markers), data-driven (CellTypist), or reasoning-based (LLM) approaches depending on the context.2425## When to Use This Skill2627* **Initial Analysis**: When processing raw AnnData objects.28* **Validation**: When cross-referencing automated labels with known markers.29* **Discovery**: When identifying rare cell types using LLM reasoning on marker lists.3031## Core Capabilities32331. **Marker-Based Scoring**: Scores cells based on provided gene lists (e.g., "T-cell": ["CD3D", "CD3E"]).342. **Deep Learning Reference**: Wraps `celltypist` to transfer labels from massive atlases.353. **LLM Reasoning**: Extracts top markers per cluster and constructs prompts for LLM interpretation.3637## Workflow38391. **Load Data**: Ensure data is in `AnnData` format (standard for Scanpy).402. **Choose Strategy**:41 * Use **Markers** if you have a known gene panel.42 * Use **CellTypist** for broad immune/tissue profiling.43 * Use **LLM** for novel clusters.443. **Annotate**: Run the corresponding method.454. **Inspect**: Check `adata.obs` for the new annotation columns.4647## Example Usage4849**User**: "Annotate this dataset looking for T-cells and B-cells."5051**Agent Action**:52```python53from universal_annotator import UniversalAnnotator54import scanpy as sc5556adata = sc.read_h5ad('data.h5ad')57annotator = UniversalAnnotator(adata)5859markers = {60 'T-cell': ['CD3D', 'CD3E', 'CD8A'],61 'B-cell': ['CD79A', 'MS4A1']62}6364annotator.annotate_marker_based(markers)65# Results in adata.obs['predicted_cell_type']66```676869<!-- AUTHOR_SIGNATURE: 9a7f3c2e-MD-BABU-MIA-2026-MSSM-SECURE -->
Run npx skillmds@latest add fridrichmethod/universal-single-cell-annotator in your terminal (requires Node.js), paste this page's agent-chat prompt into Claude, Cursor, or any MCP-connected agent, or download the SKILL.md file and copy it into your agent's skills directory.
Annotate scRNA-seq It is listed under Coding & Dev Tools on SkillMD.
This skill has not completed SkillMD's automated safety review yet. SkillMD never runs a skill's scripts for you; review the SKILL.md before installing.
This skill is tagged as working with Claude Code, Claude.ai, OpenAI Codex. SKILL.md is an open format, so most agents that read a skills directory can load it too.
Yes. Installing skills from SkillMD is free, and the skill stays under its author's original license.
FridrichMethod (@fridrichmethod) published this skill. Their other Agent Skills are listed on their SkillMD profile.