universal-single-cell-annotator

SkillDev tools

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.

Use universal-single-cell-annotator in Claude, ChatGPT or Ahel Desktop

Free. Sign in, add universal-single-cell-annotator and connect your AI. About a minute.

Also: Claude Code · Cursor · Codex

Then ask your AI: use the universal-single-cell-annotator skill

Details

Instructions available. Your AI can read the instructions. Execution depends on the setup they require.

Add Ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.

universal-single-cell-annotatorStart free
About this skill

The largest open-source medical AI skills library for OpenClaw🦞.

What this skill tells your AI

The instructions your AI receives, as published by freedomintelligence/openclaw-medical-skills in skills/universal-single-cell-annotator/SKILL.md and read by Ahel’s review.


name: 'universal-single-cell-annotator' description: 'Annotate scRNA-seq' measurable_outcome: Execute skill workflow successfully with valid output within 15 minutes. allowed-tools:

  • read_file
  • run_shell_command

Universal Single-Cell Annotator

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

  1. Marker-Based Scoring: Scores cells based on provided gene lists (e.g., "T-cell": ["CD3D", "CD3E"]).
  2. Deep Learning Reference: Wraps celltypist to transfer labels from massive atlases.
  3. LLM Reasoning: Extracts top markers per cluster and constructs prompts for LLM interpretation.

Workflow

  1. Load Data: Ensure data is in AnnData format (standard for Scanpy).
  2. Choose Strategy:
    • Use Markers if you have a known gene panel.
    • Use CellTypist for broad immune/tissue profiling.
    • Use LLM for novel clusters.
  3. Annotate: Run the corresponding method.
  4. 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']

Signals

GitHub stars
3k
Forks
412
Last commit
Jul 2026

Ahel review

  • K1binfo
    installs-packages (in cellidentifierdx-main/README.md)

Automated review, not a security audit. Ruleset v1+k2.

Advanced
Item type
skill
Key
universal-single-cell-annotator
Source
github.com/freedomintelligence/openclaw-medical-skills