Individual skill

marker-panel-annotation

Assigns cell-type labels to clusters from a protein marker panel (multiplexed imaging such as MIBI, CODEX, IMC and CyCIF; mass and flow cytometry; CITE-seq protein), where the labels are judged against an expert reference. Within-dataset normalisation of cluster summaries, lineage first by positive defining markers, subtype only as far as the panel can determine it, marker-poor clusters assigned by exclusion, class-coverage sanity checks, and two independent annotators with adjudication. Use when the output is one label per cluster and the grader is agreement with an expert; for gating single cells in FCS data use flow-cytometry-analysis, and for transcript-based annotation use scanpy or scvi-tools.

backend/cli/skills/biology/marker-panel-annotation/SKILL.md

Read pinned source

Source commit a08e0ad0ad3d6448123039ee4659163eb2e35d99

What was checked

Matches the observed repository HEAD
Yes
Scanner rules are current
Yes
Repository scan complete
No
Skill scan complete
No
Observed behavior
Network or broad shell
Last checked
Nov 2, 2026

These are observations at the recorded commit, not a guarantee of safety. Review the source before running it.

Install this skill

Choose an agent in your Stack or copy a command below. Commands fetch the pinned commit and copy only this skill directory. Existing destinations are refused. Copying a command does not install anything.

An install command is unavailable: current rules, complete repository and skill scans, an eligible behavior level and a permitted license are required.

Repository context

Repository stars (not skill ratings)
4,352
Repository last updated
Nov 6, 2026
License
Apache-2.0

Observed agent integration: No specific integration evidence. Standard SKILL.md installation does not imply verified compatibility.

Files and excerpt

File metadata and permitted, redacted excerpts come from the recorded scan. Source links are pinned to that commit.

Browse files
Read excerpt

# Marker-panel cluster annotation

An expert annotating clusters from a marker panel gets two things right that a
first-pass reading gets wrong: the *level* at which each label is stated, and
the clusters that carry almost nothing. Both directions cost equally under an
expert-agreement grader: a subtype the panel cannot support scores like a
wrong lineage, and a broad label where the panel determines the subtype
scores like a miss. Everything below follows from that.

## 1. Summarise within the dataset, never across

- Work one dataset (panel, platform, run) at a time. Intensities are not
  comparable across platforms or panels; a threshold or z-score computed on
  the pooled data is wrong for every dataset in it.