xuzhougeng/wisp-science/singlecell-qc

Trust tier 2
  • community
LLM review pending
Source check pending

Checking that the SKILL.md file is still in the repository.

Use when designing, reviewing, or implementing single-cell RNA-seq QC in Python or R with a human-in-the-loop, data-driven approach. Trigger for scRNA QC metrics, per-sample diagnosis, threshold discussion, mitochondrial/ambient/doublet assessment, MAD vs fixed cutoffs, or refactoring automated merge-first QC. The analyst confirms key decisions at each step—agents must inspect data, propose options, and wait for approval before filtering, doublet removal, or merging. Not a turnkey pipeline skil…

Install

npx vskill@latest install xuzhougeng/wisp-science/singlecell-qc

SKILL.md

Single-Cell QC

Overview

Use this skill for data-driven, human-centered single-cell QC. The analyst inspects distributions and confirms decisions; code computes metrics and executes only what was agreed.

text
inspect data → compute metrics → human reviews → confirm thresholds → small action → re-inspect

Not a one-click pipeline. Do not chain calculate → filter → doublet → merge unless the user explicitly requests full execution after reviewing pilot results.

Follow analysis-workflow for module and script layout. Match the user's language.

Read first: references/human-in-the-loop.md

When To Use

  • "帮我看看这个样本 QC"
  • "算一下 QC 指标,阈值我来定"
  • "逐样本诊断,先别过滤"
  • "这个 merge-first QC 太粗,怎么改成人工确认"
  • "参考 GZL metrics 脚本,但要分步做"

Do not use for integration/Harmony, annotation, or spatial QC unless only expression-matrix QC is needed.

Operating Rules (Human-First)

  1. Inspect before acting — matrix type, species, sample metadata, existing checkpoints.
  2. Pilot samples first — default 1–3 samples; expand only after user OK.
  3. Metrics before filters — run 01-calculate_metrics; stop and report.
  4. Propose thresholds, never silently apply — show expected cell loss per sample.
  5. Ask at gates — which metrics next? which thresholds? proceed to filter? merge?
  6. No silent heavy steps — no full-cohort filter, Scrublet, decontX, or merge without explicit approval.
  7. Reversible checkpoints — pre-filter metadata/counts stay intact; filtering writes new files.
  8. Scripts = one stage — owner-editable; thresholds visible at top of filter scripts.

Full gate definitions: references/human-in-the-loop.md

First Pass (Always)

bash
find <project_root> -maxdepth 4 -type f \( -name '*.py' -o -name '*.R' -o -name '*.h5ad' -o -name '*.md' \) | head -60
rg -n "filter_cells|calculate_qc|metadata|mito|n_genes" <project_root>/scripts 2>/dev/null | head -30

Report to the user:

  • input matrix type (raw / filtered / EmptyDrops / h5ad);
  • species; sample count;
  • whether per-sample or merge-first QC exists;
  • recommended next single step (not full pipeline).

Then ask which samples to pilot and which metrics matter for this tissue.

Staged Workflow (Default)

Each stage ends with human confirmation.

StageScript / actionAgent stops until user confirms
AInput inspectionsample list, matrix, species
B01-calculate_metrics (pilot)metric scope (core / hbb / doublet / …)
C02-qc_diagnosis figuresfigures match expectations
DThreshold proposal (table + loss estimate)per-sample cutoffs
E03-filter_cellsfilter summary acceptable
Foptional doublet / ambientmethod and aggressiveness
G04-merge_qc_passedall samples signed off

Stages D–G are skipped until the user says proceed.

Metric tiers (choose with user)
TierMetricsAsk when
Coren_genes, n_UMIs, mito_frac, pct_counts_rbalways unless h5ad already has them
Recommendedhbb_score, doublet_score, cell cycletissue-dependent
ExtendedchrY_frac, ambient_frac, nuclear_fracmetadata / STARsolo available

Details: references/metrics-catalog.md

Project Layout

Optional scaffold — create only stages the user needs:

text
scripts/01-qc/
01-calculate_metrics.py|R # metrics only
02-qc_diagnosis.py|R # figures from metadata
03-filter_cells.py|R # runs only after threshold sign-off
result/01-qc/ ...
figure/01-qc/ ...

references/project-layout.md

Bundled Tools (Not a Pipeline)

ToolRole
scripts/calculate_metrics.pycore metrics → metadata.tsv
scripts/calculate_metrics.Rsame, R/Matrix
scripts/inspect_qc_metadata.pyread-only cohort summary
assets/gene_sets/*hbb / chrY gene lists
assets/qc_thresholds.example.yamltemplate for user-edited thresholds

--run-scrublet on Python script: ask before using.

bash
# Typical pilot — metrics only
python .../calculate_metrics.py \
--matrix-dir <dir> --sample-id PILOT --species human \
--output-dir result/01-qc/01-calculate_metrics/PILOT

After Metrics: Report Template

Use the template in references/human-in-the-loop.md:

  • observations (numbers);
  • flags (sex mismatch, high hbb, depth outlier);
  • questions for the user (numbered);
  • optional threshold table with estimated loss — label as not yet applied.

Language Choice

ContextReference
scanpy / h5adreferences/python-scanpy.md
Seuratreferences/r-seurat.md
threshold methodsreferences/filtering-strategies.md

Pick one canonical metadata schema across languages (n_genes, n_UMIs, mito_frac, …).

Anti-Patterns

  • Running full cohort filter + merge in one agent turn
  • Picking thresholds without showing per-sample distributions
  • Treating bundled scripts as end-to-end QC
  • Hiding cutoffs inside opaque helpers
  • Merge-first global QC without per-sample review (legacy atlas reproduction excepted)

Deliverables (Stage-Dependent)

Only produce what the current confirmed stage needs:

After stageDeliverable
Bmetadata.tsv, metrics_summary.json
Cdiagnosis PDFs/PNGs
Dthreshold proposal table (no filter yet)
Efiltered checkpoint + filter_summary
Sign-offQC_summary.tsv + documented per-sample decisions

External References

  • Rich metrics example (R): <project-root>/scripts/calculate_metrics_extended.R
  • Legacy contrast (avoid as default): spatial_data/.../run_merging_samples_and_QC.py

Security

  • Security scanPassed, 100 of 100Pattern checks on the skill's files.
  • Model reviewNot runA model review is scheduled for the next rescan.

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
0

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/xuzhougeng/wisp-science/singlecell-qc/badge)](https://verified-skill.com/skills/xuzhougeng/wisp-science/singlecell-qc)

Something wrong with this skill or its page? Tell us.