install
source · Clone the upstream repo
git clone https://github.com/FreedomIntelligence/OpenClaw-Medical-Skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/FreedomIntelligence/OpenClaw-Medical-Skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/universal-single-cell-annotator" ~/.claude/skills/freedomintelligence-openclaw-medical-skills-universal-single-cell-annotator && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/FreedomIntelligence/OpenClaw-Medical-Skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/skills/universal-single-cell-annotator" ~/.openclaw/skills/freedomintelligence-openclaw-medical-skills-universal-single-cell-annotator && rm -rf "$T"
manifest:
skills/universal-single-cell-annotator/SKILL.mdtags
source content
<!--
# COPYRIGHT NOTICE
# This file is part of the "Universal Biomedical Skills" project.
# Copyright (c) 2026 MD BABU MIA, PhD <md.babu.mia@mssm.edu>
# All Rights Reserved.
#
# This code is proprietary and confidential.
# Unauthorized copying of this file, via any medium is strictly prohibited.
#
# Provenance: Authenticated by MD BABU MIA
-->
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
- Marker-Based Scoring: Scores cells based on provided gene lists (e.g., "T-cell": ["CD3D", "CD3E"]).
- Deep Learning Reference: Wraps
to transfer labels from massive atlases.celltypist - LLM Reasoning: Extracts top markers per cluster and constructs prompts for LLM interpretation.
Workflow
- Load Data: Ensure data is in
format (standard for Scanpy).AnnData - 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
for the new annotation columns.adata.obs
Example Usage
User: "Annotate this dataset looking for T-cells and B-cells."
Agent Action:
<!-- AUTHOR_SIGNATURE: 9a7f3c2e-MD-BABU-MIA-2026-MSSM-SECURE -->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']